Programma in C

di il
12 risposte

Programma in C

Scusate ho iniziato a fare un progetto in C che che prende dei numeri interi e fa la somma tra loro appena arriva a 1000 fa la media ma a me viene sbagliato se avete idee di come farlo vi ringrazio.

12 Risposte

  • Re: Programma in C

    Senza codice è dura vedere dove sbagli
  • Re: Programma in C

    Prende dei numeri interi: scanf() per "prendere il numero"; variabile numerica per tenere il conto della quantita' di valori immessi e operatore ++.

    Fa la somma tra loro: variabile numerica (meglio se float o double) e operatore +

    Appena arriva a 1000: ciclo while/do/for con condizione d'uscita somma<=1000

    Fa la media: variabile contenente la somma diviso quantita' dei valori letti

    return 0;
  • Re: Programma in C

    Attenzione Aldo.. quasi sempre il problema sta nell'espressione usata nella divisione ovvero nei tipi usati ...
    Una cosa è dividere per 1000 e un'altra dividere per 1000.0
  • Re: Programma in C

    Sì, lo davo per scontato, visto che suggerivo di usare float o double per la somma. Comunque hai fatto bene a specificare.

    P.S. la divisione non è per mille, ma per la quantità dei valori immessi (che, ad esempio, può essere un unsigned int sottoposto a cast; oppure essere essa stessa un valore in virgola mobile).
  • Re: Programma in C

    AldoBaldo ha scritto:


    Fa la somma tra loro: variabile numerica (meglio se float o double) e operatore +
    Trattandosi di un compito, su questo non sarei del tutto d'accordo: dipende da come e cosa ha spiegato il professore.
    Quello che mi sento di suggerire è, qualsiasi sia la scelta, di giustificarla con un breve commento: magari non hai scelto la soluzione migliore ma hai usato la testa e ci hai provato, un buon professore apprezza!
  • Re: Programma in C

    Non ho capito il senso del tuo commento... me lo spieghi, per favore?
  • Re: Programma in C

    AldoBaldo ha scritto:


    Non ho capito il senso del tuo commento... me lo spieghi, per favore?
    Mi prendi in giro?
    Comincia con l'analisi logica... poi qua trovi i significati delle parole sconosciute http://www.garzantilinguistica.it
  • Re: Programma in C

    Epperò! Alla faccia della cortesia!

    Non ho capito perché dovrebbe richiedere una spiegazione la parte della mia precedente risposta che hai citato. Pare che un insegnante potrebbe considerare sconveniente impiegare una variabile float o double... a me sembra non ci sia niente di sconvolgente, visto che quando fai una media è assai probabile che venga fuori un risultato non intero. Tutto qui.
  • Re: Programma in C

    Scusate il disturbo ho provato a fare un programma in c che inserisce dei numeri interi e fa la somma tra loro appena arriva a 1000 fa la media e dopo aver fatto la media scrive quanti numeri erano pari e quanti erano dispari

    Il programma che ho scritto io è cosi:


    #include "stdafx.h"
    Int npari, ndispari, somma,media, ninteri;
    Int main(){

    Do{
    Printf(" il programma serve a fare la somma di numeri interi e quando la somma arriva a 1000 fa la media e infine scrive quanti numeri erano pari e quanti erano dispari");
    Scanf("%d", & ninteri);
    If(ninteri%2==0)
    ndispari + 1;
    npari + 1;
    Somma= somma + ninteri;
    While(somma<=1000)
    }
    Media= somma / (npari + ndispari);
    Printf("%d", & ndispari =);
    Printf("%d", & npari =);

    }


    So che è sicuramente sbagliato se qualcuno mi può dare una mano come aggiustarlo gliene sarei molto grato
    Grazie.
  • Re: Programma in C

    A parte l'algoritmo, devi rivedere la sintassi...

    Perché tutte queste maiuscole? Perché = nella scanf?

    Un aiuto è una cosa, sostituirsi al libro che dovresti leggere è un'altra storia.
  • Re: Programma in C

    Ha ragione Oregon. Non prendertela male, ma penso che sia controproducente aiutarti ora. Torna quando hai letto almeno le cose di base e se ti blocchi ti si aiuta volentieri
  • Re: Programma in C

    Ciao scusate posso provarci anche io e poi pubblicarlo ?
Devi accedere o registrarti per scrivere nel forum
12 risposte