Salve a tutti ragazzi!
Sono nuovo del forum e da poco avvicinato al fantastico mondo della programmazione grazie alla vostra guida sul C++
Come compilatore utilizzo il comodo Dev-C++ e sto cercando di scrivere un semplice programmino che mi permetta:
-l'inserimento da tastiera di due vettori v1 e v2.
-la stampa a video dei lettori v1 e v2.
-una domanda di controllo che chieda se voglio copiare il vettore v2 nel vettore v1.
-l'uscita in caso di risposta negativa e la stampa a video del nuovo vettore v1 in caso di risposta affermativa.
Il programma viene compilato senza apparenti errori, ma dopo l'inserimento dei 2 vettori da tastiera non capisco perchè 1)non me li stampa a video e 2)perchè il ciclo do-while che ho utilizzato per la domanda non termini ma si riproduca all'infinito.
Sono una schiappa, ma mi piacerebbe imparare.
Di seguito il piccolo programma che ho compilato:
codice:
* Programma che legge un vettore v1 da tastiera
* e ne effettua la copia in un altro vettore v2
* stampando quest'ultimo a video
#include <cstdlib>
#include <iostream>
#define MAX 10
using namespace std;
typedef int vettore[MAX];
void leggiVet(vettore x,int& y);
void stampaVet(vettore x, int& y);
void copyVet(vettore x, int& r1, vettore z, int& r2);
int main()
{
vettore v1, v2;
int riemp1, riemp2;
char s, n, risposta;
cout<<"Inserire il riempimento del primo vettore: ";
cin>>riemp1;
leggiVet(v1, riemp1);
cout<<"\nInserre il riempimento del secondo vettore: ";
cin>>riemp2;
leggiVet(v2, riemp2);
system("CLS");
cout<<"\nIl primo vettore creato e' cosi' composto: [ ";
stampaVet(v1, riemp1);
cout<<"\nIl secondo vettore creato e' cosi' composto: [ ";
stampaVet(v2, riemp2);
do{
system("CLS");
cout<<"\nSi desidera copiare il secondo vettore nel primo?s/n"<<endl;
cin>>risposta;
}while(risposta!='s' || risposta!='n');
if(risposta=='s'){
copyVet(v1, riemp1, v2, riemp2);
stampaVet(v1, riemp1);
}
}
void leggiVet(vettore x, int& y)
{
cout<<"Inserire i valori di questo vettore:\n";
for(int i=0; i<y; i++){
cin>>x[i];
}
}
void stampaVet(vettore x, int& y)
{
for(int i=0; i<y; i++){
cout<<x[i]<<" ";
}
cout<<"]\n";
}
void copyVet(vettore x, int& r1, vettore z, int& r2)
{
r1=r2;
for(int i=0; i<r1; i++){
x[i]=z[i];
}
}