Programma sulla trasposizione di un vettore.

di Anonimizzato17585 il
5 risposte
Salve, ho provato a creare un programma in C++ la cui traccia è: Assegnato un vettore di interi di riempimento N, produrre la trasposizione del vettore. L'esempio è che se il vettore iniziale è composto dagli elementi:1 2 3 4 5,quello finale sarà: 5 4 3 2 1.
Ho provato a creare il programma e ad eseguirlo ma per l'ultimo elemento del nuovo vettore mi dà un elemento diverso da quello desiderato. Come mai? Cosa sbaglio?
Il programma è:
#include <iostream>

#define N 10
using namespace std;
int main()


{
int A[N],B[N];
for(int i=1;i<=N;i++) {
cout<<"A["<<i<<"]=";
cin>>A;
}
int i=N;
for(int j=1;j<=N;j++) {
B[j]=A;
i--;
}
cout<<"Il nuovo vettore è:"<<endl;
for(int j=1;j<=N;j++) {
cout<<"B["<<j<<"]="<<B[j]<<endl;
}
return 0;
}

5 Risposte

  • Occhio ... gli indici di un vettore sono compresi tra 0 e N-1
  • @ultrasound ... In questo modo lui non ha la possibilità di imparare dai propri errori correggendo il proprio codice in autonomia. Con il copia incolla del tuo codice lui non farà nessuno sforzo che è alla base dell'apprendimento ...
  • Se pongo gli indici tra 1 ed N non è la stessa cosa che porlo tra 0 ed N-1?
  • brux ha scritto:


    Se pongo gli indici tra 1 ed N non è la stessa cosa che porlo tra 0 ed N-1?
    No ... non è la stessa cosa!

    Il C prevede gli indici da 0 a N-1, nell'altro caso commetti un errore grave.
  • Capito, grazie mille!
Devi accedere o registrarti per scrivere nel forum
5 risposte