Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: [C]For multiplo

  1. #1

    [C]For multiplo

    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

  2. #2
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466

    Re: [C]For multiplo

    Originariamente inviato da gennahouse
    Non ne ho trovata nessuna
    Azz vuoi la pappa fatta eh?

  3. #3
    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?

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466
    Originariamente inviato da gennahouse
    vorrei solo sapere come funzionano i cicli for insieme
    Se non erro
    codice:
    int i, j, N = 5;
    
    for(i = 0; i < N; i++)
    {
       for(j = 0; j < N; j++)
       ...
    }
    In questo for annidato, ad ogni iterazione di i j viene iterato N = 5 volte, per un totale di 25 iterazioni..

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466
    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

  6. #6
    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("*")
    
    }

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466
    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");

  8. #8
    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");
    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 =)

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2010
    Messaggi
    466
    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?
    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.
    se ti va, ti va di rispondere al messaggio di prima? grazie =)
    però esattamente come lavorano?
    È lo stesso principio che ti ho spiegato due risposte prima che tu postassi il for..

  10. #10
    grazie al tuo aiuto sono riuscito finalmente a fare questo:
    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;
    }
    non capivo molto bene come lavorava il for multiplo, ma ora invece si grazie =)

    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?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.