Zum Inhalt springen

Gesucht sind nut drei Maxima


mathemanu

Empfohlene Beiträge

Moin Leute,

ich sitze hier seit einer Stunde vor einem Programmabschnitt und der produziert mir den verwirrendsten Fehler, den ich in einem c++-Programm bis jetzt gesehen habe. Der betrachtete Code ist folgender:


// int l=0;


float max[10]={0};

int kmax[10]={0};


for(k;k<9970;k++)		

{

	if (mittelwert[k][0]>=max[0])

	{		

		max[0]=mittelwert[k][0];

		kmax[0]=k;

	}

}


for(int i=kmax[0]-grenze;i>=0;i--)

{

// 	l++;

	if (mittelwert[i][0]>=max[1])

	{		

		max[1]=mittelwert[i][0];

		kmax[1]=i;

	}

}



for(int i=kmax[0]+grenze;i<=9970;i++)

{

// 	if (mittelwert[i][0]>=max[2])

// 	{		

// 		max[2]=mittelwert[i][0];

// 		kmax[2]=i;

// 	}

}


// std::cout << l;

Folgender unbegreiflicher Fehler tritt auf:

Wenn ich l auskommentiert lasse (ich brauche l an keiner anderen Stelle im Programm und wie ihr seht in dem Schnipsel hier auch nicht) , dann wird zwar ohne zu meckern von meinem boarland-compiler kompiliert, aber sobald ich die exe starte gibt mir windows aus, dass die exe ein Problem festgestellt hat und beendet werden muss.

Jetzt kommt aber das lustigeste an der ganzen Sache. Wenn ich l wieder einkommentiere, dann werden meine Maxima gefunden und ausgegeben. Und zwar die richtigen Werte. Was zur Hölle könnte das denn sein? Ich verstehe das überhaupt nicht. Habe schon alles mögliche ausprobiert und teilweise kompiliert, aber ich komme nicht auf den Fehler. Es muss doch auch ohne gehen.

Für Hilfe bin ich wie immer sehr dankbar.

Grüße Manu

PS: Der Wert grenze ist ein int-Wert von 200.

Bearbeitet von mathemanu
Link zu diesem Kommentar
Auf anderen Seiten teilen

Oh, ja ich hab k noch nicht wieder in die Schleife geschreiben, aber da steht eigentlich:


for(int k=0;k<9970;k++)	

Ich falle vom Glauben ab. Ich habe
int k=0;

einfach über der Schleife geschrieben und dann hat er immer diesen Fehler ausgespuckt. Aber jetzt ist er weg. Ich dachte, wenn man die Laufvariable außerhalb der Schliefe initialisiert, dann geht das auch...

Vielen Dank für die Antwort. Es klappt jetzt auf jeden Fall.

Gruß Manu

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...