Esercizio sugli array

di il
5 risposte

Esercizio sugli array

Salve sto facendo questo esercizio , solo che al momemnto dell'esecuzione ci sono dei problemi , come al solito......

Scrivere un algoritmo in C che , dato un array di 30 elementi , stampi a video
la distanza in valore assoluto dei componenti dell'array dalla propria media
#include <stdio.h>
#include <stdlib.h>

int main (){
    
    int i , x[30], somma;
    double media , distanza;
    somma=0;
    distanza =0;
    
    for(i=0 ; i<30 ; i++){ 
            scanf("%d" , &x[i]);   
            somma = somma + x[i];
            }
            
            media = somma / 30.0;
           
           for (i=1 ; i<30 ; i++) { 
               distanza = x[i] - media;
               
               if (distanza <0){
                            distanza= distanza*(-1);}
                            printf ("%fl" , distanza);
                            }
                            system ("pause");
                            return 0;
                            }
cosa sbaglio??? grazie in anticipo

5 Risposte

  • Re: Esercizio sugli array

    Che problemi hai in dettaglio?
  • Re: Esercizio sugli array

    Ad una rapida occhiata, nel secondo ciclo for devi partire da i = 0, e la chiamata a printf per stampare la distanza deve stare fuori dall'if
  • Re: Esercizio sugli array

    oregon ha scritto:


    Che problemi hai in dettaglio?

    in pratica il programma non funzionava , dopo aver messo i numeri , mi venivano risultati strani...
    Ad una rapida occhiata, nel secondo ciclo for devi partire da i = 0, e la chiamata a printf per stampare la distanza deve stare fuori dall'if
    grazie , sembra funzionare ora ! o meglio mi da' almeno un risultato normale!
    #include <stdio.h>
    #include <stdlib.h>
    
    int main (){
        
        int i , x[30], somma;
        double media , distanza;
        somma=0;
        distanza =0;
        
        for(i=0 ; i<30 ; i++){ 
                scanf("%d" , &x[i]);   
                somma = somma + x[i];
                }
                
                media = somma / 30.0;
               
               for (i=0 ; i<30 ; i++) { 
                   distanza = x[i] - media;
                   
                   if (distanza <0){
                                distanza= distanza*(-1);}
                                }
                                printf ("%fl\n" , distanza);
                                system ("pause");
                                return 0;
                                }
  • Re: Esercizio sugli array

    Controlla anche questo

    %fl
  • Re: Esercizio sugli array

    oregon ha scritto:


    Controlla anche questo

    %fl
    ho sbagliato a scrive dovevo mettere %lf!grazie
Devi accedere o registrarti per scrivere nel forum
5 risposte