View Full Version : Cicli annidati For in C
::tony design
15-09-2003, 14:08
Ciao a tutti, devo fare un esercizio per l'università:
devi riscrivere il seguente frammento di codice utilizzando due cicli annidati for:
int i1=0, i2=1;
while(i1<5)
{
i1++;
i2=0;
while(++i2!=i1)
printf("X");
printf("\n");
}
Qualcuno sa come si fà!
Grazie
::tony
questa è la prima osa che mi è venut ain mente. provalo prima :)
int i,j;
for (i = 0; i < 5; i++){
for (j = 0; j < i; j++)
printf("X");
printf("\n");
}
ciao ;)
Originariamente inviato da VICIUS
questa è la prima osa che mi è venut ain mente. provalo prima :)
int i,j;
for (i = 0; i < 5; i++){
for (j = 0; j < i; j++)
printf("X");
printf("\n");
}
ciao ;)
No...è sbagliato...
La traduzione diretta sarebbe questa:
int i1, i2;
for(i1=1; i1<5; i1++)
{
for(i2=0; ++i2!=i1; )
printf("X");
printf("\n");
}
Per il ciclo + interno si può anche ragionare sui valori di i2 ed adottare un for classico di questo tipo:
for(i2=1; i2!=i1; ++i2)
Originariamente inviato da cionci
No...è sbagliato...
La traduzione diretta sarebbe questa:
int i1, i2;
for(i1=1; i1<5; i1++)
{
for(i2=0; ++i2!=i1; )
printf("X");
printf("\n");
}
Per il ciclo + interno si può anche ragionare sui valori di i2 ed adottare un for classico di questo tipo:
for(i2=1; i2!=i1; ++i2)
non fanno la stessa cosa :confused:
ciao ;)
::tony design
15-09-2003, 18:07
Originariamente inviato da VICIUS
non fanno la stessa cosa :confused:
ciao ;)
infatti :D
Prima di tutto il mio è sbagliato...così va bene...
int i1, i2;
for(i1=0; i1++<5;)
{
for(i2=0; ++i2!=i1; )
printf("X");
printf("\n");
}
Ma devi tradurre o devono fare la stessa cosa ?
Allora anche questo fa la stessa cosa ;)
int i1, i2;
for(i1=0; i1<1; ++i1)
{
for(i2=0; i2<1; ++i2)
printf("\nX\nXX\nXXX\nXXXX\n");
}
Prova a sostituire printf("X%d%d",i1, i2); a printf("X"); e vedrai che sono profondamente diversi... Pensa se invece di stampare una X avesse fatto operazioni matematiche con gli indici...
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.