Пусть a и b - два целых массива одинаковой длины. Мы говорим, что они “эквивалентны сдвигу”, если массив a можно сдвинуть вправо, чтобы создать массив b.
эквивалент bool (int s [], int n[], int c){
for (int p=0 ; p< c; p++){
for (int i=0; i< c; i++){
если (s[i]==n[i+p%c])
вернуть true;
}
}
возвращать false;
}
#include <iostream>
использование пространства имен std;
тап_п (){
int A [5];
int B[5];
for (int i=0; i< 5; i++){
cout << " для массива A введите 5 чисел ";
cin>> A[i];
}
for (int i=0; i< 5; i++){
cout << " для массива B введите 5 чисел ";
cin>> B[i];
}
если (эквивалент (A, B, 5))
cout<< " это правильно";
еще{
cout< & lt; " это неправильно";
}
возвращает 0;
}
Что я уже пробовал:
хорошо, дело в том, что каждый раз, когда я помещаю другой набор массивов, он проходит через оператор if один раз. я имею в виду, что один раз, если утверждение истинно, оно возвращает true. однако я хочу, чтобы оператор if выполнялся n раз, а затем возвращал мне true или false.