Hilfe bei c++ Aufgaben
-
Hallo zusammen,
ich brauche dringend etwas Hilfe bei zwei Aufgaben. Wäre echt super wenn jemand mich bei den Aufgaben unterstützen könnte. Ich bin für jede Hilfe offen.
Erstellen Sie eine nach oben offene (dynamische) Liste zur Verwaltung von Autotypen mit folgender Struktur:
- Typ (z.B. Opel, BMW usw.)
- Baujahr
- Preis
- Anzahl
- Umsatza) Erstellen Sie ein Programm mit einer dynamischen Liste zur fortlaufenden Eingabe von
Autotypen gem. obiger Struktur (ohne Eingabe des Umsatzes pro Autotyp).
b) Ergaenzen Sie das Programm durch die Prozedur Ausgabe() für die Ausgabe der komplet-
ten Liste auf dem Bildschirm. Der Umsatz pro Autotyp ist zu berechnen aus Preis * Anzahl
und in der Struktur einzutragen.
c) Ergaenzen Sie das Programm durch die Prozedur DateiAusgabe() für die Ausgabe der Liste
in eine Datei.Erstellen Sie ein Programm für das Sortieren von 6 Zahlen nach ihrer Groesse:
3.89
8.34
2.78
9.43
1.56
7.45Im Ergebnis soll die groesste Zahl (9.43) vorn stehen und die kleinste (1.56) hinten.
Im einzelnen:
a) Schreiben Sie ein Programm für den Aufruf der Prozeduren:
- fillarray() //Prozedur für die Werte-Eingabe
- sortarray() //Prozedur zum Sortierenb) Erstellen Sie die Prozedur fillarray(), in der die einzelnen Zahlen unsortiert (z.B. in der oben angeführten Reihenfolge) nach Aufforderung in ein Array einzugeben sind
c) Übergeben Sie das gefüllte Array dem Hauptprogramm und geben Sie dort nach Aufforderung die unsortierte Zahlenfolge aus.
d) Übergeben Sie das mit der unsortierten Zahlenfolge gefüllte Array der Prozedur sortarray(), in der nach Aufforderung die Sortierung nach der Groesse erfolgt.
e) Übergeben Sie das sortierte Array dem Hauptprogramm, wo es dann nach Aufforderung ausgegeben wird.
Gruß Okta
-
Okta schrieb:
Ich bin für jede Hilfe offen.
Wo drückt der Schuh?
Sicherlich hast du bereits einen Ansatz. Ich meine, du hast deine Frage wahrscheinlich nicht hier gepostet in Erwartung einer vollständigen Lösung DEINER Hausaufgaben.
Stelle deine Fragen bitte etwas konkreter.
-
tja leider drückt der schuh schon beim ansatz...
ich muss die aufgaben (und 3 andere, die ich aber alleine schaffen müsste) am 5.2. abgeben um zur klausur zugelassen zu werden, die dann im april stattfindet. zunächst hieß es der abgabetermin sei unmittelbar vor der klausur, was aber kurzfristig geändert wurde...
unser prof macht nix weiter als und aufgaben an die wand zu projezieren und 15 min später die lösung. beibringen muss man sich alles selber. ich bin dabei 2 bücher zu lesen und c++ so zu lernen. bis zur klausur müsste ich es auch schaffen, jedoch nicht bis zum 5.2.
ich erwarte nicht vollständige lösungen hier zu bekommen, lediglich hilfestellung beim ansatz und die anwendung von fillarray und sortarray. vielleicht hat jemand nützliche links wo die notwendigen schritte beschrieben sind.zu der 2. aufgabe hätte ich einen kleinen ansatz:
int x[6] = {3.89, 8.34, 2.78, 9.43, 1.56, 7.45}
sort(x, x+6)bin ich da auf dem richtigen weg?
gruß okta
-
Okta schrieb:
bin ich da auf dem richtigen weg?
Teilweise.
So wie ich die Aufgabe verstehe soll die Funktion fillarray() die Eingabe übernehmen und die Werte in das Array einlesen.Vorab noch eine Frage: Was dürft ihr alles verwenden. Es gibt in der STL bereits Standardkonstruktionen, mit welchen sich das Sortieren leicht bewerkstelligen lässt und auch eine dynamische Liste ist bereits vorhanden.
Problem bei der Sache ist, dass die Profs oft erwarten, dass man selbst einen Sortieralgorithmus bzw. eine dynamische Liste implementiert. Wie ist das bei euch?
Mit der STL sind die Aufgaben in wenigen Minuten zu lösen. Ohne STL sitzt man wahrscheinlich die eine ode andere Stunde da.
Aber zu deiner Beruhigung: den Termin am 5.2. schaffst du locker, wenn die anderen Aufgaben auch nur ungefähr diese Schwierigkeitsstufe haben.

-
danke für deine antwort. wir dürfen den standardsortieralgorithmus benutzen. damit ist auch wahrscheinlich das gemeint: #include <algorithm>
zum fillarray() habe ich weder in meinen büchern noch in den dokumenten vom prof etwas gefunden.
daher fällt es mir auch schwer einen ansatz in der richtung zu finden.die anderen aufgaben sind ziemlich einfach. mit einem beliebigen zeichen ein gleichschenkliges dreieck darstellen, die anzahl der zeilen soll auch abgefragt werden. die andere ist ein matheprogramm, dass a,b,c (ax²+bx+c=0) abfragt und p-q ausgibt.
-
Zu Aufgabe 1:
Da kannst du dir ein Klasse bauen die alle 5 Eigenschafte enthält.
class Autotyp { public: string Typ; int Baujahr; double Preis; int Anzahl; double Umsatz; }Der Konstruktor der Klasse würde 4 Argumente erwarten und den Umsatz sofort ausrechnen
Autotyp(string P, int BJ, double Pr, int Anz) // hier die Memeberinitialisierungsliste { // hier die Berechnung von Umsatz rein }Als dynamischen Container kannst du einfach vector nehmen.
#include <vector> //... vector<Autotyp> meineDynamischeListe;a)
- z.B. in einer while-Schleife fragst ob noch ein Autotyp eingegeben werden soll (y/n)
- abhängig von der Antwort liest du die 4 Variablen ein Typ, Baujahr, Preis, Anzahl
- mit Hilfe dieser Variablen erzeugst du dann ein neues Objekt (Konstruktoraufruf!)
- welches du sofort in die dynamische List kopierst push_back (siehe vector)b) Die Prozedur Ausgabe könnte den Vector meineDynamischeListe als Parameter entgegennehmen und ihn vollständig durchlaufen. Hierbei gibt es viele Möglichkeiten: eine einfache for-Schleife, Iteratoren usw.
Dabei wird für jedes Objekt dessen Eigenschaften ausgegebenc) Wie b nur die Ausgabe geht nicht an cout sondern in eine Datei (siehe z.B. fstream)
Zu Aufgabe 2:
a)
int main() { double meinArray[6]; //für Kommazahlen reicht int nicht!!! fillarray(meinArray); //füllt das Array, z.B. mit for Schleife und cin sortarray(meinArray); //sortiert das Array, z.B. mit Algorithmus aus der STL return 0; }In späteren Aufgabenteilen musst du zwischendurch das Array noch ausgeben, was aber auch kein Problem sein sollte.
So, ich hoffe das reicht fürs Erste. Wie gesagt, du hast noch massig Zeit es selbst zu versuchen. Kann aber auch sein, dass bald einer aus Langeweile ein vollständiges Programm einstellt.
Viel Erfolg!
-
Danke das ist schonmal sehr hilfreich

Ich schreibe morgen eine Klausur und muss heute lernen. Ab morgen setz ich mich ran und schreibe, sobald ich etwas habe.gruß okta
-
Das Sortieren der Zahlen:
sortarray() //Prozedur zum Sortieren
e) Übergeben Sie das sortierte Array dem Hauptprogramm, wo es dann nach Aufforderung ausgegeben wird.
Das wiederspricht sich in meinen Augen extrem - in meiner Lösung hier würdest du das alte Array verändern - aber dann verstehe ich das Übergeben Sie ... nicht - entweder, er meinte Zurückgeben und Funktion (unwahrscheinlich)
oder Prozedur und übergeben Sie das Array an die Prozedur, verändern (sortieren) sie es in dieser und geben sie es dann im Hauptprogramm aus...Hm schrieb:
int main() { double meinArray[6]; //für Kommazahlen reicht int nicht!!! fillarray(meinArray); //füllt das Array, z.B. mit for Schleife und cin sortarray(meinArray); //sortiert das Array, z.B. mit Algorithmus aus der STL return 0; }(Ob du nun float oder double nimmst ist auch relativ egal - ich nehm eigtl lieber float)
C++ hat einen Nachteil: Array`s können nicht an Funktionen übergeben werden - man kann nur Zeiger übergeben - oder eben eine Referenz auf ein Array - da muss die Größe allerdings zur Compile-Zeit feststehen (weshalb man so was üblicherweise als template definiert - aber wir begnügen uns hier vorerst mit unserer Konstante).
Also gibt es jetzt 2 Möglichkeiten für dich - welche du bevorzugen wirst weiß ich nicht - ich würde üblicherweise die 2. Lösung verwenden, aber der Vollständigkeit halber wollte ich mal beide Lösungen posten:
#include <stdlib> using std::size_t; //unser Datentyp für unsigned Typen - in (modernem) C++ verwendet man üblicherweise kein int mehr für eine Längenangabe const size_t LENGTH = 6; //6 Zahlen void fillarray(float (&values) [LENGTH]) { //füllen } void sortarray(float (&values) [LENGTH]) { //sortieren } int main() { float values[LENGTH]; fillarray(values); sort(values); }allerdings kann man es auch so machen:
#include <stdlib> using std::size_t; const size_t LENGTH = 6; void fillarray(float *values, size_t length) { //füllen } void sortarray(float *values, size_t length) { //sortieren } int main() { float values[LENGTH]; fillarray(values, LENGTH); sort(values, LENGTH); }das ganze würde man jetzt noch fein säuberlich in verschiedene Header stecken oder zumindest die beiden funktionen nur deklarieren, dann die main-fkt definieren und dann sortarray und fillarray implementieren - sonst hat man iwann den nachteil, dass man nicht mal mehr die main-fkt findet ^^
------------------------------------------------------------------
Die Auto-Geschichte:Erstellen Sie eine nach oben offene (dynamische) Liste zur Verwaltung von Autotypen
Das hört sich für mich so an, als ob weder std::vector noch std::list oder sonst etwas verwendet werden sollte sondern man eine eigene Liste implementieren soll...
Dafür nimmst du einfach eine Klasse, in der du einen Pointer auf das nächste Element ablegst und den Datensatz an sich speicherst - du weist ja, wie so eine Liste funktioniert... ^^
Hierzu findet man auch in dem Forum und bei google sehr viele Lösungen - die du zwar nicht übernehmen solltest, aber so siehst du hoffentlich, wie du das implementieren musst...bb
-
Danke für die Antworten. Da ich nicht verstanden habe wie das mit dem FillArray funktioniert, habe ich die Aufgabe erstmal ohne gelöst. Es sieht auch etwas unprofessionell aus, aber für den Anfang finde ich es gut

Kann mir bitte jemand eine Meinung zu dem Programm und evtl Verbesserungsvorschläge nennen und anhand meines Programms ein funktionierendes Beispiel mit FillArray posten?#include <iostream> #include <algorithm> using namespace std; int main() { anfang: float a[6]; cout << "Zahlen eingeben? \n""Ja (j) /Nein (n): "; char antwort = ' '; cin >> antwort; if (antwort == 'j'){ a[0] = 3.89; a[1] = 8.34; a[2] = 2.78; a[3] = 9.43; a[4] = 1.56; a[5] = 7.45; } else if (antwort == 'n'){ cout << "Das Programm wurde beendet."; return 0; } else if (antwort != 'n' && antwort != 'j') goto anfang; teil1: cout << "unsortierte Zahlen ausgeben? \n""Ja (j) /Nein (n): "; char antwort2 = ' '; cin >> antwort2; if (antwort2 == 'j'){ for (int i=0; i<6; i++) cout << a[i] << " "; cout << "\n"; } else if (antwort2 == 'n'){ cout << "Das Programm wurde beendet."; return 0; } else if (antwort2 != 'n' && antwort2 != 'j') goto teil1; teil2: cout << "Zahlen sortieren? \n""Ja (j) /Nein (n): "; char antwort3 = ' '; cin >> antwort3; if (antwort3 == 'j'){ sort(a, a+6); reverse(a, a+6); } else if (antwort3 == 'n'){ cout << "Das Programm wurde beendet."; return 0; } else if (antwort3 != 'n' && antwort3 != 'j') goto teil2; teil3: cout << "sortierte Zahlen ausgeben? \n""Ja (j) /Nein (n): "; char antwort4 = ' '; cin >> antwort4; if (antwort4 == 'j'){ for (int i=0; i<6; i++) cout << a[i] << " "; } else if (antwort4 == 'n'){ cout << "Das Programm wurde beendet."; return 0; } else if (antwort4 != 'n' && antwort4 != 'j') goto teil3; getchar(); return 0; }gruß okta
-
Kann mir bitte jemand eine Meinung zu dem Programm und evtl Verbesserungsvorschläge nennen
Das ist ein gutes Beispiel, wie man goto nicht verwendet.

Nutze Funktionen und eine (oderer mehrere) Schleife(n).Das mit dem fillarray war nur ein Vorschlag, dass du Funktionen benutzen solltest, weil das ganze dann viel übersichtlicher und einfacher zu verstehen ist. Wenn du nämlich eine Funktion hast, die fillarray heisst, dann ist das relativ leicht zu verstehen, was die Funktion macht und man muss nicht den ganzen Code durchgehen, um zu verstehen, was sie macht. (Das ist einer der grossen Vorteile von Funktionen) Wenn du es dann doch tun musst, kannst du die Funktion ja immernoch genauer anschauen.
-
Okta schrieb:
aber für den Anfang finde ich es gut

Oktaaaaaa!!! Was tust du???
Ich habe dir mal ein kleines Beispiel (Ähnlichkeiten mit deiner Aufgabe sind rein zufällig
) aufgeschrieben. Mir ist zwar nicht ganz klar was dieses "nach Aufforderung" jeweils genau bedeutet, aber so könnte die Lösung einer ähnlichen Aufgabe aussehen:#include <iostream> using namespace std; void einlesen(char meinArray[]) { for (int i=0; i < 2; ++i) { cout << "Bitte " << i+1 << ". Wert eingeben." << endl; cin >> meinArray[i]; } } void tauschen(char meinArray[]) { char dummy; dummy = meinArray[0]; meinArray[0] = meinArray[1]; meinArray[1] = dummy; } int main() { char meinArray[2]; char antwort = 'n'; einlesen(meinArray); cout << "Array ausgeben? (j/n)"; cin >> antwort; if (antwort =='j') cout << "Array nach einlesen() : " << meinArray[0] << " " << meinArray[1] << endl; tauschen(meinArray); cout << "Array nach tauschen() : " << meinArray[0] << " " << meinArray[1] << endl; return 0; }
-
ist das jetzt besser?

#include <iostream> #include <algorithm> using namespace std; void print(float a[]) { for (int i=0; i<6; i++) cout << a[i] << " "; cout << "\n"; } void fillarray(float a[]) { a[0] = 3.89; a[1] = 8.34; a[2] = 2.78; a[3] = 9.43; a[4] = 1.56; a[5] = 7.45; } void sortarray(float a[]) { sort(a, a+6); reverse(a, a+6); } int main() { float a[6]; char antwort = ' '; while(antwort != 'n' && antwort != 'j'){ cout << "Zahlen eingeben? \n""Ja (j) /Nein (n): "; cin >> antwort; if (antwort == 'j') { fillarray(a); } else if (antwort == 'n'){ cout << "Das Programm wurde beendet."; getchar(); getchar(); return 0; } } antwort = ' '; while(antwort != 'n' && antwort != 'j') { cout << "unsortierte Zahlen ausgeben? \n""Ja (j) /Nein (n): "; cin >> antwort; if(antwort == 'j'){ print(a); } else if(antwort == 'n') { cout << "Das Programm wurde beendet."; getchar(); getchar(); return 0; } } antwort = ' '; while(antwort != 'n' && antwort != 'j') { cout << "Zahlen sortieren? \n""Ja (j) /Nein (n): "; cin >> antwort; if (antwort == 'j'){ sortarray(a); } else if (antwort == 'n'){ cout << "Das Programm wurde beendet."; getchar(); getchar(); return 0; } } antwort = ' '; while(antwort != 'n' && antwort != 'j') { cout << "sortierte Zahlen ausgeben? \n""Ja (j) /Nein (n): "; cin >> antwort; if (antwort == 'j'){ print(a); } else if( antwort == 'n') { cout << "Das Programm wurde beendet."; getchar(); getchar(); return 0; } } getchar(); getchar(); return 0; }hab eine andere Aufgabe (Nullstellen einer Quadratischen Gleichung) gelöst und würde dazu auch eure Meinung erfahren. Eine Frage habe ich auch noch: Wie kann ich die Augabe am Ende (-10 < x < 10) übersichtlicher gestalten?
#include <iostream> #include <cmath> using namespace std; double a,b,c; double p, q, p1, p2, r; double x1, x2; double y; void berechnung(){ p = b/a; q = c/a; p1 = pow(p, 2); p2 = p1/4; r = p2-q; x1 = -p/2 + sqrt(r); x2 = -p/2 - sqrt(r); } int main() { cout << "Bitte a eingeben: "; cin >> a; if (a != 0){ cout << "Bitte b eingeben: "; cin >> b; cout << "Bitte c eingeben: "; cin >> c; berechnung(); } else { cout << "Geradengleichung"; return 0; } if (r < 0){ cout << "Komplexe Nullstellen"; return 0; } if (r == 0){ cout << "Doppelte Nullstelle\n"; } cout << "Die Nullstelle x1 lautet: " << x1 <<endl; cout << "Die Nullstelle x2 lautet: " << x2 <<endl; if (b == 0){ cout << "Parabel symmetrisch zur Y-Achse"; } for (float i=-10; i<=+10; i++){ y = pow(i, 2) * a + i*b + c; cout << "\n " << i << "\t \t " << y; } return 0; }
-
Okta schrieb:
ist das jetzt besser?

Naja - es ist besser aber noch immer nicht hübsch... Da ich eigtl gerade Lernen müsste und keine Lust habe, versuch ich mal, dir bissl zu helfen... ^^
#include <iostream> #include <algorithm> using namespace std; const size_t LENGTH = 6; void print(float *a, size_t length) { for (size_t i=0; i != length; ++i) { cout << a[i] << " "; } cout << endl; } void fillarray(float *a, size_t length) { srand(static_cast <unsigned int> (time(0)); for (size_t i(0); i != length; ++i) { a[i] = static_cast <float> (rand()) / 100.f; //2 nachkommastellen sollten genügen } } void sortarray(float *a, size_t length) { sort(a, a+length); reverse(a, a+length); } int Quit() { cout << "Das Programm wurde beendet."; getchar(); return 0; } int main() { float a[LENGTH]; bool break_loop(false); do { cout << "Zahlen eingeben?\n" << "Ja (j) / Nein (n)"; char antwort; cin >> antwort; switch (antwort) { case 'j': fillarray(a, LENGTH); break_loop = true; break; case 'n': return Quit(); break; default: cout << endl << "Ungueltige Eingabe" << endl; } } while(! break_loop); /* Die anderen Schleifen analog dazu ändern */ }Ich weiß nicht, ob das nun die eleganteste Lösung ist oder nicht - aber hübscher als deine ist sie auf jeden Fall ^^
Auch ist das switch nicht schneller als das if an der stelle (innerhalb der Schleife) - aber es erhöht die Übersicht doch gewaltig - findest du nicht?!
außerdem kann man auch leichter auf 'J' / 'j' bzw 'N' / 'n' prüfen etc...Die zweite Aufgabe: (du hättest ja wenigsten mal versuchen können, zu compilieren - die letzte schleife hat er niemals so akzeptiert...
#include <iostream> #include <cmath> #include <stdexcept> //unsere exception std::invalid_argument #include <utility> //std::pair using namespace std; // 1. Typ, 2. Typ // falls dich das zu sehr irritiert, kannst du auch ein eigenes struct schreiben oder einfach mal bissl was über "templates" nachlesen... pair <double, double> berechnung(double a, double b, double c) { double p = b/a; double q = c/a; double p1 = p * p; //fürs quadrat brauchen wir noch kein power of... p1 /= 4; //bei dir war das hier p2 p1 -= q; //und das hier p2 if (p1 < 0) //hier werden die nullstellen komplex da neg. wurzel { throw invalid_argument("..."); //hier musst du noch was eintragen - wenn du möchtest ^^ } pair <double, double> ReturnValue; ReturnValue.first = -p/2 + sqrt(p1); //x1 ReturnValue.second = -p/2 - sqrt(p1); //x2 return ReturnValue; //sollte klar sein ^^ } double p, q, p1, p2, r; double x1, x2; double y; int main() { double a, b, c; cout << "Bitte a eingeben: "; cin >> a; if (a == 0) { cout << "Geradengleichung"; return Quit(); //Quit würde so (ähnlich) wie vorhin aussehen } cout << "Bitte b eingeben:"; double b; cin >> b; cout << "Bitte c eingeben: "; double c; cin >> c; pair <double, double> ergebnis; try { ergebnis = berechnung (a, b, c); } catch (const invalid_argument &e) { cout << e.what(); return Quit(); } cout << "Die Nullstelle x1 lautet: " << ergebnis.first << endl; cout << "Die Nullstelle x2 lautet: " << ergebnis.second << endl; if (b == 0) { cout << "Parabel symmetrisch zur Y-Achse"; } for (int i (-10); i != 10; ++i) { y = i*i * a + i*b + c; cout << "\n " << i << "\t \t " << y; } return Quit(); }besser?
falls du fragen hast, dann frag ruhig - hier war sicherlich einiges dabei, was du (so) noch nicht kanntest...bb
-
Danke das sieht schon viel besser aus

Allerdings verstehe ich die Funktion von den folgenden Befehlen nicht:pair <double, double>
catch (const invalid_argument &e)
tryIch habe das Programm kompiliert und es hat bei mir auch funktioniert, vielleicht liegt es daran, dass ich xcode benutze...
-
std::pairist ein Klassentemplate, das zwei Werte beliebigen Typs speichern kann.tryundcatchsind Schlüsselwörter für das sogenannte Exception-Handling, eine Art der Fehlerbehandlung.Auf www.cplusplus.com findest du noch mehr Informationen...
-
Okta schrieb:
Ich habe das Programm kompiliert und es hat bei mir auch funktioniert, vielleicht liegt es daran, dass ich xcode benutze...
Dein Programm lässt sich problemlos übersetzten.
Beide Programme sehen OK aus. Daher würde ich an deiner Stelle jetzt nich viel daran ändern oder womöglich noch komische Zugaben einbauen, die überhaupt nicht in der Aufgabenstellung stehen und auch nichts bringen.
Die Autotyp-Geschichte wird noch schwer genug.

unskilled schrieb:
falls du fragen hast, dann frag ruhig - hier war sicherlich einiges dabei, was du (so) noch nicht kanntest...
Weniger ist manchmal mehr ...
Es gibt keinen Grund den Exception-, Template-, und Castkäse an der Stelle einzubauen.
-
Es gibt keinen Grund den Exception-, Template-, und Castkäse an der Stelle einzubauen
also nimmt man weiterhin globale variablen?
ob er die klasse mit den rückgabewerten selbst schreiben würde, hätte er vrmtl mehr können müssen als std::pair zu nehmen...
for (float i=-10; i<=+10; i++){ich kenn keinen Compiler, der nen operator++ bei float kennt...
in so fern glaub ich auch nicht, dass er es compilieren konnte.bb
-
unskilled schrieb:
ich kenn keinen Compiler, der nen operator++ bei float kennt...
Du meinst, float ist nicht "plusplus-bar"?
-
meine ich ^^
genau, wie es keinen %-operator für float gibt...bb
-
Es geht mir dabei darum, dass du einem Anfänger der klar sagt, er beginnt erst mit C++ und unter Zeitdruck steht irgendwelche Templates, Exceptions, usw. an den Kopf knallst. Du selbst sagst ja, es wären Dinge dabei die er vermutlich nicht kennt.
Hilfreich ist das mit Sicherheit nicht. Und "hübsch" ist es auch nicht.
Sieht mehr nach einer kleinen "Angeberei" aus.
Das wollte ich damit sagen. Ob das alles programmiertechnisch sinnvoll ist, ist wieder eine andere Frage.
Zu der float-Geschichte:
Hab es jetzt auf mehreren Compilern in der Standard-Konfiguration getestet und es kam bei keinem davon auch nur eine Warnung.Ist schwer zu beurteilen, mit welchen Compilern du arbeitest und weshalb du auf die Schlußfolgerung gekommen bist, aber die "gängigen" Compiler unter Windows und Linux schlucken das.
-
unskilled schrieb:
meine ich ^^
genau, wie es keinen %-operator für float gibt...aber f=f+1 soll gehen? paßt nicht zusammen. entweder geht auch f++ oder geht f=f+1 nicht. was ist die lieber?