Salve forum , il proff telematicamente ha svolto la seguente traccia d'esame , io non ho capito bene il ragionamento che c'è dietro lo spostamento , qualcuno gentilmente potrebbe darmi qualche chiarimento? poi non capisco perchè scrivrndola su dev mi da [error] id returned 1 exit status.
la traccia è questa :
Seguendo i principi della programmazione strutturata e della modularità, si sviluppi un programma in C++che:
-richieda all'utente di inserire da tastiera un vettore di 10 numeri interi;
- richieda all'utente di inserire da tastiera un carattere che puo' assumere valore "s" o "d";
-in un sottoprogramma si effettui lo spostamento (shift) a sinistra o a destra di una posizione del contenuto del vettore a seconda del carattere inserito;
-visualizzi a video i risultati.
vettori.h
#define N 10
typedef int vettore [N];
void spostamento (vettore,vettore,char);
vettori.ccp
#include "vettori.h"
#include <iostream>
using namespace std;
void spostamento (vettore p,vettore v,char lettera){
if (lettera=='s'){
p[N-1]=v[0];
for(int i=0;i<N-1;i++) {
p[i]=v[i+1];
}
}
else{
p[0]=v[N-1];
for(int i=0;i<N;i++) {
p[i]=v[i-1];
}
}
}
main.cpp
#include "vettori.h"
#include <iostream>
using namespace std;
int main() {
char lettera;
vettore p,v;
for(int i=0;i<N;i++) {
cout<<"v["<<i<<"]=";
cin>>v[i];
}
do {cout<<" Inserire lettera:";
cin>> lettera;
} while(lettera !='s'&& lettera!='d');
spostamento(p,v,lettera);
cout<<"Il nuovo vettore e':"<<endl;
for(int i=0;i<N;i++) {
cout<<"p["<<i<<"]="<<p[i]<<endl;
}
return 0;
}