Предмет: Информатика,
автор: Никитa1Бубнов
дан массив содержащий 2021 положительных целых чисел не превышающих 15000. необходимо найти количество чётных элементов массива, не кратных 3, заменить все нечетные элементы, кратные 3 на это количество и вывести измененный массив.
Например, для исходного массива из пяти элементов 20, 89, 27, 92, 48 программа должна вывести числа 20, 89, 2, 92, 48.
Ниже приведена часть неполной программы, которую надо дополнить.
Приложения:
Никитa1Бубнов:
ну да, там было и на С++ как альтернативный способ решения, но сути от этого не меняет
я хочу просто понять, каким оператором это решается?
У меня обратная ситуация
спасибо конечно, сам желаю перейти. Однако мне это задание нужно для олимпиады: хочу понять как решить это задание
const
N=2021;
var a:array[1..N] of integer;
i,m,k:integer;
begin
m:=15000; k:=0;
for i:=1 to N do
begin
readln(a[i]);
if (a[i] mod 2=0)and(a[i] mod 3>0)and(a[i] k:=k+1;
end;
for i:=1 to N do
begin
readln (a[i]);
if (a[i] mod 2=1)and(a[i] mod 3=0)and(a[i] then a[i]:=k
end;
writeln(a[i],'');
end.
N=2021;
var a:array[1..N] of integer;
i,m,k:integer;
begin
m:=15000; k:=0;
for i:=1 to N do
begin
readln(a[i]);
if (a[i] mod 2=0)and(a[i] mod 3>0)and(a[i] k:=k+1;
end;
for i:=1 to N do
begin
readln (a[i]);
if (a[i] mod 2=1)and(a[i] mod 3=0)and(a[i] then a[i]:=k
end;
writeln(a[i],'');
end.
у меня такое получилось, но оно не выводит то, что надо
Ответы
Автор ответа:
0
Ответ: на python.
k = sum(1 for i in a if i%2 == 0 and i%3 > 0)
for i in range(0,N):
if a[i]%2 == 1 and a[i]%3 == 0:
a[i] = k
print(a[i])
Похожие вопросы
Предмет: Русский язык,
автор: Касымжомарт
Предмет: Русский язык,
автор: яна05012005
Предмет: Окружающий мир,
автор: алисаКуш
Предмет: Алгебра,
автор: olya2931
Предмет: Геометрия,
автор: максатович