Sick-Angel
Grünschnabel
C++: Mehrere Zahlen auf einmal einlesen, Felder, Hashing
Hallo,
ich hoffe, ihr könnt mir wieder helfen. Ich soll als Aufgabe eine Zahlenkette (max. 50 Zahlen, Abschluß mit Wert 0) einlesen und dann als Ausgabe bestimmte Berechnungen anzeigen lassen (also Mittelwert, Median & Standardabweichung).
Wir hatten in der Vorlesung besprochen was Felder/Arrays sind, und Hashing, was ich allerdings nicht wirklich verstanden habe *schäm* Zumindest nicht, wie ich in den Beispielen Verwendung dafür haben würde.
Jedenfalls sollte es mit diesen Dingen zu lösen sein. Ich scheitere aber schon am richtigen Einlesen, weil die einzelnen Zahlen durch Leerzeichen getrennt werden und man dafür laut Google "cin.getline" u.ä. braucht, was wir jedoch nicht besprochen hatten.
Folgenden Ansatz hatte ich mir mit Hilfe des Skripts und der Suchfunktion zusammengebastelt:
Das ist mal nur fürs Einlesen. Die Ausgabe sollte mir halt nur zeigen, ob das Einlesen geklappt hat. Irgendwie ein halbherziger Test-Versuch
Dann hab ich noch gefunden, dass man die Anzahl der Eingaben durch
anzahl = strlen(feld);
rausfinden sollte? Hab das auf mein Beispiel umgemünzt.
Sortieren sollte durch
int feld[49];
sort(feld,feld+sizeof(feld))
gehen.
Stimmen die letzten Ansätze soweit?
Dass mein Code nicht passt, weiß ich durchs Kompilieren. Da kommt folgende Fehlermeldung:
Vielen Dank im Voraus!
lg,
Angie
Hallo,
ich hoffe, ihr könnt mir wieder helfen. Ich soll als Aufgabe eine Zahlenkette (max. 50 Zahlen, Abschluß mit Wert 0) einlesen und dann als Ausgabe bestimmte Berechnungen anzeigen lassen (also Mittelwert, Median & Standardabweichung).
Wir hatten in der Vorlesung besprochen was Felder/Arrays sind, und Hashing, was ich allerdings nicht wirklich verstanden habe *schäm* Zumindest nicht, wie ich in den Beispielen Verwendung dafür haben würde.
Jedenfalls sollte es mit diesen Dingen zu lösen sein. Ich scheitere aber schon am richtigen Einlesen, weil die einzelnen Zahlen durch Leerzeichen getrennt werden und man dafür laut Google "cin.getline" u.ä. braucht, was wir jedoch nicht besprochen hatten.
Folgenden Ansatz hatte ich mir mit Hilfe des Skripts und der Suchfunktion zusammengebastelt:
Code:
#include <iostream.h>
#include <math.h>
int main()
{
int feld[49];
cout << "Bitte geben Sie eine Zahlenreihe ein:" << endl;
cin.getline(feld,49,0);
cout << "Ihre Eingabe lautet:" << feld << endl;
return 0;
}
Das ist mal nur fürs Einlesen. Die Ausgabe sollte mir halt nur zeigen, ob das Einlesen geklappt hat. Irgendwie ein halbherziger Test-Versuch

Dann hab ich noch gefunden, dass man die Anzahl der Eingaben durch
anzahl = strlen(feld);
rausfinden sollte? Hab das auf mein Beispiel umgemünzt.
Sortieren sollte durch
int feld[49];
sort(feld,feld+sizeof(feld))
gehen.
Stimmen die letzten Ansätze soweit?
Dass mein Code nicht passt, weiß ich durchs Kompilieren. Da kommt folgende Fehlermeldung:
Hmm.. ich hoffe, das waren ausreichend Infos dafür, woran ich hänge und wo ich genau Hilfe brauchen würde.bsp2.C:10: no matching function for call to `_IO_istream_withassign::getline (int[49], int, int)'
/opt/GNU/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/../../../../include/g++-3/iostream.h:129: candidates are: class istream & istream::getline(char *, int, char = '\n')
/opt/GNU/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/../../../../include/g++-3/iostream.h:131: class istream & istream::getline(unsigned char *, int, char = '\n')
/opt/GNU/lib/gcc-lib/sparc-sun-solaris2.7/2.95.2/../../../../include/g++-3/iostream.h:136: class istream & istream::getline(signed char *, int, char = '\n')
Vielen Dank im Voraus!
lg,
Angie
Zuletzt bearbeitet: