Ich brauche Hilfe mit einem einfachen Programm. Und nein - es ist nicht meine Hausaufgabe (ich lerne Cpp für mich selbst und benutze es vielleicht in Zukunft) Also ja. Ich habe ein Programm, liest Arrays Größe 10
, und setzen Sie dann Zahlen in es {2.56, 1.598, 0, 5.15, 0, 3.012, 10, 4.789, 2.569, 0}
Das Programm sollte die 0
ignorieren, und es tut, aber das Problem ist .. Ich brauche die Nummer der, wo die Nummer in platziert ist Array (kleinste Zahl ist 1.598
und seine 2
im Array) Inzwischen bekomme ich Nummer 8
auf dem größten (sollte 5
sein, wenn Nullen ignoriert werden würden) und 1
am kleinsten. Wie kann ich das beheben? Heres die Leere der größten Anzahl:Array Element Nummer
void Biggest(float array[], int n, float &max, int &maxNr)
{
max = array[0]
for (int i = 1; i < n; i++){
if (array[i] == 0)
continue;
if (array[i] > max){
max = array[i];
maxNr = i;
}
}
}
Druck Leere:
void Print(float min, float max, double avg, int maxNr, int minNr)
{
ofstream info;
info.open("result1.txt");
info << "Biggest: " << max << " Number : " << maxNr << endl;
info << "Smallest: " << min << " Number : " << minNr << endl;
info << "Average: " << avg << endl;
info.close();
}
Und alle Haupt.
int main(){
float array[100];
int n;
float max;
float min;
double avg;
int maxNr, minNr;
Reading(array, n);
Biggest(array, n, max, maxNr);
Smallest(array, n, min, minNr);
Average(array, n, avg);
Printing(min, max, avg, maxNr, minNr);
return 0;
}
Ihr Code wird nicht einmal kompiliert. Am Ende von "max = array [0]" fehlt ein ';', und Sie haben in 'Biggest()' '' 'nicht gefunden. – Barmar
Versuchen Sie, Ihren Post so zu bearbeiten, dass er ein [minimales, vollständiges, überprüfbares Beispiel] (http://stackoverflow.com/help/mcve) enthält. –
Was ist dein Problem? – Raindrop7