ciao ragazzi, è da poco che studio per fondamenti di informatica e ho riscontrato un errore che non riesco a risolvere pur sapendo che si tratta di una cosa banale. in poche parole le funzioni (che ho scritto in una libreira .h) di somma e media non mi danno il giusto risultato. via allego il codice qui sotto e grazie in anticipo!
main:
codice:
#include <cstdlib>
#include <iostream>
#include <stdio.h>
#include "newfile.h"
using namespace std;
/*
*
*/
extern const int maxr=10;
extern const int maxc=10;
int main()
{
const int nmax=10;
int numeri [nmax];
int matr[maxr][maxc];
int r,c,rie;
do
{
cout<<"quanti valori vuoi immettere?\n";
cin>>rie;
}while(rie>nmax);
inserisci_vet(numeri,rie);
stampa_vet (numeri,rie);
cout<<"la media totale del vettore e': "<<media (numeri,rie)<<endl;
cout<<"la somma totale del vettore e': "<<somma (numeri,rie)<<endl;
inserisci_righecolonne(r,c);
inserisci_matrice(matr,r,c);
stampa_matrice (matr,r,c);
system ("pause");
return 0;
}
funzioni:
codice:
#include <cstdlib>
#include <iostream>
#include <stdio.h>
using namespace std;
extern const int maxr;
extern const int maxc;
void inserisci_vet (int array [],int riempimento)
{
cout<<"inserisci i tuoi numeri\n";
for (int i=0;i<riempimento;i++)
{
cout<<"v["<<i<<"]"<<": ";
cin>>array[i];
}
}
void stampa_vet (int array [], int riempimento)
{
cout<<"i numeri contenuti nell'array attualmente sono:\n";
for (int i=0;i<riempimento;i++)
{
cout<<"v["<<i<<"]"<<": "<<array[i]<<endl;
}
}
float media (int array[],int riempimento)
{
int s=0;
for (int i=0;i<=riempimento;i++)
{
s+=array[i];
}
float m=s/riempimento;
return m;
}
int somma (int array[],int riempimento)
{
int s=0;
for (int i=0;i<=riempimento;i++)
{
s+=array[i];
}
return s;
}
void inserisci_righecolonne(int &r, int &c)
{
cout<<"inserisci il numero di righe:\n";
cin>>r;
cout<<"inserisci il numero di colonne:\n";
cin>>c;
}
void inserisci_matrice(int matrice[][10],int righe,int colonne)
{
cout<< "Inserisci i valori della matrice: " << endl;
for (int i=0; i<righe; i++)
{
cout<<"Riga numero " << i+1 << ":" << endl;
for (int j=0; j<colonne; j++)
{
cout<<"matr["<<i<<"]["<<j<<"]: ";
cin >>matrice[i][j];
}
}
}
void stampa_matrice (int matrice[][10],int righe,int colonne)
{
cout<< "la matrice da te inserita e': " << endl;
for (int i=0; i<righe; i++)
{
cout<<endl;
for (int j=0; j<colonne; j++)
{
cout<<matrice[i][j]<<endl;
}
}
}