1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

c++

Discussion in 'Programmieren' started by Dackel, Feb 21, 2003.

Thread Status:
Not open for further replies.
  1. Dackel

    Dackel Byte

    Könnt ihr mir sagen, was an dem Code falsch ist. Die Fehlermeldung vom Compiler verstehe ich nicht.(Code für die Wurzelberechnung nach Heron)
    #include <iostream.h>
    #include <stdlib.h>
    #include <stdio.h>
    #include <iostream>
    #include <unistd.h>
    #include <conio.h>

    void main()
    {
    int int_wert;
    int Y1,X2,Y2,X3,Y3;
    int a,X1;
    cout << "Bitte geben sie einen Wert ein" << endl;
    cin >>a;
    X1 = 1
    Y1 = a / X1

    X2 = (X1 + Y1) / 2
    Y2 = a / Y2

    X3 = (X2 + Y2) / 2
    Y3 = a / X3
    cout << Y3 <<;
    getch();
    }
     
  2. Sumo

    Sumo Kbyte

    Hallo?
    Glaubst du das guckt sich jemand an und sucht den Fehler?
    Verwende mal eine Schleife. Außerdem kannst du das Programm auf 3 Variablen kürzen. Das ganze wird dann vielleicht ein 5 Zeilen Programm.

    edit:
    So siehts dann aus.

    #include <iostream>
    #include <conio.h>

    void main()
    {
    float Zahl,a,b;
    a = 5;
    b = 0;
    cout<<"Bitte Zahl eingeben: ";
    cin>>Zahl;
    for(int i = 1; i < 5; i++)
    {
    b = Zahl / a;
    a = (a + b) / 2;
    }
    cout<<"Ergebnis: "<< a;
    getch();
    }
    [Diese Nachricht wurde von Sumo am 23.02.2003 | 18:12 geändert.]
     
  3. Dackel

    Dackel Byte

    Die Genauigkeit war mir bis jetzt zu schlecht, da habe ich es einfach bis Y70 erweitert. Jetzt stimmt aber das Ergebnis gar nicht.
    Vielleicht könnt ihr mir helfen. Ich habe denn Fehler nicht gesehen.

    #include <iostream>
    #include <conio.h>
    #include <float.h>
    void main()
    {
    float a,c,X1,Y1,X2,Y2,X3,Y3,X4,Y4,X5,Y5,X6,Y6,X7,Y7,X8,Y8,X9,Y9,X10,Y10;
    float X11,Y11,X12,Y12,X13,Y13,X14,Y14,X15,Y15,X16,Y16,X17,Y17,X18,Y18,X19,Y19,X20,Y20;
    float X21,Y21,X22,Y22,X23,Y23,X24,Y24,X25,Y25,X26,Y26,X27,Y27,X28,Y28,X29,Y29,X30,Y30;
    float X31,Y31,X32,Y32,X33,Y33,X34,Y34,X35,Y35,X36,Y36,X37,Y37,X38,Y38,X39,Y39,X40,Y40;
    float X41,Y41,X42,Y42,X43,Y43,X44,Y44,X45,Y45,X46,Y46,X47,Y47,X48,Y48,X49,Y49,X50,Y50;
    float X51,Y51,X52,Y52,X53,Y53,X54,Y54,X55,Y55,X56,Y56,X57,Y57,X58,Y58,X59,Y59,X60,Y60;
    float X61,Y61,X62,Y62,X63,Y63,X64,Y64,X65,Y65,X66,Y66,X67,Y67,X68,Y68,X69,Y69,X70,Y70;

    cout << "Bitte geben sie einen Wert ein" << endl;
    cin >>a;
    X1 = 1;
    Y1 = a / X1;
    X2 = (X1 + Y1) / 2;
    Y2 = a / X2;
    X3 = (X2 + Y2) / 2;
    Y3 = a / X3;
    X4 = (X3 + Y3) / 2;
    Y4 = a / X4;
    X5 = (X4 + Y4) / 2;
    Y5 = a / X5;
    X6 = (X5 + Y5) / 2;
    Y6 = a / X6;
    X7 = (X6 + Y6) / 2;
    Y7 = a / X7;
    X8 = (X7 + Y7) / 2;
    Y8 = a / X8;
    X9 = (X8 + Y8) / 2;
    Y9 = a / X9;
    X10 = (X9 + Y9) / 2;
    Y10 = a / X10;
    X11 = (X10 + Y10) / 2;
    Y11 = a / X11;
    X12 = (X11 + Y11) / 2;
    Y12 = a / X12;
    X13 = (X12 + Y12) / 2;
    Y13 = a / X13;
    X14 = (X13 + Y13) / 2;
    Y14 = a / X14;
    X15 = (X14 + Y14) / 2;
    Y15 = a / X15;
    X16 = (X15 + Y15) / 2;
    Y16 = a / X16;
    X17 = (X16 + Y16) / 2;
    Y17 = a / X17;
    X18 = (X17 + Y17) / 2;
    Y18 = a / X18;
    X19 = (X18 + Y18) / 2;
    Y19 = a / X19;
    X20 = (X19 + Y19) / 2;
    Y20 = a / X20;
    X21 = (X20 + Y20) / 2;
    Y21 = a / X21;
    X22 = (X21 + Y21) / 2;
    Y22 = a / X22;
    X23 = (X22 + Y22) / 2;
    Y23 = a / X23;
    X24 = (X23 + Y23) / 2;
    Y24 = a / X24;
    X25 = (X24 + Y24) / 2;
    Y25 = a / X25;
    X26 = (X25 + Y25) / 2;
    Y26 = a / X26;
    X27 = (X26 + Y26) / 2;
    Y27 = a / X27;
    X28 = (X27 + Y27) / 2;
    Y29 = a / X29;
    X30 = (X29 + Y29) / 2;
    Y30 = a / X30;
    X31 = (X30 + Y30) / 2;
    Y31 = a / X31;
    X32 = (X31 + Y31) / 2;
    Y32 = a / X32;
    X33 = (X32 + Y32) / 2;
    Y33 = a / X33;
    X34 = (X33 + Y33) / 2;
    Y34 = a / X34;
    X35 = (X34 + Y34) / 2;
    Y35 = a / X35;
    X36 = (X35 + Y35) / 2;
    Y36 = a / X36;
    X37 = (X36 + Y36) / 2;
    Y37 = a / X37;
    X38 = (X37 + Y37) / 2;
    Y38 = a / X38;
    X39 = (X38 + Y38) / 2;
    Y39 = a / X39;
    X40 = (X39 + Y39) / 2;
    Y40 = a / X40;
    X41 = (X40 + Y40) / 2;
    Y41 = a / X41;
    X42 = (X41 + Y41) / 2;
    Y42 = a / X42;
    X43 = (X42 + Y42) / 2;
    Y43 = a / X43;
    X44 = (X43 + Y43) / 2;
    Y44 = a / X44;
    X45 = (X44 + Y44) / 2;
    Y45 = a / X45;
    X46 = (X45 + Y45) / 2;
    Y46 = a / X46;
    X47 = (X46 + Y46) / 2;
    Y47 = a / X47;
    X48 = (X47 + Y47) / 2;
    Y48 = a / X48;
    X49 = (X48 + Y48) / 2;
    Y49 = a / X49;
    X50 = (X49 + Y49) / 2;
    Y50 = a / X50;
    X51 = (X50 + Y50) / 2;
    Y51 = a / X51;
    X52 = (X51 + Y51) / 2;
    Y52 = a / X52;
    X53 = (X52 + Y52) / 2;
    Y53 = a / X53;
    X54 = (X53 + Y53) / 2;
    Y54 = a / X54;
    X55 = (X54 + Y54) / 2;
    Y55 = a / X55;
    X56 = (X55 + Y55) / 2;
    Y56 = a / X56;
    X57 = (X56 + Y56) / 2;
    Y57 = a / X57;
    X58 = (X57 + Y57) / 2;
    Y58 = a / X58;
    X59 = (X58 + Y58) / 2;
    Y59 = a / X59;
    X60 = (X59 + Y59) / 2;
    Y60 = a / X60;
    X61 = (X60 + Y60) / 2;
    Y61 = a / X61;
    X62 = (X61 + Y61) / 2;
    Y62 = a / X62;
    X63 = (X62 + Y62) / 2;
    Y63 = a / X63;
    X64 = (X63 + Y63) / 2;
    Y64 = a / X64;
    X65 = (X64 + Y64) / 2;
    Y65 = a / X65;
    X66 = (X65 + Y65) / 2;
    Y66 = a / X66;
    X67 = (X66 + Y66) / 2;
    Y67 = a / X67;
    X68 = (X67 + Y67) / 2;
    Y68 = a / X68;
    X69 = (X68 + Y68) / 2;
    Y69 = a / X69;
    X70 = (X69 + Y69) / 2;
    Y70 = a / X70;
    cout <<"Ergebnis: " << Y70 << endl;
    cout <<"Programm schließen?"<< endl;
    cin >> c;
    }
    [Diese Nachricht wurde von Dackel am 23.02.2003 | 16:29 geändert.]
     
  4. Das darf nicht mathematisch interpretiert werden vom Menschen!

    Das ist eine Selbstzuweisung. Als erstes wird der rechte Teil seitens des = ausgerechnet und dann dem linken Teil zugewiesen.

    mfg Andreas
     
  5. gert12349

    gert12349 Halbes Megabyte

    Das kann ich dir jetzt nicht erklären - ich kenne die Berechnung nach Heron nicht. Aber dein Hinweis klingt logisch.

    Gruß Gert
     
  6. Plinius

    Plinius Viertel Gigabyte

    Ich kenne mich zwar dabei nicht aus, aber bitte erkläre mir warum Y2=a/Y2 ist und nicht Y2=a/X2? Oder sollte das nicht logisch sein?
     
  7. gert12349

    gert12349 Halbes Megabyte

    Y2 wird nicht initialisiert.

    Gruß Gert
     
  8. Sumo

    Sumo Kbyte

    #include <iostream>
    #include <conio.h>

    void main()
    {
    int int_wert;
    int Y1,X2,Y2,X3,Y3;
    int a,X1;
    cout << "Bitte geben sie einen Wert ein" << endl;
    cin >>a;
    X1 = 1;
    Y1 = a / X1;

    X2 = (X1 + Y1) / 2;
    Y2 = a / Y2;

    X3 = (X2 + Y2) / 2;
    Y3 = a / X3;
    cout <<"Ergebnis: " << Y3 << endl;
    getch();
    }

    so lässt er sich schon mal compilieren. Die Ergebnisse stimmen aber nicht. Wenn ich 1 oder 2 eingebe stürzt das Programm ab. Sonst gibt das Programm auch nur 3 oder 4 als Ergebnis aus
     
  9. ich würd mal sagen, dass ein paar Semikolons fehlen, oder???

    mfg Andreas
     
Thread Status:
Not open for further replies.

Share This Page