przepisanie zawartości tablic

0

chce przepisać jedną zawartość tablicy do drugiej w odwrotnej kolejności, ale jest błąd.Wydaje mi się że w warunku wyjścia z pętli for, ale nie umiem sobie z tym poradzić. Proszę o pomoc

#include <iostream>
#include <cstdio>

using namespace std;

int main()
{
int n;
cin>>n;
int *T;
int *R;
T= new int[n];
R= new int[n];
int m;

for(int i=0; i<n; i++)
{
cin>>m;
T[i]=m;
}

for(int j=0; j<n; j++)
{
for(int i=n-1; i=0; i--)
{
R[j] =T[i];
}
}

//R[0]=T[2];
//R[1]=T[1];
//R[2]=T[0];

for(int j=0; j<n; j++)
{
cout<< R[j]<< endl;
}

    delete [] T;
    delete [] R;

}


 
0

Nie potrzebnie odpalasz dwie pętle jedna wewnątrz drugiej. Efekt jest taki, że wewnętrzna pętla wykonuje się wielokrotnie - z każdym obiegiem zewnętrznej pętli. To nie jest to Ci potrzeba. Użyj jednej pętli i odpowiednio oblicz indeksy.

cin>>m;
T[i]=m;
Można od razu:

cin>>T[i];
0

for(int i=n-1; i=0; i--)
{
R[j] =T[i];
}

W warunku nie masz porównania wartości tylko przypisanie wartości 0 do i.

0

ok, faktycznie, już działa

0

Dlaczego nie korzystasz ze standardowej biblioteki C++?

Nagłówki: algorithm i iterator.

reverse_copy(T, T + n, second);
copy(R, R + n, ostream_iterator<int>(cout, "\n"));

1 użytkowników online, w tym zalogowanych: 0, gości: 1