Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2011
    Messaggi
    17

    C++,problemi con il double

    /*Esercizio 3
    Siano assegnati in ingresso, da tastiera, un vettore di double V ed il suo riempimento r. Si scriva un
    programma che calcoli la media degli elementi di V e conti il numero num di elementi il cui valore
    è inferiore a tale media. Si stampino quindi il vettore V, la media calcolata ed il risultato del
    conteggio.
    Il programma deve essere articolato in funzioni.
    Esempi
    INPUT:
    r = 7
    V = 2.5 5.8 2.0 4.3 7.0 9.0 4.1
    OUTPUT:
    media = 4.957143
    num = 4
    INPUT:
    r = 4
    V = 5.3 1.2 8.4 7.8
    OUTPUT:
    media = 5.675
    num = 2*/
    alla funzione calcolo della media mi da come errore 39 I:\Elementi di cannot convert `double*' to `double' for argument `3' to ` void calcolomedia(double, int, double, double)'
    non so se questa cosa dipende da una conoscenza lacunosa del double oppure ho fatto qualche errore stupido,cmq sta di fatto che non capisco come risolverlo.....
    #include <iostream>
    #include <stdlib.h>

    using namespace std;
    void input (int &r,double V[]);
    void calcolomedia(double s,int r,const double V,double media);
    void conta(int r,const double V[],double media,int &nmag);
    void stampa (int r,double V[],double media,int nmag);
    int main(int argc, char *argv[])
    {
    double V[150];
    int r;
    double s;
    double media;
    int nmag;

    input(r,V);
    calcolomedia(s,r,V,media);
    conta(r,V,media,nmag);
    stampa(r,V,media,nmag);

    system("PAUSE");
    return 0;
    }
    void input (int &r,double V[]){
    int i;
    cout<<"inserisci riempimento"<<endl;
    cin>>r;
    for(i=0;i<r;i++){
    cout<<"inserisci valore numero"i+1<<endl;
    cin>>V[i];
    }
    }
    int calcolomedia(double s,int r,const double V,double media)
    {int i;
    s=0;
    for(i=0;i<r;i++){
    s=s+V[i];
    }
    media=s%i;
    return media;
    }
    void conta(int r,const double V[],double media,int &nmag)
    int i;{
    nmag=0;
    for(i=0;i<r;i++){
    if(V[i]>media){
    nmag=nmag+1;
    }
    }
    }
    void stampa (int r,double V[],double media,int nmag){
    int i;
    for(i=0;i<r;i++){
    cout<<"l'array è"<<endl;
    cin>>V[i]>>endl;
    }
    cout<<"il valore medio è"<<media<<endl;
    cout<<"i valori maggiori della media sono"<<nmag<<endl;
    }

  2. #2
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,466

    Moderazione

    Usa il tag [CODE] come ti è già stato suggerito più volte per formattare il codice, altrimenti è impossibile distinguerlo dal resto.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.