Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    [C] Dati n numeri stampare il minimo

    salve ragazzi ho un problema in questo codice con la variabile min. Cosa devo aggiungere per far si che mi venga?
    codice:
    #include<stdio.h>
    #include<iostream>
    main()
    {
        int n;
        int dato;
        int c=0;
        int min=0;
        
        printf("quanti numeri vuoi inserire?");
        printf("\n");
        scanf("%d",&n);
          
        for(c=0;c<n;c++)
        {
          printf("inserisci n numeri");
          printf("\n");
          scanf("%d",&dato);
          if(n<min)
          {
            min=n;     
          }
        }
        {
          printf("il minimo e' : %d",min);
          printf("\n");
        }
        system("pause");
    }

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    131
    non puoi inizializzare min a 0.. altrimenti devi per forza inserire un valore minore di zero perché il suo valore venga cambiato.

    O lo inizializzi con il primo valore inserito oppure con il numero più grande memorizzabile in un int

  3. #3
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    Inoltre:
    codice:
    if(n<min)
    dovrebbe essere
    codice:
    if(dato<min)
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  4. #4
    grazie mille!! modificandolo come mi hai consigliato tu mi è venuto l'ho fatto così

    codice:
    #include<stdio.h>
    #include<iostream>
    main()
    {
        int n;
        int dato;
        int c=0;
        int min=n;
        
        printf("quanti numeri vuoi inserire?");
        printf("\n");
        scanf("%d",&n);
          
        for(c=0;c<n;c++)
        {
          printf("inserisci un numero");
          printf("\n");
          scanf("%d",&dato);
          if(dato<min)
          {
            min=dato;     
          }
        }
        {
          printf("il minimo e' : %d",min);
          printf("\n");
        }
        system("pause");
    }

  5. #5
    ringrazio entrambi @scara95 ti ho preceduto di pochi secondi perchè già l'avevo modificata la if però ti ringrazio lo stesso

  6. #6

    Moderazione

    Tip: per evitare che il codice perda l'indentazione, includilo nei tag [code] ... [/code]; ora sistemo io.
    Amaro C++, il gusto pieno dell'undefined behavior.

  7. #7

    Re: Moderazione

    Originariamente inviato da MItaly
    Tip: per evitare che il codice perda l'indentazione, includilo nei tag [code] ... [/code]; ora sistemo io.
    ok grazie

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    131

    Re: Re: Moderazione

    attento che è sbagliato così!
    n non ha ancora un valore quando lo usi per inizializzare min

  9. #9
    Utente di HTML.it L'avatar di Scara95
    Registrato dal
    Jul 2009
    residenza
    Zimella (VR)
    Messaggi
    2,589
    codice:
    //...
    #include <limits.h>
    //...
    int min = INT_MAX;
    //...
    "Quid enim est, quod contra vim sine vi fieri possit?" - Cicerone, Ad Familiares

  10. #10
    Originariamente inviato da Scara95
    codice:
    //...
    #include <limits.h>
    //...
    int min = INT_MAX;
    //...
    Questa è una possibilità, ma in genere la cosa più elegante è semplicemente inizializzare min con il primo valore inserito.
    Amaro C++, il gusto pieno dell'undefined behavior.

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 © 2026 vBulletin Solutions, Inc. All rights reserved.