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"; } }

Rispondi quotando