Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Pq-formel/hilfe bei Prog.

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ] [ 3 ]
000
30.11.2003, 21:31 Uhr
~Fat-Tiger
Gast


Hi, Leute

wie gehts ich möchte euch nochmals dankenfür eure ganze Hilfe bis jetzt.

Ich wollte ein Programm schreiben das mir und andern Hilft

hier Source Code:

C++:
//PQ-Formel.cpp

#include <iostream>
#include <conio>
#include <fstream>
#include <stdlib>
#include <math>

        int main() {

         int vx;
          int x11;
         int x22;
         int p;
         int q;


             switch(getch()) {



                    cprintf("PQ-Formel");


                    cprintf("\n\n\n\nMenu: \n\na)Read Me\nb)Rechnen");

         case 'A':
         case 'a':

                     cprintf("\n\n\nBitte geben Sie die Werte von der Grundformel ein.");


                  cprintf("Bitte geben sie die Vorzahl von X ein:");

                      cin >>vx;

                  cprintf("\n\n\nBitte geben sie den Wert von p ein:");

                      cin >>p;

                  cprintf("\n\n\nBitte geben sie den Wert von q ein:");

                      cin >>q;

                          cout <<"Die Ergebnisse sind:" <<endl;

             if (p == -p)

            {

            if (q == -q)
            {

                  cprintf("\n\nX1:");
                            cout <<(+p)+(sqrt((p/vx)*(p/vx)+(+q)))=x11 <<endl;
            }
             }
            else
            {

                 cprintf("\n\nX1:");
                            cout  <<(-p)+(sqrt(((p/vx)*(p/vx)-(-q))))=x11 <<endl;
            }

            if (p == -p)

            {

            if (q == -q)
            {

                    cprintf("\n\nX2:");
                            cout  <<(+p/vx)+(sqrt(((p/vx)*(p/vx)+(+q/vx))))=x22 <<endl;

            }
             }
            else
            {

                    cprintf("\n\nX2:");
                            cout  <<(-p)-(sqrt(((p/vx)*(p/vx)-(-q))))=x22 <<endl;
            }


                      cin >>vx;

return 0;
}
}



Würde mich über Hilfe freuen

THX

by Fat-Tiger


Bearbeitung von Pablo:

Bitte, benutze selber die CPP Tags


Dieser Post wurde am 30.11.2003 um 21:39 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
30.11.2003, 21:39 Uhr
Pablo
Supertux
(Operator)


Ja, ich werde nicht deinen langen Source Code lesen, wenn du mir nicht sagst, was du willst? Kannst du nicht kompilieren, oder bekommst du falsche Werte oder fragst du nur, ob der Code richtig sei. Leider können wie keine Gedanken lesen, deshalb musst du uns sagen, was du willst.

PS: Ich hoffe, ich war net so gemein!
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
30.11.2003, 21:43 Uhr
Pablo
Supertux
(Operator)


Nur ne kleine Frage: @Fat-Tiger: Wieso mischt du cprintf (ich kenne diese Funktion gar nicht) und cout? Wenn du schon mit cout arbeitest, dann geben immer den Text mit cout.

2. Nur so on the fly, und das ist nicht das erste Mal, dass ich es dir sage: Du musst nach dem Diskriminante, weil wenn sie negativ ist, keine Lösung mehr gibt. In der pq-Formel (x²+px+q=0 ist das Diskriminante p²-4q). Tipp: Sag mal, kann man die Wurzel aus eine negativen Zahl ziehen? Denk mal nach.

PS: Wie sagt man, das oder die Diskriminante?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 30.11.2003 um 21:44 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
30.11.2003, 21:45 Uhr
~Fat-Tiger
Gast


Ja es macht fehler beim compliren und ich makiere was falsch ist ok.

Source code:

C++:
//PQ-Formel.cpp

#include <iostream>
#include <conio>
#include <fstream>
#include <stdlib>
#include <math>

        int main() {

         int vx;
          int x11;
         int x22;
         int p;
         int q;


             switch(getch()) {



                    cprintf("PQ-Formel");


                    cprintf("\n\n\n\nMenu:\n\na)Read Me\nb)Rechnen");

         case 'A':
         case 'a':

                     cprintf("\n\n\nBitte geben Sie die Werte von der Grundformel ein.");


                  cprintf("Bitte geben sie die Vorzahl von X ein:");

                      cin >>vx;

                  cprintf("\n\n\nBitte geben sie den Wert von p ein:");

                      cin >>p;

                  cprintf("\n\n\nBitte geben sie den Wert von q ein:");

                      cin >>q;

                          cout <<"Die Ergebnisse sind:" <<endl;

             if (p == -p)

            {

            if (q == -q)
            {

                  cprintf("\n\nX1:");
                            [b][u]cout <<(+p)+(sqrt((p/vx)*(p/vx)+(+q)))=x11 <<endl;[/b][/u]
            }
             }
            else
            {

                 cprintf("\n\nX1:");
                            [b][u]cout  <<(-p)+(sqrt(((p/vx)*(p/vx)-(-q))))=x11 <<endl;[/b][/u]
            }

            if (p == -p)

            {

            if (q == -q)
            {

                    cprintf("\n\nX2:");
                            [b][u]cout  <<(+p/vx)+(sqrt(((p/vx)*(p/vx)+(+q/vx))))=x22 <<endl;[/b][/u]

            }
             }
            else
            {

                    cprintf("\n\nX2:");
                            [b][u]cout  <<(-p)-(sqrt(((p/vx)*(p/vx)-(-q))))=x22 <<endl;[/b][/u]
            }


                      cin >>vx;

return 0;
}
}




Bearbeitung von Pablo:


Ich bin nicht gemein sein: HABE ICH DIR NICHT VOR 1 MINUTEN GESAGT, DU SOLLTEST CPP TAGS FÜR DEN CODE BENUTZEN? BITTE, BENUTZE DIE CPP TAGS SELBST, MEHR VERLANGE ICH VON DIR NICHT. ICH HELFE DIR IMMER WIEDER, GERNE SOGAR, DESHLAB VERLANGE ICH, DASS DU MICH ZUHÖRST UND CPP TAGS BENUTZT.

NOCH WAS, WENN ES NUR UM EINE ZEILE GEHT, DANN KANNST DU DIR DEN GANZEN SOURCE CODE ERSPARREN.



Dieser Post wurde am 30.11.2003 um 21:50 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
30.11.2003, 21:52 Uhr
Pablo
Supertux
(Operator)


Ja, ich sehe ich den Fehler. Dieses Mal werde ich dir nicht sagen, weil ich dich auf den Fehler -zig Mal hinwegewissen hab. Guck genau hin, und sag mir was falsch sein könnte, deiner Meinung nach. Dieses Mal wirst du den Fehler alleine herausfinden. Guck genau hin, was könnte falsch sein?, und warum?
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 30.11.2003 um 21:53 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
01.12.2003, 07:29 Uhr
derphilipder



Wurzel aus ner negativen Zahl geht schon...

1. Aber wie soll z.B. p == -p sein??

2. Du moechtest das Ergebnis einer Bruchoperation an einen ganzzahligen typ zuweisen - macht denn das Sinn?

3. Zu Deinen markierten Zeilen - Kleiner Tipp, Dein arithmetischer Ausdruck ist ein r-value...


4. Ich bezweifle , dass das Genze funktioniert!

Ich würd Dir gern mehr verraten, aber dann würd ich Pablo seine pädagogische Maßnahme kaputt machen!
--
Konfuzius says: "A man who goes to bed with an itchy asshole is a man who wakes up with stinky finger!"

Dieser Post wurde am 01.12.2003 um 07:31 Uhr von derphilipder editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
01.12.2003, 07:46 Uhr
Pablo
Supertux
(Operator)



Zitat:
derphilipder postete
Wurzel aus ner negativen Zahl geht schon...

1. Aber wie soll z.B. p == -p sein??

2. Du moechtest das Ergebnis einer Bruchoperation an einen ganzzahligen typ zuweisen - macht denn das Sinn?

3. Zu Deinen markierten Zeilen - Kleiner Tipp, Dein arithmetischer Ausdruck ist ein r-value...


4. Ich bezweifle , dass das Genze funktioniert!

Ich würd Dir gern mehr verraten, aber dann würd ich Pablo seine pädagogische Maßnahme kaputt machen!


Zum 4. Punkt: Das hast du allerdings Recht. Ich bitte an euch allen darum, nicht zu beantworten was falsch ist, ich will dass mein Lerhling Fat-Tiger selber drauf kommt, sonst wird er immer wieder die selbe Frage stellen und irgendwann kriegt er keine Antwort mehr, nicht mal von mir. Wenn er jetzt merkt, selber versteht sich, dann mach er den Fehler nie wieder.

Zum Punkt 1.
Fit-Tiger ist noch in der Schule, dort gibt es keine Wurzle aus negavtiven Zahlen. Ich weiß, dass Wurzel aus -1 = i ist, aber erst im Komplexen, aber sie wissen gar nicht mal, dass |R Vollstänidg, ein Körper ist, der unbeschränkt und abgeschlossen ist, oder sontige Sachen. Deshalb machen wir ihm nicht schwerer: Es gibt keine Wurzle aus negativen Zahlen! Und Ende der Diskussion der Existens von der Wurzel aus negativen Zahlen.

p==-p <==> p=0!!! aber braucht man den Fall zu brachten? So genau habe ich nicht gelesen, sonst hätte ich schon gesgat. Ich will zuerst, dass Fat-Tiger selber auf seine Fehler mit cout kommt.
--
A! Elbereth Gilthoniel!
silivren penna míriel
o menel aglar elenath,
Gilthoniel, A! Elbereth!

Dieser Post wurde am 01.12.2003 um 07:47 Uhr von Pablo Yanez Trujillo editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
01.12.2003, 15:56 Uhr
~RedEagle
Gast


Habe nicht genug Zeit, um alle Antworten zu lesen, aber Versuch mal folgendes:

~Dei Berechnung seperat zu machen, und das nur eine (oder 2) Variablen auszugeben, (Ich denke, das "Cout" Probleme mit den Klammern und der "Wurzelfunktion" hat.

Und!!!
~Ein Paar Leerzeilen machen den Code zwar Übersichtlich, aber ich finde du hast Übertrieben.


MFG RedEagle
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
01.12.2003, 20:50 Uhr
~Fat-Tiger
Gast


Ich meine das mit dem

if (p == -p)

das wenn der Wert von p negativ ist das die vorzeichen geändert werden, da ja bei der Pq-Formel:
x1/2=-p/2+-sqrt(p)²-g
geht und wenn bei -p der wert p negativ ist dann wird das Vorzeichen geändert und das gleiche ist bei q.
Und ich habe mir gedacht das man in dem if p == -p schreiben kann.

Das Problem mit den Klammern habe ich mir durch den kopf gehen lassen, da C++ das ja ohne Klammern einfach nach einander rechnet dachte ich:

das -p+("Die Klammer dafür da das das Programm als erstes die Wurzel rechnet und + oder - p"sqrt("Die Klammer dient dafür das C++ aus dem Inhalt die Wurzel rechnet"("Die Klammer soll einfach nur das Quadriren da sein" ("Die Klammer soll den vx durch p rechnen"p/vx)*(p/vx))"Die Klammer beendet das Qudriren"-q))"beendet alles"

so habe ich mir das gedacht.
Um noch mal auf das If zukommen wußte ich nicht wie ich das machen sollte das C++ das vorzeichen ändert.

Wenn du einen Vorschlag hast wie das Machen soll sah es mir bitte

THX

by Fat-Tiger

P.S. sollte ich das lieber hier machen mit dem p/vx so das die Klammer inder Gleichung entfällt

Source-Code: cprintf("\n\n\nBitte geben sie den Wert von p ein:");

cin >>p;
//Hier vorschlag cout <<p/vx
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
01.12.2003, 21:07 Uhr
derphilipder



if()
{...
}

stellt eine bedingte Verzewigung dar, das bedeutet in Deinem Fall, dass das was zwischen {} steht NUR ausgeführt wird, wenn p ==0;

Wenn Du das Vorzeichen von p ändern willst, machst Du das mit p = -p;

== //Vergleichsoperator
=//Zuweisungsoperator

Du kannst die Tatsache, dass in der pq Formel -p verwendet wird aber am besten berücksichtigen, indem Du in Deine Rechenoperation einfach -p schreibst!

Und lass bei Deinen couts das =X11 usw. weg, das müsste wenn dann auch links vom Ausdruck stehen, wird hier aber gar nicht gebraucht.

Das ganze wird dann zwar wahrscheinlich immmer noch nicht laufen, aber mach mal erstmal...

Und im Zweifelsfalle immer lieber eine Klammer mehr...
--
Konfuzius says: "A man who goes to bed with an itchy asshole is a man who wakes up with stinky finger!"

Dieser Post wurde am 01.12.2003 um 21:09 Uhr von derphilipder editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ] [ 3 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: