Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2008
    Messaggi
    3

    [C] ricerca del minimo, del massimo e stampa la media

    Ragazzi scusatemi se vi disturbo, ma ho un problema con un programma in C.

    Dovrei scrivere un programma che mi prende in input n int. Devo stampare il valore minimo, il massimo e la media.

    quando vado a complilare il mio programma non mi da errori sintattici, quando lo eseguo mi fa inserire all'infinito dei numeri da tastiera.

    Ecco il codice:

    [CODE]#include <stdio.h>

    int main(void)
    {
    int n=-1, max=-1, min=-1, sum=0, counter=0;
    scanf("%d", &n);
    max=min=n;
    while(n>=0){
    if (n<min){
    min=n;
    }else
    if (n>max){
    max=n;
    }
    sum+=n;
    counter++;
    scanf("%d", &n);
    }
    if (counter>0){
    printf("La media è %.2f\n", (float)sum/counter);
    }else{
    printf("Non hai inserito nessun numero");
    }
    printf("Il minimo è %d e il mssimo è %d", min, max);


    return 0;
    }[/ CODE]

    Vi ringrazio in anticipo per il vostro aiuto.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Usi la variabile n all'inizio per sapere quanti valori inserire, ma la usi anche per inserire i valori, e questo e' sbagliato.

    Dopo aver inserito n, nel ciclo while inserisci i valori usando un'altra variabile e decrementa n ad ogni giro.

    P.S. I tag CODE non sono corretti ...
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3

    ricerca del numero massimo

    Un saluto a tutti,

    sto imparando il C, cominciando dalle basi. Un esercizio prevede la ricerca del numero massimo prendendo in input tre interi, ma non riesco a farlo funzionare. La logica che ho usato per scrivere il programma è la seguente: il numero massimo è sempre quello che diviso per gli altri numeri del gruppo dà come risultato un numero superiore a 1, quindi il programma prima effettua tutte le possibili divisioni fra i 3 interi, e poi confronta i sei risultati per vedere quali sono superiori a 1.

    codice:
    #include <stdio.h>
    
    int main ()
    
    {
    
       int x, y, z;
       float intermedio_1, intermedio_2, intermedio_3, intermedio_4, intermedio_5, intermedio_6;
       
       printf ("Immettere tre interi:");
       scanf ("%d%d%d", &x, &y, &z);
    
       intermedio_1 = x / y;
       intermedio_2 = x / z;
       intermedio_3 = y / x;
       intermedio_4 = y / z;
       intermedio_5 = z / x;
       intermedio_6 = z / y;
    
       if ( intermedio_1 > 1 ) {
          if ( intermedio_2 > 1 ) {
             printf ("%d è il numero maggiore\n", x);
    }
    }
    
       if ( intermedio_3 > 1 ) {
          if ( intermedio_4 > 1 ) {
             printf ("%d è il numero maggiore\n", y);
    }
    }
    
       if ( intermedio_5 > 1 ) {
          if ( intermedio_6 > 1 ) {
             printf ("%d è il numero maggiore\n", z);
    }
    }
    
       return 0;
    
    }
    Grazie dell'aiuto - Daniele

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,462
    Scusa Daniele, ma adesso in questo thread abbiamo due programmi e due problematiche diverse.

    Perche' non aprivi una tua discussione (come prevede il regolamento, fra l'altro)?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  5. #5
    Chiedo scusa, lo faccio subito. Ho agito così perchè mi sembrava inutile aprire un'altra discussione, dal momento che bene o male si tratta di un argomento simile.

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.