In output ho dei valori strani...che ho sbagliato?...
codice:
/*
Siano dati in ingresso, da file o da tastiera, il riempimento n ed i valori di due vettori V1 e V2 di interi.
Sia dato inoltre un ulteriore intero k.
Si scriva un programma che verifichi, per ogni coppia di elementi omologhi di V1 e V2, se la loro somma sia maggiore di k.
In caso affermativo, si copi il valore della loro somma in un nuovo vettore V3.
Si strutturi il programma in opportuni sottoprogrammi.
Esempio:
INPUT: n = 6 V1 = 7 15 19 12 2 6 V2 = 2 9 7 25 8 6 k = 11
OUTPUT: V3 = 24 26 37 12
*/
#include<iostream>
using namespace std;
#include<stdlib.h>
//Prototipi delle funzioni
void input(int &n,int &k,int v1[],int v2[]);
void somma(int n,int k,int v1[],int v2[],int v3[]);
void output(int n, int v3[]);
int main()
{
//Dichisrazioni variabili
int n,k;
int v1[100];
int v2[100];
int v3[100];
//Chiamate delle funzioni
input(n,k,v1,v2);
somma(n,k,v1,v2,v3);
output(n,v3);
cout<<"\n\n";
system("PAUSE");
return 0;
}
void input(int &n,int &k,int v1[],int v2[])
{
int i;
int j;
cout<<"Assegna valore intero ad n elementi dei vettori\n";
cin>>n;
cout<<"Assegna "<<n<<" valori interi al vettore V1\n";
for(i=0;i<n;i++)
{
cin>>v1[i];
}
cout<<"Assegna "<<n<<" valori interi al vettore V2\n";
for(i=0;i<n;i++)
{
cin>>v2[i];
}
cout<<"Assegna valore intero a k\n";
cin>>k;
}
void somma(int n,int k,int v1[],int v2[],int v3[])
{
int i;
int som[100];
for(i=0;i<n;i++)
{
som[i] = v1[i]+ v2[i];
}
for(i=0;i<n;i++)
{
if(som[i]>k)
{
v3[i] = som[i];
}
}
}
void output(int n, int v3[])
{
int i;
cout<<"\nGli elementi del nuovo vettore v3 sono\n";
for(i=0;i<n;i++)
{
cout<<v3[i]<<"\n";
}
}