Ciao a tutti, ho una domanad, sapete di un articolo o guida che spiega bene il for multiplo? quello per realizzare la piramide di asterischi ad esempio...
Non ne ho trovata nessuna
Ciao a tutti, ho una domanad, sapete di un articolo o guida che spiega bene il for multiplo? quello per realizzare la piramide di asterischi ad esempio...
Non ne ho trovata nessuna
Azz vuoi la pappa fatta eh?Originariamente inviato da gennahouse
Non ne ho trovata nessuna
no, allora non mi sono spiegato bene, allora, io ho gia realizzato questo programma, non mi serve il codice, vorrei solo sapere come funzionano i cicli for insieme, cioe ad esempio usarne 5 insieme...
Non c'è nessuna guida dove lo spiega?
Se non erroOriginariamente inviato da gennahouse
vorrei solo sapere come funzionano i cicli for insieme
In questo for annidato, ad ogni iterazione di i j viene iterato N = 5 volte, per un totale di 25 iterazioni..codice:int i, j, N = 5; for(i = 0; i < N; i++) { for(j = 0; j < N; j++) ... }
In più per fare quello che vuoi tu (se parliamo di piramidi etc) devi incrementare di 1 ad ogni iterazione la variabile con il valore "limite", nel caso del for di prima, inizi il ciclo con N = 1 e poi N++. Mettici un break quando acquisisce un certo valore
io parlo in questi casi qui, al secondo for non posso fargli fare due istruzioni senza i { }
però esattamente come lavorano?
allora il prio for quello di 1 rite il tutto 5 volte
di queste 5 volte verranno stampati:
5 new line, 25 + e 75 * giusto?
codice:int i, j, z, N = 0; for(i = 0; i < N; i++) { printf("\n"); for(j = 0; j < N; j++) printf "+"); for(z = 0; z <15 ,z++) printf("*") }
Anche se non mi è molto chiaro cosa vorresti fare con i for appena postati, ti posto un esempio valido per una mezza piramide
codice:int i, j, N = 1; for(i = 0; i < N; i++) { for(j = 0; j < N; j++) printf("*"); N++; if(N == 10) break; printf("\n"); } printf("\n");
non ho capito bene una cosa di tutto questo, allora, teoricamente l'incremento di N cioe N++; è fuori dal ciclo del secondo for vero?Originariamente inviato da simo_85
Anche se non mi è molto chiaro cosa vorresti fare con i for appena postati, ti posto un esempio valido per una mezza piramide
codice:int i, j, N = 1; for(i = 0; i < N; i++) { for(j = 0; j < N; j++) printf("*"); N++; if(N == 10) break; printf("\n"); } printf("\n");
se ti va, ti va di rispondere al messaggio di prima? grazie =)
Esatto.. Per la cronaca qualsiasi struttura di controllo (if - else, for, do - while, while) esegue di standard solo la prima istruzione che lo segue. Se invece è seguita da un blocco di istruzioni racchiuso nelle parentesi graffe, eseguirà tutto quel blocco.Originariamente inviato da gennahouse
non ho capito bene una cosa di tutto questo, allora, teoricamente l'incremento di N cioe N++; è fuori dal ciclo del secondo for vero?
se ti va, ti va di rispondere al messaggio di prima? grazie =)È lo stesso principio che ti ho spiegato due risposte prima che tu postassi il for..però esattamente come lavorano?
grazie al tuo aiuto sono riuscito finalmente a fare questo:
non capivo molto bene come lavorava il for multiplo, ma ora invece si grazie =)codice:#include <stdio.h> int main() { int a,b,c,d, e, f; f = 0; scanf("%d %d", &d, &b); for (a = 0; a <= d; a++) { for (c = 0; c <= b; c++) printf(" "); b--; for (e = 0; e <= f; e++) printf("*"); f++; printf("\n"); } return 0; }
solo un ultima domanda, prima hai usato if e break, però come l'ho fatto io è un errore?
cioe non si ferma solo il programma?