Дано масиви дійсних чисел А(N), В(М), масив А впорядковано за зростанням. Надати i-му елементу масиву С(М) значення kі - номер елемента В[і] в масиві А (Застосувати пошук).
С++
Ответы
#include <iostream>
using namespace std;
int main() {
int N, M;
cout << "Enter the size of the array A: ";
cin >> N;
cout << "Enter the size of the array B: ";
cin >> M;
int A[N], B[M], C[M];
cout << "Enter elements of array A: " << endl;
for (int i = 0; i < N; i++) {
cin >> A[i];
}
cout << "Enter elements of array B: " << endl;
for (int i = 0; i < M; i++) {
cin >> B[i];
}
for (int i = 0; i < M; i++) { // пошук елемента В[і] в масиві А та запис результату у масив C.
int k = 0, j = 0, flag = 0; // k - номер елемента, j - індекс, flag - флаг.
while (j < N && flag == 0) { // якщо j < N та flag == 0, то...
if (B[i] == A[j]) { // ...якщо B[i] == A[j], то...
k = j + 1; // ...k = j + 1.
flag++; // ...flag++.
} else { // ...в іншому випадку...
j++; // ...j++.
}
}
C[i] = k; // ...записування k-го елементу в C.
}
cout << endl << "Array C:" << endl;; //виведення C.
for (int i = 0 ; i < M ; ++i) {
cout << C[i] << ' ' ;
}
return 0 ;
}