doppelte for schleife
hallo,
ich wollte ein kleines programm schreiben dass mir das kleine einmaleins ausgibt..also so
1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
usw
mein programm:
//einmaleins.cpp
#include<iostream>
using namespace std;
int main(){
int i=1;
int j=1,x,y;
for (i;i<11;i++){
for (j;j<11;j++){
j=i*j;
cout<<j<<"\t";
}
cout<<i<<endl;
}
return 0;
}
es läuft u kommt auch annähernd das raus was soll, aber da fehlt ja was
kann mir jemand helfen?
ich wollte ein kleines programm schreiben dass mir das kleine einmaleins ausgibt..also so
1 2 3 4 5 6 7 8 9 10
2 4 6 8 10 12 14 16 18 20
3 6 9 12 15 18 21 24 27 30
usw
mein programm:
//einmaleins.cpp
#include<iostream>
using namespace std;
int main(){
int i=1;
int j=1,x,y;
for (i;i<11;i++){
for (j;j<11;j++){
j=i*j;
cout<<j<<"\t";
}
cout<<i<<endl;
}
return 0;
}
es läuft u kommt auch annähernd das raus was soll, aber da fehlt ja was
kann mir jemand helfen?
Also ich hab zwar keine Ahnung welche Programmiersprache das ist, aber was ich daraus lesen kann sieht alles gut aus.
Es wäre gut, wenn du uns noch sagen würdest was genau fehlt bzw. wo genau dein Problem liegt.
Zitat
es läuft u kommt auch annähernd das raus was soll, aber da fehlt ja was kann mir jemand helfen?
Es wäre gut, wenn du uns noch sagen würdest was genau fehlt bzw. wo genau dein Problem liegt.
Ich kenn mich jetzt nicht mit c++ aus aber versuche mal diesen Code hier:
//einmaleins.cpp
#include<iostream>
using namespace std;
int main(){
int i=1;
int j=1,x,y;
for (i;i<11;i++)
{
for (j;j<11;j++)
{
j=i*j;
cout<<j<<"\t";
}
int j=1,x,y;
cout<<i<<endl;
}
return 0;
}
Edit:
Denn wie ich das sehe ist ihm j beim zweiten durchlauf und bei den anderen immer schon zu groß das er halt die zweite Schleife nicht mehr durchmacht weil halt die Abruchbedingung schon vorhanden ist. Jedenfalls sollte das so klappen wenn ich die c++ Befehle jetzt richtig verstanden hab
Greetz
MaxTPayne
//einmaleins.cpp
#include<iostream>
using namespace std;
int main(){
int i=1;
int j=1,x,y;
for (i;i<11;i++)
{
for (j;j<11;j++)
{
j=i*j;
cout<<j<<"\t";
}
int j=1,x,y;
cout<<i<<endl;
}
return 0;
}
Edit:
Denn wie ich das sehe ist ihm j beim zweiten durchlauf und bei den anderen immer schon zu groß das er halt die zweite Schleife nicht mehr durchmacht weil halt die Abruchbedingung schon vorhanden ist. Jedenfalls sollte das so klappen wenn ich die c++ Befehle jetzt richtig verstanden hab

Greetz
MaxTPayne
Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »maxtpayne« (19. Oktober 2004, 11:43)
Zitat
Original von nandiny
ach jetzt bin ich doch noch draufgekommen..
das muss meine ausgabe sein:
z=i*j;
cout<<z<<"\t";
Du benutzt j schon als Variable für die Schleife. Du darfst es dann nicht gleichzeitig als Ergebnis einer Berechnung benutzen, sonst kommst Du mit der Schleife durcheinander.
Gruss
Marty



*den Kompiler auspack