Media Corretta

di il
1 risposte

Media Corretta

Salve a tutti, io sono IL_PAKKO e sto imparando il c++. E' abbastanza difficile e ora mi trovo su un punto morto; devo fare questo esercizio ma non riesco a venirne a capo:
"""
data una sequenza di numeri calcolare la media togliendo il maggiore e il minore
"""
#include <iostream>

using namespace std;

int main() {
    
    int n1=1,n2=2,n3=3,n4=4,media;
    
    if (n1>n2){ 
       
       if(n1>n3){
       
                if (n1>n4){
                    media=(n2+n3+n4)/3; 
                    cout<<media;  
                    }
                else {
                     media=(n2+n3+n4)/3;
                     cout<<media;  
                     }
}
                     
}
         
    else if (n2>n1){
         
         else if (n2>n3){
         
              else if (n2>n4){
              
                   media=(n1+n3+n4)/3;
                   cout<<media;  
                   }
    
              else{
              
                  media=(n1+n3+n4)/3;
                  cout<<media;
                  }
}
                  
}  
    else if (n3>n1) {
    
         else if (n3>n2){
         
         
              else if (n3>n4) {
              
                   media=(n1+n2+n4)/3; 
                   cout<<media; 
                   } 
              else {
              
                   media=(n1+n2+n4)/3;
                   cout<<media; 
                   }
}
} 
                   
    else if (n4>n1) {
    
         else if (n4>n2){
         
              else if (n4>n3)}
              
                   media=(n1+n2+n3)/3;
                   cout<<media; 
                   } 
              
              else {
                  media=(n1+n2+n3)/3;
                  cout<<media; 
                  } 
}

}
         
    
    return 0;
           
}
Ragazzi vi prego, avrei dovuto farlo col ciclo, ma non ci arrivo. Disperato,

1 Risposte

  • Re: Media Corretta

    Ciao, prova a seguire questi passi:
    1. leggi una sequenza di numeri e la memorizzi in un array
    2. scandisci l'array e individui il valore minimo e quello massimo. Intanto che fai questo, fai anche la somma di tutti i valori
    3. sottrai dalla somma il valore minimo e quello massimo
    4. dividi il risultato per il numero degli elementi nell'array meno 2 (che sarebbero il minimo e il massimo che abbiamo scartato)

    Prova a scrivere un po' di codice, poi vediamo di sistemare gli eventuali errori.

    P.S. Trovare il minimo e il massimo in un array è un procedimento standard:
    - definisci il minimo e il massimo entrambi uguali al primo elemento dell'array
    - scorri l'array e
    --- se trovi un valore minore del minimo allora aggiorni il minimo
    --- se trovi un valore maggiore del massimo allora aggiorni il massimo
    - alla fine avrai i valori corretti
Devi accedere o registrarti per scrivere nel forum
1 risposte