Somma di interi.

di il
42 risposte

42 Risposte - Pagina 3

  • Re: Somma di interi.

    Figurati, per così poco, nessun fegato. Sto solo ribadendo, nell'interesse di MT09, che il codice per cui ha aperto questo thread era sbagliato e vorrei che si accorgesse del perché e lo correggesse. Per il futuro dei suoi studi.
  • Re: Somma di interi.

    Shrimpy ha scritto:


    Weierstrass ha scritto:


    Visti i thread passati, è chiaro che o il ragazzo non ha voglia di studiare oppure sa già programmare e si sta divertendo con il repertorio classico della cattiva programmazione. Che voglia che avete di rispondergli...
    Sinceramente non condivido quest'idea, io non sono portato a pensare che una persona facente una domanda su un forum, non sia qualcosa degno di una risposta esaustiva.
    Detto questo ognuno è libero di condividere la sua, se voi persone che leggete e non volete rispondere per i motivi da te elencati, siete liberissimi di non farlo, e nessuno ha il diritto di contestare o rimproverarvi.
    Ecco mancava la spalla... Buon divertimento anche a te
  • Re: Somma di interi.

    MT09_full ha scritto:


    Nippolo ha scritto:


    MT09_full ha scritto:


    Deve o non deve essere inizializzata a 0?
    Per il buon funzionamento del programma la variabile sum ovviamente deve essere inizializzata a zero.
    Detto ciò, le variabili globali sono inizializzate a zero di default, quindi nel caso specifico non è necessario scriverlo.


    P.S.1
    Perché dichiari i e sum come variabili globali e non locali?

    P.S.2
    Hai provato a lanciare il programma? L'output è quello che ti aspetteresti?
    Dato che e'un piccolo programmino, ho pensato di porle come globali, ma so benissimo che avrei potuto metterle come locali!
    Anche perche'il prog. funziona lo stesso.
    Pero'cosi' facendo, trovo maggior ordine ponendole in globale!

    Ho lanciato il prog. e ha dato l'esito che mi aspettavo, non capisco il perche' di questa domanda che mi hai posto?
    Per quanto riguarda la questione "variabili", le norme di buona programmazione prevedono che l'ambito di ciascuna variabile sia il più piccolo possibile.

    Per quanto riguarda il tuo programma ("Scrivete un programma che calcoli e stampi la somma degli interi pari da 2 a 30") mi aspetto che venga calcolata la seguente somma:

    2+4+6+8+10+12+14+16+18+20+22+24+26+28+30 = 240

    e che venga stampato a schermo il solo risultato finale 240.
  • Re: Somma di interi.

    Nippolo, ma vedi che il programma funziona correttamente, non sto capendo il perchè siete insicuri?
    Io adesso ti allego il programma, tu lo esegui anche online, e vedrai che funziona correttamente:
    #include <stdio.h>
    
    //(Calcolare la somma di numeri interi pari) Scrivete un programma che calcoli e stampi la
    //somma degli interi pari da 2 a 30
    int i;
    int sum=0;
    
    int main()
    {
        for(i=2; i<=30; i=i+2){
            sum= sum+2;
            printf("Risultato della somma:%d\n",sum);
        }
    
    }
  • Re: Somma di interi.

    Ma secondo te, in 3 ti dicono che c'è un problema, siamo tutti matti?

    Il primo è il risultato corretto, il secondo quello dell'esecuzione del tuo codice
    Allegati:
    9500_0ec35c9d865adfb5440342b991e76685.png
    9500_0ec35c9d865adfb5440342b991e76685.png

    9500_a3b7c796ccbfbc6ebb87fbfbcfe1da72.png
    9500_a3b7c796ccbfbc6ebb87fbfbcfe1da72.png
  • Re: Somma di interi.

    MT09_full ha scritto:


    Nippolo, ma vedi che il programma funziona correttamente, non sto capendo il perchè siete insicuri?
    Io adesso ti allego il programma, tu lo esegui anche online, e vedrai che funziona correttamente:
    ...
    Ecco l'output che ottengo:
    Risultato della somma:2
    Risultato della somma:4
    Risultato della somma:6
    Risultato della somma:8
    Risultato della somma:10
    Risultato della somma:12
    Risultato della somma:14
    Risultato della somma:16
    Risultato della somma:18
    Risultato della somma:20
    Risultato della somma:22
    Risultato della somma:24
    Risultato della somma:26
    Risultato della somma:28
    Risultato della somma:30
    
    Process returned 0 (0x0)   execution time : 0.023 s
    Press any key to continue.
    
    Per te il risultato è corretto? Io il 240 (ti trovi che è il risultato sia quello?) non lo vedo da nessuna parte...

    Inoltre alla luce del consiglio che ti ho dato in precedenza, ossia

    Nippolo ha scritto:


    Per quanto riguarda la questione "variabili", le norme di buona programmazione prevedono che l'ambito di ciascuna variabile sia il più piccolo possibile.
    come lo modificheresti il codice?
  • Re: Somma di interi.

    Infatti, ho sbagliato a copiare il prog, ecco il prog. corretto:
     
     #include <stdio.h>
    
    //(Calcolare la somma di numeri interi pari) Scrivete un programma che calcoli e stampi la
    //somma degli interi pari da 2 a 30
    int i;
    int sum=0;
    
    int main()
    {
        for(i=2; i<=30; i=i+2){
            sum= sum+2;
            printf("Risultato della somma:%d\t",sum);
        }
    
    }
     
  • Re: Somma di interi.

    Ci prendi in giro?
  • Re: Somma di interi.

    oregon ha scritto:


    Ci prendi in giro?
    Io voto per il si...
  • Re: Somma di interi.

    Sgrubak ha scritto:


    oregon ha scritto:


    Ci prendi in giro?
    Io voto per il si...
    ... e io mi arrendo ...
  • Re: Somma di interi.

    MT09_full ha scritto:


    Infatti, ho sbagliato a copiare il prog, ecco il prog. corretto:
    Ok, vediamo come possiamo farti capire questa cosa...
    La consegna chiede: "scrivere un programma che calcoli e stampi la somma degli interi pari da 2 a 30".

    Punto primo, analizziamo la consegna.
    Calcolare la somma degli interi pari da 2 a 30.
    Ovvero:
    Per ogni numero (a partire da 2 fino ad arrivare a 30 compresi) verificare se il numero è dispari o pari.
    Se pari: sommare il suddetto numero a quelli precedenti (rispettanti la stessa condizione)

    Punto secondo, eseguiamo una piccola trace table:
    Iniziamo dal minimo
    2 è pari?, si, sommare 2 ai numeri pari precedenti, risultato = 2
    3, dispari, niente somma
    4, pari, risultato = 2 + 4 (sarebbe risultato = risultato + 4, ma scrivo numero per numero ogni volta così da farti capire)
    5, dispari, niente somma
    6, pari, risultato = 2 + 4 + 6 (idem...)
    7, dispari, niente somma
    8, , pari, risultato = 2 + 4 + 6 + 8
    9, dispari, niente somma
    10, pari, risultato = 2 + 4 + 6 + 8 + 10
    ...
    29, dispari, niente somma
    30, pari, risultato = 2 + 4 + 6 + 8 + 10 + 12 + 14 + 16 + 18 + 20 + 22 + 24 + 26 + 28 + 30 (fatto mediante le iterazioni del ciclo for e l'apposita istruzione somma)
    Giungiamo ala conclusione che il risultato finale è pari a (risultato = 240)

    Successivamente stampiamo il risultato (a calcolo ultimato)
    cout << "Il risultato è pari a: " << risultato << endl;
  • Re: Somma di interi.

    Sgrubak ha scritto:


    oregon ha scritto:


    Ci prendi in giro?
    Io voto per il si...
    A questo punto spero per lui che sia così...
  • Re: Somma di interi.

    Chiudo il thread che sta diventando assurdo.
Devi accedere o registrarti per scrivere nel forum
42 risposte