добавляйте подобные задания в раздел Информатика. Там оно найдет решение гораздо быстрее.
uses crt; var a:array[1..100] of integer; n,i,p,q,pr,w,s:integer; begin clrscr; randomize; pr:=1; w:=1; write('p='); read(p); write('q='); read(q); write('n='); read(n);
clrscr;
writeln('Исходный массив: '); for n:=1 to n do begin a[n]:=random(100)-50; s:=s+a[n];
write(a[n],' '); end; w:=2*sqr(s);
writeln; writeln('Новый массив:'); for n:=1 to n do begin if (abs(a[n]) mod p =0) and (a[n]<>0) then pr:=pr*a[n]; if (a[n] mod p=q)then a[n]:=0; write(a[n],' '); end; writeln;
writeln('Значение выражения: ',w); write('Произведение элементов массива, кратных ',p,': ',pr); end.
Сперва заметим, что E = 1, так как сумма двух четырёхзначных чисел меньше 20000. F ≠ 2 (так как A + E ≤ 10) из чего F = 0. Если A = 8, то в разряд "A + E" нужно сделать перенос, тогда B = 9 и B + 0 + 1 (перенос) = 10, но тогда C = 0, чего не может быть. Значит, A = 9. Посмотрим, что получилось:
9BCD + 10GB = 10CBH
B + 1 (перенос, так как B ≠ C) = C
Если в разряде "C + B" нет переноса, то:
G + C = 10 + B
Отняв B + 1 = C, получаем G = 9, чего не может быть. Тогда перенос был, следовательно:
G + C + 1 = 10 + B
Теперь G = 8. Остались цифры 2, 3, 4, 5, 6, 7.
D + B = 10 + H
Заменив B на C - 1, получаем:
D + C = 11 + H
Минимальное H равно 2, максимальные D и C равны 6 и 7, но тогда, 6 + 7 = 11 + 2, следовательно, H = 2. Так как C = B + 1, то B и C - два последовательных числа и C ≠ 7 (иначе D = B = 6), из чего C = 6, B = 5, D = 7. Получилось:
добавляйте подобные задания в раздел Информатика. Там оно найдет решение гораздо быстрее.
uses crt;
var a:array[1..100] of integer;
n,i,p,q,pr,w,s:integer;
begin
clrscr;
randomize;
pr:=1; w:=1;
write('p='); read(p);
write('q='); read(q);
write('n='); read(n);
clrscr;
writeln('Исходный массив: ');
for n:=1 to n do
begin
a[n]:=random(100)-50;
s:=s+a[n];
write(a[n],' ');
end;
w:=2*sqr(s);
writeln;
writeln('Новый массив:');
for n:=1 to n do
begin
if (abs(a[n]) mod p =0) and (a[n]<>0) then pr:=pr*a[n];
if (a[n] mod p=q)then a[n]:=0;
write(a[n],' ');
end;
writeln;
writeln('Значение выражения: ',w);
write('Произведение элементов массива, кратных ',p,': ',pr);
end.
Сперва заметим, что E = 1, так как сумма двух четырёхзначных чисел меньше 20000. F ≠ 2 (так как A + E ≤ 10) из чего F = 0. Если A = 8, то в разряд "A + E" нужно сделать перенос, тогда B = 9 и B + 0 + 1 (перенос) = 10, но тогда C = 0, чего не может быть. Значит, A = 9. Посмотрим, что получилось:
9BCD + 10GB = 10CBH
B + 1 (перенос, так как B ≠ C) = C
Если в разряде "C + B" нет переноса, то:
G + C = 10 + B
Отняв B + 1 = C, получаем G = 9, чего не может быть. Тогда перенос был, следовательно:
G + C + 1 = 10 + B
Теперь G = 8. Остались цифры 2, 3, 4, 5, 6, 7.
D + B = 10 + H
Заменив B на C - 1, получаем:
D + C = 11 + H
Минимальное H равно 2, максимальные D и C равны 6 и 7, но тогда, 6 + 7 = 11 + 2, следовательно, H = 2. Так как C = B + 1, то B и C - два последовательных числа и C ≠ 7 (иначе D = B = 6), из чего C = 6, B = 5, D = 7. Получилось:
9567 + 1085 = 10652
ответ: 95671082.