C quelltext in C++ ändern
-
Hey
Ich habe mir im Internet einen Quelltext besorgt.
Es wurde allerdings als C geschrieben und nicht als C++
Ich brauche diesen Quelltext als C++ datei.
Was muss ich alles ändern damit ein C++ Compiler seinen Job erledigen kann ?Ich hoffe ich mache es mit dem Copy and past Quelltext hier nicht falsch
Danke für alle die mir Helfen wollenEDIT: Sry falls ich hier falsch bin.Ich weiß nicht im welchem Forum ich sowas Fragen kann :o
#include <stdio.h> #include <iostream.h> #include <conio.h> // modell räuber-beute-beziehungen // erweitertes Lotka-Volterra-Modell // Parameter des erweiterten räuber-beute-modells float RDiff = 0.0 ; // differenz räuber in DeltaT float BDiff = 0.0 ; // differenz beute in DeltaT float R = 5.0 ; // anzahl räuber float B = 23.0 ; // anzahl beute float KR = 50.0 ; // umwelttragfähigkeit räuber float KB = 250.0 ; // umwelttragfähigkeit beute float d = 0.01 ; // sterberate räuber, nicht abhängig float s = 0.05 ; // sterberate beute, abhängig von anzahl R float g = 0.01 ; // wachstumsrate räuber float f = 0.15 ; // vermehrungsrate beute // laufvariablen int TMAX = 80 ; int AktT = 0 ; int DeltaT = 1 ; int j = 0 ; // variablen ausgabe char diagramm [30] ; //simulation erweitertes lotka-volterra-modell void main () { AktT = DeltaT ; while ( TMAX - AktT > 0 ) { // initialisiere earray for ( j = 0 ; j < 30 ; j++ ) { diagramm [j] = ' ' ; } // veränderung der räuber-population BDiff = f * B - s * B * R - ((B * B) / KB) ; B = B + BDiff ; // veränderung der beute-population RDiff = g * B * R - d * R - ((R * R) / KR) ; R = R + RDiff ; // ausgabe diagramm [(int) R] = 'R' ; diagramm [(int) B] = 'B' ; for ( j = 0 ; j < 25 ; j++ ) { gotoxy ( AktT, 23-j) ; cout << diagramm [j] ; } getch ( ) ; // nächste Periode AktT = AktT + DeltaT ; } getch () ; }
-
Das ist schon C++. Siehe Zeile 71.
-
Da es bereits C++ ist, wuerde ich dir empfehlen jeden fehler nach und nach zu beheben den dir dein compiler meldet. Da ist durchaus jede menge murks drin.
-
mgaeckler schrieb:
Das ist schon C++. Siehe Zeile 71.
Es ist C++ nach Prä-Standard-Konventionen. Also vermutlich über 20 Jahre alt. Ein heutiger Compiler mit strenger Standardauslegung wird das nicht mehr schlucken.
Der Quelltext ist aber auch sonst nicht besonders gut. Es ist nicht zu empfehlen darauf aufzubauen. Man wird nicht besser im Programmieren, indem man schlechten Code abschreibt. Selbst bei gutem Code wäre dies schon fragwürdig. Die wahre Empfehlung wäre, den Code überhaupt nicht zu übernehmen. Die 40 Zeilen hat man in wenigen Minuten in viel besserem Stil selber programmiert.
-
SeppJ schrieb:
mgaeckler schrieb:
Das ist schon C++. Siehe Zeile 71.
Es ist C++ nach Prä-Standard-Konventionen. Also vermutlich über 20 Jahre alt. Ein heutiger Compiler mit strenger Standardauslegung wird das nicht mehr schlucken.
Der Quelltext ist aber auch sonst nicht besonders gut. Es ist nicht zu empfehlen darauf aufzubauen. Man wird nicht besser im Programmieren, indem man schlechten Code abschreibt. Selbst bei gutem Code wäre dies schon fragwürdig. Die wahre Empfehlung wäre, den Code überhaupt nicht zu übernehmen. Die 40 Zeilen hat man in wenigen Minuten in viel besserem Stil selber programmiert.
Ich weiß nicht ob diese Bitte zu viel ist.Ich würde dich gerne Fragen,ob du mir eine fertige Vorlage schreiben/coden könntest.Es soll halt wirklich simpel sein und einfach nur ohne Pausen durchläuft
Es würde mir wirklich sehr sehr helfen. :c
-
Für mich ist diese Bitte viel zu viel. Es ist aus diesem und deinen anderen Threads recht offensichtlich, dass dies eine größere Projektarbeit oder Hausaufgabe ist, für die du mehrere Wochen Zeit hattest. Anstatt irgendetwas dafür zu tun (Es wäre in der Zeit locker möglich gewesen, C++ komplett von 0 auf zu lernen und die Aufgabe zu lösen), hast du stattdessen gar nichts gemacht. Und jetzt kommt die große Panik kurz vor Abgabetermin.
So sieht das jedenfalls von unserer Seite her aus.
-
SeppJ schrieb:
Für mich ist diese Bitte viel zu viel. Es ist aus diesem und deinen anderen Threads recht offensichtlich, dass dies eine größere Projektarbeit oder Hausaufgabe ist, für die du mehrere Wochen Zeit hattest. Anstatt irgendetwas dafür zu tun (Es wäre in der Zeit locker möglich gewesen, C++ komplett von 0 auf zu lernen und die Aufgabe zu lösen), hast du stattdessen gar nichts gemacht. Und jetzt kommt die große Panik kurz vor Abgabetermin.
So sieht das jedenfalls von unserer Seite her aus.
Es stimmt fast alles halbwegs.Es ist allerdings weder eine Projektarbeit oder eine Hausaufgabe.Es ist eher eine kleine Private Aufgabe,die sagen wir mal einen kleine Bonus einbringen würde falls ich es vorlegen könnte.Es passiert allerdings auch nix,wenn ich nix vorzeigen würde.
Ich wollte halt nur mal Fragen,ob es diese Bitte zu viel des guten wäre,was ich jetzt auch weiß.Ich verstehe es aber auch,dass diese Frage wohl too much warPS: Danke für die Information von deiner Antort zu "mgaeckler" ^^
-
Wenn du Eigeninitiative zeigen würdest, würde man dir auch konkret helfen. Aber Code, den du irgendwo aus dem Internet kopiert hast, zum Laufen zu bringen, damit du ihn als deinen eigenen ausgeben kannst, ist halt wirklich nichts, bei dem dir jemand helfen wird.
-
SeppJ schrieb:
mgaeckler schrieb:
Das ist schon C++. Siehe Zeile 71.
Es ist C++ nach Prä-Standard-Konventionen. Also vermutlich über 20 Jahre alt. Ein heutiger Compiler mit strenger Standardauslegung wird das nicht mehr schlucken.
Was würde denn Deiner Meinung nach ein aktueller C++ Compiler ablehnen? Abgesehen von dosenspezifischen Zeugs finde ich jetzt eigentlich nichts.
SeppJ schrieb:
Der Quelltext ist aber auch sonst nicht besonders gut. Es ist nicht zu empfehlen darauf aufzubauen. Man wird nicht besser im Programmieren, indem man schlechten Code abschreibt. Selbst bei gutem Code wäre dies schon fragwürdig. Die wahre Empfehlung wäre, den Code überhaupt nicht zu übernehmen. Die 40 Zeilen hat man in wenigen Minuten in viel besserem Stil selber programmiert.
Da gebe ich Dir vollkommen recht.
VG Martin
-
mgaeckler schrieb:
SeppJ schrieb:
mgaeckler schrieb:
Das ist schon C++. Siehe Zeile 71.
Es ist C++ nach Prä-Standard-Konventionen. Also vermutlich über 20 Jahre alt. Ein heutiger Compiler mit strenger Standardauslegung wird das nicht mehr schlucken.
Was würde denn Deiner Meinung nach ein aktueller C++ Compiler ablehnen? Abgesehen von dosenspezifischen Zeugs finde ich jetzt eigentlich nichts.
Nicht-Standard Header. Fehlender Namespace für die Standardbibliothek. Falsche Signatur von main.
Abseits des Sprachstandards ist conio.h etwas, das man auf modernen Rechnern nicht mehr findet.
-
SeppJ schrieb:
mgaeckler schrieb:
SeppJ schrieb:
mgaeckler schrieb:
Das ist schon C++. Siehe Zeile 71.
Es ist C++ nach Prä-Standard-Konventionen. Also vermutlich über 20 Jahre alt. Ein heutiger Compiler mit strenger Standardauslegung wird das nicht mehr schlucken.
Was würde denn Deiner Meinung nach ein aktueller C++ Compiler ablehnen? Abgesehen von dosenspezifischen Zeugs finde ich jetzt eigentlich nichts.
Nicht-Standard Header. Fehlender Namespace für die Standardbibliothek. Falsche Signatur von main.
Abseits des Sprachstandards ist conio.h etwas, das man auf modernen Rechnern nicht mehr findet.
void main() habe ich übersehen. Das ist ja schon in C falsch.
Ich dachte <iostream.h> ist vom Standard gedeckt. Auch daß dann der namespace weggelassen werden kann. (Ah ich lese gerade: Das gilt nur für die alten Standard C-includes).
conio.h und Konsorten habe ich ja schon unter "dosenspezifischen Zeugs" subsumiert.Danke für den Hinweis.
VG