次のような2つのリストを出力するプログラムがあります。基本的には同じリストですが、逆ですが、最初は機能しますが、奇妙な出力が出力されます。これも以下に示します。
0123456789
9876543210
ただし、プログラムから得られる実際の出力は次のとおりです。
私のコードの何が問題なのか誰か教えてください。なぜこの出力が得られるのかわかりません。
void createFile(){
ofstream myfile;
myfile.open ("TEST1.txt");
for(int x = 0; x < 10; x++){
myfile << x << "\n";
}
myfile.close();
}
void popArray(int array1[]){
ifstream infile("TEST1.txt");
int x;
while(infile >> array1[x]){
cout << array1[x];
}
}
void reverseList(int array2[]){
for(int x = 9; x > -1; x--){
cout << setw(2) << array2[x];
}
}
void checkLists(int array1[], int array2[], int sizeOfArray){
for(int x = array1[1]; x < sizeOfArray; x++){
for(int y = array2[1]; x < sizeOfArray; x++){
if(x == y)
cout << "Palindrome" << endl;
else{
cout << "Not" << endl;
}
}
}
}
int main()
{
int array1[10];
int array2[10];
createFile();
popArray(array1);
cout << "\n";
reverseList(array1);
cout << "\n";
checkLists(array1, array2, 10);
}