Воспользуемся расширенной записью числа 87=an²+bn+2 → an²+bn-85=0 Известно, что если многочлен с целочисленными коэффициентами имеет хотя бы один вещественный корень, то он находится среди делителей свободного члена. Нас интересуют только натуральные делители, большие 2, поскольку n - основание системы счисления и в этой системе имеется цифра 2. 85 = 5 × 17. Число 17 не подходит, потому что 17>10 и двухзначное десятичное число в системе счисления с основанием, большим 10, не может иметь в записи больше двух знаков. Следовательно, n=5.
Для проверки переводим 87 в систему счисления по основанию 5. 87 / 5 = 17, остаток 2 17 / 5 = 3, остаток 2 3 / 5 = 0, остаток 3. Выписываем остатки в обратном порядке: 322 87₁₀ = 322₅ - в числе три разряда и оно оканчивается двойкой.
1) var A, B: array[1..25] of integer; i, x: integer; begin writeln('введите элементы массива A: '); for i := 1 to 25 do begin read(A[i]); if A[i] mod 3 = 0 then begin x := x + 1; B[x] := A[i]; end; end; write('элементы массива A, кратные трём: '); for i := 1 to x do begin write(B[i], ' '); end; end.
2) var A, B, C: array[1..10000] of integer; i, n, x: integer; begin writeln('введите размеры обоих массивов: '); read(n); write('введите элементы массива A: '); for i := 1 to n do begin x := x + 1; read(A[i]); end; write('введите элементы массива B: '); for i := 1 to n do begin read(B[i]); end; write('элементы массива C: '); for i := 1 to x do begin C[i] := A[i]; write(C[i], ' '); C[i] := B[i]; write(C[i], ' '); end; end.
#define N 8
int A;
void main(void)
{
int i, Sum =0;
float check;
for(i = 0, i<N, i++) {
printf ("\nВведите элемент номер %d", i);
scanf("%d", &A);
check = A/6.0
if ((int)check == A%6) Sum+=A;
}
printf ("Сумма элементов, кратных 6 равна %d", Sum);
}