Non so come fare la tabella!!! (in c)

di il
10 risposte

Non so come fare la tabella!!! (in c)

Mi potete aiutare a fare questo esercizio per favore???
Scrivere un programma che stampi una tabella con il quadrato e il cubo di tutti i numeri interi compresi tra 1 e 2500...
non ho idea di come fare questo esercizio... D:

10 Risposte

  • Re: Non so come fare la tabella!!! (in c)

    Ciao, per regolamento del forum non si fanno esercizi su richiesta.
    Comunque ci possiamo ragionare assieme: hai provato a guardare i cicli? In questo caso ci starebbe bene un ciclo "for".
    Poi la tua tabella come deve essere? Perchè quella dei quadrati è più una lista, nel senso di sequenza di numeri, tipo
    1 4 9 16 25 36 49 64...
    Deve avere una particolare formattazione grafica? Ad esempio una cosa del genere
    1 4 9 16 25 36 49 64...
    1 8 27 64 125 ...
    con i quadrati sopra e i cubi sotto.
  • Re: Non so come fare la tabella!!! (in c)

    Ok non sapevo la cosa degli esercizi...comunque pensavo di fare due tabelle, una con i quadrati e l'altra con i cubi
  • Re: Non so come fare la tabella!!! (in c)

    D'accordo, però come la vuoi questa tabella? Ad esempio andando a capo ogni 10 numeri?
    Quindi una cosa del genere
    
    1 4 9 16 25 36 49 64 81 100
    121 144 169 ...
    
    andrebbe bene?
  • Re: Non so come fare la tabella!!! (in c)

    Si
  • Re: Non so come fare la tabella!!! (in c)

    Ok, allora prova a impostare un ciclo for. La variabile "contatore" andrà fino a 2500 e ad ogni incremento dovrai calcolare e stampare il quadrato/cubo. In aggiunta, ogni 10 numeri dovrai stampare il carattere "\n" che ti permette di andare a capo.
    Prova a scrivere un po' di codice e se hai problemi postalo che lo guardiamo.
  • Re: Non so come fare la tabella!!! (in c)

    Ok
  • Re: Non so come fare la tabella!!! (in c)

    L'ho fatto però non mi fa vedere tutti i 2500 numeri


    int _tmain(int argc, _TCHAR* argv[])
    {
    int i,a,Quad,Cubo;

    printf("Numero\t\tQuadrato\tCubo");

    for(i=0;i<2500;i++)
    {
    a=i;
    Quad= a*a;
    Cubo= a*a*a;

    printf("\n\n\n%d \t%d \t%d",a,Quad,Cubo);
    }



    fflush(stdin);
    getchar();
    return 0;
    }
  • Re: Non so come fare la tabella!!! (in c)

    Io starei su qualcosa di ancora più semplice. Ti posto un possibile codice per stampare la tabella dei quadrati:
    
    #include <stdio.h>
    
    int main() {
    
        int i=0;
    
        for(i=1; i<=2500; i++) {
            printf("%d", i*i);
            if(i%10 == 0) printf("\n");
            else printf(" - ");
        }
        
        return 0;
    }
    
    Prova a guardare e vedi se ti è tutto chiaro.
  • Re: Non so come fare la tabella!!! (in c)

    L'ho riscritto ed è un po meglio...però non riesco a mettere a posto il cubo e mi stampa numeri negativi...e in più non mi fanno vedere entrambi tutti i numeri con i quadrati o cubi
    
    int i,Quad,Cubo,scelta=0;
    
    
    	printf("\t\t\t\t\t\t(premi 1 per Quad o 2 per Cubo)");
    	printf("\nQuadrato o Cubo?");
    	scanf("%d",&scelta);
    	
    	switch(scelta)
    	{
    		case 1:
    			for(i=1; i<=2500; i++) {
    			Quad=i*i;
    			printf("%d\t%d\t",i,Quad);
    			}
    			break;
    
    		case 2:
    			for(i=1; i<=2500; i++) {
    			Cubo=i*i*i;
    			printf("%d\t%d\t",i,Cubo);
    			}
    			break;
    	}
    	
    	
    	
    	fflush(stdin);
    	getchar();
    	return 0;
    }
    
  • Re: Non so come fare la tabella!!! (in c)

    Ho corretto il codice per il calcolo del cubo: era un problema di precisione della rappresentazione.
    Per quanto riguarda lo stampare tutti i numeri stai tranquillo che li stampa tutti. Probabilmente ti sembra di no perchè alcuni sono troppo lunghi per la finestra e vanno a capo ma comunque ci sono tutti. Se mai puoi provare a formattare in maniera migliore l'output in modo da renderlo più leggibile.
    Ecco il codice:
    
    #include <stdio.h>
    
    int main()
    {
    
        int i,Quad,scelta=0;
        long long int Cubo;
    
    
        printf("\t\t\t\t\t\t(premi 1 per Quad o 2 per Cubo)");
        printf("\nQuadrato o Cubo?");
        scanf("%d",&scelta);
    
        switch(scelta)
        {
        case 1:
            for(i=1; i<=2500; i++)
            {
                Quad=i*i;
                printf("%d\t%d\t",i,Quad);
            }
            break;
    
        case 2:
            for(i=1; i<=2500; i++)
            {
                Cubo=(double)i*(double)i*(double)i;
                printf("%lld - ",Cubo);
    
            }
            break;
        }
    
    
    
        fflush(stdin);
        getchar();
        return 0;
    }
    
Devi accedere o registrarti per scrivere nel forum
10 risposte