Massimo e minimo su n numeri C++

di il
3 risposte

Massimo e minimo su n numeri C++

Salve a tutti, ho un problema con questo programma. Premetto che sono all'inizio con l'uso delle funzioni e array. Il programma compila ma sbaglia (ancora non ho capito secondo quale logica) certe volte il massimo o il minimo. Per esempio scegliendo come numero su cui eseguire il programma "4" e usando come numeri "-9", "2", "0", "5" mi restituisce come massimo 5 e minimo 0. Spero mi possiate aiutare.
#include <iostream>
using namespace std; 

float max(float a, float b){
float mas; 
 if(a>=b)
  {mas=a;
  }
  else {
     mas=b;
  }
  return mas;
   }

float min(float a, float b){
   float m;
    if(a>=b)
  {m=b;
  }
  else 
  {m=a;
  }
  return m;
   }
   
int main () {
int k;
cout<<"inserisci numero di numeri di cui calcolare massimo e minimo"<<endl;
cin>>k;
float a[k];
for (int i=0; i<k; i++)
{cout<<"inserisci numero: "<<endl;
cin>>a[i];
}
float massimo=a[1], minimo=a[1];
for(int i=1; i<k; i++){
   massimo=max(massimo,a[i]);
   minimo=min(minimo,a[i]);
}
cout<<"il massimo e': "<<massimo<<endl;
cout<<"il minimo e': "<<minimo<<endl;
system ("pause");
return 0;
}

3 Risposte

Devi accedere o registrarti per scrivere nel forum
3 risposte