Newsgroup: it.comp.lang.c
Titolo: quesito

Salve a tutti!
devo risolvere questo quesito
scrivere un programma in grado di determinare il piu' piccolo di una 
serie 5 interi inseriti
io avevo pensato di creare 3 variabili
numeroInserito
MAX=0
MIN=0
solo che cosi' non va'....
perche' se numeroInserito e' piu' grande di MAX allora io assegno a 
MIN=MAX e MAX=numeroInserito
quindi
se inserisco 2
2>MAX
quindi MAX=2 e MIN=0
se inserisco
3>MAX
MIN diventa 2 e MAX=3
ma se continuo perdo il valore piu' piccolo
e cosi' se ho inserito
7 5 6 8 9
alla fine risulta 8 il piu' piccolo
attendo suggerimenti :)
grazie

MIN=0
Ma non era solo il minimo che dovevi trovare? Comunque, se devi trovare
anche il massimo, è la stessa cosa di prima e quindi sono giuste 3
variabili: una per il numero inserito, una per il min e una per il max; e
infine anche qui usi una struttura condizionale.
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Forse ti può essere più utile questo suggerimento: devi assegnare il primo
numero inserito sia a min che a max.


ciao
ho provato cosi' e funziona, c'e' un modo piu' elegante e coinciso per 
ottenere lo stesso risultato?
grazie!
#include <stdio.h>
int main(void);
int main(void)
{
    int numero,numero2,minore,i;
    scanf("%d",&numero);
    minore=numero;
    for(i=1;i<=4;i++) {
         scanf("%d",&numero2);
         if(numero2<minore){
         minore=numero2;
         }
    }
    printf("\n il minore e': %d",minore);
return 0;


 scanf("%d",&numero2);
Non c'è bisogno della variabile 'numero2', basta la 'numero'. Pensaci un pò.


 > scanf("%d",&numero2);
Ora che ci penso potresti anche assegnare il primo valore a minore
direttamente nella scanf().
Ma, come regola generale, ti consiglio di non prendere l'abitudine a farli
troppo concisi, perchè li rende illeggibili. Tieni sempre in massima
considerazione la leggibilità del codice e impara a scrivere leggibile, a
meno che non ti stai allenando per le IOCCC.


versione finale!
grazie!
#include <stdio.h>
int main(void)
{
    int numero,minore,i;
    scanf("%d",&minore);
    for(i=1;i<=4;i++) {
         scanf("%d",&numero);
         if(numero<minore){
         minore=numero;


 scanf("%d",&minore);
NO! Versione finale!
#include <stdio.h>
int main(void)
{
   int i, num, min;
   printf("\nNum: ");
   scanf("%d", &num); /* &num! _NON_ &min! */
   min = num;
   for (i = 1; i <= 4; i++) { /* Separa gli operandi dagli operatori di uno
spazio */
      printf("Num: ");
      scanf("%d", &num);
      if (num < min)
         min = num;
   }
   printf("\nMinore: %d\n\n", min);
   return 0;
}
La leggibilità! ;)


 spazio */
Ovviamente il testo te lo devi giostrare a seconda della larghezza della
pagina. Qui non riesco a regolarmi. :)


   min = num;
Il codice originale:
scanf("%d",&minore);
for(i=1;i<=4;i++) {
        scanf("%d",&numero);
e` corretto. /numero/ viene inizializzato prima del confronto, non c'e`
alcun problema ad usare /minore/ nella prima scanf (tanto e` gia` uno
special case).
Luca
-- 
Home: 
http://kronoz.cjb.net
Porc i' mond che cio' sott i piedi!
V. Catozzo

 special case).
Si lo so, in una reply precedente glielo avevo suggerito io... :)
Intendevo dire che, secondo me, non dovrebbe prendere quest'abitudine di
rendere tutto eccessivamento conciso, perchè va contro la leggibilità, che
personalmente è una delle cose più importanti nella stesura di un buon
codice.


grazie a tutti!