Effettivamente non dovremmo dare soluzioni ma qui sto leggendo cose strane;
in C++ esiste la libreria
climits che contiene i valori minimi e massimi per i tipi usati; supponendo di usare gli
int, non ha senso prima leggere e poi assegnare, si fa una preassegnazione in modo "furbo": al
minimo si assegna direttamente il
massimo int possibile, invece al massimo si associa il minimo int possibile (in questo modo è sicuro al 100% che verranno cambiati alla prima lettura;
dopodiché si fa un ciclo in base a quanti interi si vogliono inserire (3 nella versione "grezza", n in generale), quindi bastano 3, massimo 4 variabili (pure di meno, ma ricerchiamo la chiarezza).
E i test da fare sono solo 2 (per ogni numero letto ovviamente), come ha già evidenziato
@rctimelines
Da notare che listati che ho postato SEMBRANO più lunghi SOLO PERCHE' ho messo diverse istruzioni di stampa e lettura per "frenare" la console di comando e dare il tempo di lèggere i risultati prima che si chiuda.
Versione brutta solo per 3 numeri:
Codice:
#include <iostream>
#include <climits> // limiti per costanti numeriche
using namespace std;
int main() {
int min=INT_MAX, max=INT_MIN, temp; // ...in modo che min/max saranno cambiati
for(int i=1; i<4; i++){
cout << "\nInserisci il numero " << i << " --> ";
cin >> temp;
if(temp<min) min = temp;
if(temp>max) max = temp;
}
cout << "\n\nMinimo = " << min;
cout << "\nMassimo = " << max << endl;
cout << "\n\Inserisci un numero e poi premi INVIO per terminare --> "; // solo per leggere l'output
cin >> temp;
return 0;
}
Vesrsione per n numeri (n dato in input dall'utente):
Codice:
#include <iostream>
#include <climits> // limiti per costanti numeriche
using namespace std;
int main() {
int min=INT_MAX, max=INT_MIN, temp; // ...in modo che min/max saranno cambiati
unsigned int n = 1; // quanti numeri
cout << "\nQuanti numeri vuoi inserire? --> ";
cin >> n; // supposto >0
for(unsigned int i=1; i<=n; i++){
cout << "\nInserisci il numero " << i << " --> ";
cin >> temp;
if(temp<min) min = temp;
if(temp>max) max = temp;
}
cout << "\n\nMinimo = " << min;
cout << "\nMassimo = " << max << endl;
cout << "\n\Inserisci un numero e poi premi INVIO per terminare --> "; // solo per leggere l'output
cin >> n;
return 0;
}