Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [C] Problemi piramide

  1. #1

    [C] Problemi piramide

    Ciao a tutti... non è da malto che programmo... mi è stato dato un esercizio da fare ma non mi viene in mente cosa usare per risolverlo... Questo è il testo del problema:


    /* Scrivere un programma che disegni sullo schermo un triangolo
    * di asterischi data l'altezza dall'utente.
    * L'altezza sara' minore di 20
    *
    * Es.
    *
    * *
    * ***
    * *****
    * *******
    * *********
    *
    * */


    per ora io ho scritto questo (nulla di molto utile):

    #include <stdio.h>
    #include <stdlib.h>

    #define max 20
    int alt;

    main()
    {
    printf("Inserisci l'altezza: ");
    scanf("%d",&alt);
    if(alt<max)
    {
    for(
    }
    }

  2. #2
    Qui è venuta male la figura con gli asterischi ma in teoria dovrebbe venire una piramide... copiando non è venuta giusta

  3. #3

    Re: [C] Problemi piramide

    codice:
    #include <stdio.h>
    #define MAXHEIGHT 20 
    int main()
    {
        int height,i,j;
        fputs("Inserisci l'altezza del triangolo (1-20): ",stdout);
        if(scanf("%d",&height)==0 || height>MAXHEIGHT || height<=0)
        {  
            puts("Valore non valido");
            return 1;
        }
        for(i=0;i<height;i++)
        {
            for(j=0;j<(height-i);j++)
                putchar(' ');
            for(j=0;j<(1+i*2);j++)
                putchar('*');
            putchar('\n');
        }
        return 0;
    }
    Amaro C++, il gusto pieno dell'undefined behavior.

  4. #4
    sforzati un po' di più.
    hint: fai il ciclo da 1 fino al numero di asterischi della base e stampa per ogni ciclo tanti asterischi quanto è il valore della variabile del ciclo.
    ciao
    sergio

  5. #5
    Si può fare in tanti modi, basta tenere presenti le seguenti relazioni che risultano dall'esame della figura:
    codice:
    s=spazi da premettere agli asterischi
    a=asterischi della linea
    h=altezza del triangolo
    r=riga corrente (iniziando a contare da zero)
    
    s=h-r-1
    a=r*2+1
    .
    Personalmente credo che abbia più senso fare tutto in funzione del numero delle righe, ma "rivoltando" le dette relazioni puoi scrivere il ciclo in funzione di qualunque variabile.
    Amaro C++, il gusto pieno dell'undefined behavior.

  6. #6

    Re: [C] Problemi piramide

    Originariamente inviato da Ov3rLo4d

    per ora io ho scritto questo (nulla di molto utile):

    #include <stdio.h>
    #include <stdlib.h>

    #define max 20
    int alt;

    main()
    {
    printf("Inserisci l'altezza: ");
    scanf("%d",&alt);
    if(alt<max)
    {
    for(
    }
    }
    Qulla parentesi aperta, del for, non chiusa è decisamente preoccupante..

  7. #7
    Grazie a tutti.... mi siete stati molto utili... sono riuscito a farlo dasolo ^^

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.