IndicePortaleCalendarioFAQCercaLista UtentiGruppiRegistratiAccedi
Social

Cerca
 
 

Risultati per:
 
Rechercher Ricerca avanzata
Visite
My Biblioteca
Leggi Qui Tutti I Libri

BASTA UN CLICK
Ultimi argomenti
»  LinuxMX blog & forum: una comunità tutta Linux
Ven Giu 15, 2012 9:00 pm Da niculinux

» Le Funzioni
Dom Mar 18, 2012 12:07 am Da Mira

» Gestione permessi di un file
Gio Mar 15, 2012 12:49 pm Da Mira

» Comando per creare un link simbolico
Mer Mar 14, 2012 11:08 pm Da Mira

» Comandi per eliminare file e cartelle
Mer Mar 14, 2012 3:29 pm Da Mira

» Comandi per rinominare un file
Dom Mar 04, 2012 12:41 pm Da Mira

» Le variabili (parte 2)
Sab Mar 03, 2012 4:24 pm Da Mira

» Le variabili (parte 1)
Lun Feb 27, 2012 11:32 pm Da Mira

» Introduzione al C...
Lun Feb 27, 2012 1:37 pm Da Mira

Argomenti più visti
Regolamento del forum
Problema aggiornamento ubuntu 11.04 a 11.10
Tablet android quale comprare o quale scegliere
VirtualBox 4.1.4 DOWNLOAD FREE
LinuxMX blog & forum: una comunità tutta Linux
openSUSE 12.1 Beta 1 DOWNLOAD FREE
Libre Office o Open Office?
Ciao a tutti voi
Le variabili (parte 1)
Introduzione al C...
Volunia
Pagina Facebook
Parole chiave

Condividi | 
 

 Programma in C che legge una sequenza di numeri e stampa la somma

Vedere l'argomento precedente Vedere l'argomento seguente Andare in basso 
AutoreMessaggio
florin88

avatar

Messaggi : 334
Data d'iscrizione : 21.09.11
Età : 30
Località : tutto il mondo

MessaggioTitolo: Programma in C che legge una sequenza di numeri e stampa la somma   Dom Nov 20, 2011 9:05 pm



Scrivere un programma in C che legga una sequenza di numeri positivi e ad ogni numero letto ne stampi la somma progressiva.
Il programma deve finire quando l'utente immette un numero minore o uguale a 0.

Cominciamo a vedere come si risolve questo problema.


SOLUZIONE SBAGLIATA
Codice:


#include <studio.h>

void main(
{
    int a, t;
 
    t = 0;

    printf  ("Inserire numero => ");
    scanf ("%d", &a);
    while (a >= 0)  {

                t+= a;
                printf  ("La somma progressiva è =>  %d\n",  t);
               
                printf  ("Inserisci un'altro numero => ");
                scanf ("%d, &a);
            }
            printf  ("La tua somma progressiva è =>  %d\n,  t);
}




SOLUZIONE CORRETTA
Codice:



#include <stdio.h>

int main(int argc, char *argv[])
{
    int a, t;
    a = t = 0;
    do {

      printf  ("Numero: ");
      scanf ("%d", &a);
      t+= a;
      printf("Somma progressiva parziale %d\n",t);

    }

    while ( a > 0);
    printf  ("La tua somma progressiva è %d\n",t);

  return 0;

}



seguire la spiegazione sotto lasciata da gulpe


Ultima modifica di florin88 il Lun Nov 21, 2011 3:26 pm, modificato 1 volta
Torna in alto Andare in basso
Visualizza il profilo http://www.lascaricata.forumattivo.com
gulpe



Messaggi : 2
Data d'iscrizione : 21.11.11

MessaggioTitolo: Re: Programma in C che legge una sequenza di numeri e stampa la somma   Lun Nov 21, 2011 2:30 pm

Commento passo passo:

1) L'include delle standard input/ouput si chiama stdio.h non studio.h

2) Generalmente un programma, specie nei sistemi unix, ritorna sempre un intero che identifica il suo stato:
0 - Programma terminato con successo
!= 0 - Programma non terminato con successo

Da cui int main non void main

3) Manca la parentesi di chiusura dopo il main (. Solitamente come un programma restituisce sempre in uscita il suo stato (zero o diverso da zero) può prendere dei parametri in ingresso. E' quindi utile specificare le variabili

int argc, char *argv[]

da cui:

"int main (int argc, char *argv[])" invece di "void main ("

4) Usando al posto del ciclo while il "do-while" il codice risulta più leggibile e ben scritto. Infatti ti risparmi di riscrivere un inutile parte di codice.

5) La condizione che definisci nel ciclo while è sbagliata. La consegna dice che il programma termina quando viene inserito un numero minore o uguale a zero.

quindi dovrebbe essere while (a>0) non while (a>=0)


Credo che se lo scopo di questo forum è di aiutare le persone ad avvicinarsi all'informatica sia compito di chi aiuta controllare che le soluzioni fornite siano giuste.
Torna in alto Andare in basso
Visualizza il profilo
 

Programma in C che legge una sequenza di numeri e stampa la somma

Vedere l'argomento precedente Vedere l'argomento seguente Torna in alto 

 Argomenti simili

-
» Che cos'è una versione portatile (portable) di un programma
» Programma per generare numeri casuali - Random Number Generator
» Programma per montare video gratuitamente come Pinnacle Studio?
» Attivare in sequenza moduli relè con Arduino
» Estrattore per creare mod su Euro Truck Simulator 2
Pagina 1 di 1

Permessi di questa sezione del forum:Non puoi rispondere agli argomenti in questo forum
My Informatica :: Programmazione a 360° :: Tutto C, C++, C# e Objective-C :: Esempi e Sorgenti-