Salve, l'obiettivo era quello di creare un programma che disegnasse un quadrato di asterischi (*) in base al numero inserito dall'utente. Tutto ciò attraverso l'utilizzo di soli cicli while. Ho notato che, per assicurarne il corretto funzionamento, la terza variabile (in questo caso la k) devo dichiararla necessariamente all'interno del ciclo while.
Non vorrei alternative al codice, ma soltanto una motivazione che spieghi perché il programma creato con il seguente codice (quindi con la k dichiarata all'inizio e non nel ciclo) non sortisce il risultato desiderato.
CODICE "ERRATO":
CODICE CORRETTO:
Non vorrei alternative al codice, ma soltanto una motivazione che spieghi perché il programma creato con il seguente codice (quindi con la k dichiarata all'inizio e non nel ciclo) non sortisce il risultato desiderato.
CODICE "ERRATO":
C:
#include <stdio.h>
int main()
{
int x, y, k;
y = 0;
k = 0;
printf("Enter the number.\n");
scanf("%d", &x);
while (y++ < x) {
while (k++ < x) {
printf("*");
}
printf("\n");
}
return 0;
}
CODICE CORRETTO:
C:
#include <stdio.h>
int main()
{
int x, y;
y = 0;
printf("Enter the number.\n");
scanf("%d", &x);
while (y++ < x) {
int k = 0;
while (k++ < x) {
printf("*");
}
printf("\n");
}
return 0;
}