написать код по CodeBlocks: 1) Определить содержит ли заданный массив группы элементов, расположенные в порядке возрастания их значений. 2) Из массива X (N) удалить три самых больших простых числа в диапазоне [-20;10].
Program n1; var a: array[1..8] of integer; i,k3,kn: integer; begin randomize; write('исходный массив: '); k3:=0; kn:=0; for i:=1 to 8 do begin a[i]:=random(21)-10; write(a[i],' '); if a[i] mod 3=0 then k3:=k3+1; if a[i] mod 2<>0 then kn:=kn+1; end; writeln; write('кратные 3: '); for i:=1 to 8 do if a[i] mod 3=0 then write(a[i],' '); writeln; write('нечетные: '); for i:=1 to 8 do if a[i] mod 2<>0 then write(a[i],' '); writeln; if kn>k3 then write('нечетных больше') else if k3>kn then write('кратных 3 больше'); end.
# Код на ruby 2.2.3p173 def zadanie(line, time) line = line.gsub(/[^MD]/, "") time.times { |i| k = 0 while k < line.size - 1 do if line[k..k + 1] == "MD" line[k], line[k + 1] = line[k + 1], line[k] k+=1 end k+=1 end p [i,line] } return line end # # Примеры применения p zadanie("MMDMMMDDDMDDDMD", 10)
var a: array[1..8] of integer;
i,k3,kn: integer;
begin
randomize;
write('исходный массив: ');
k3:=0;
kn:=0;
for i:=1 to 8 do
begin
a[i]:=random(21)-10;
write(a[i],' ');
if a[i] mod 3=0 then k3:=k3+1;
if a[i] mod 2<>0 then kn:=kn+1;
end;
writeln;
write('кратные 3: ');
for i:=1 to 8 do if a[i] mod 3=0 then write(a[i],' ');
writeln;
write('нечетные: ');
for i:=1 to 8 do if a[i] mod 2<>0 then
write(a[i],' ');
writeln;
if kn>k3 then write('нечетных больше') else if k3>kn then
write('кратных 3 больше');
end.
def zadanie(line, time)
line = line.gsub(/[^MD]/, "")
time.times { |i|
k = 0
while k < line.size - 1 do
if line[k..k + 1] == "MD"
line[k], line[k + 1] = line[k + 1], line[k]
k+=1
end
k+=1
end
p [i,line]
}
return line
end
# # Примеры применения
p zadanie("MMDMMMDDDMDDDMD", 10)
Вывод
[1, "MDMDMMDMDDDMDDDM"]
[2, "DMDMDMMDMDDDMDDM"]
[3, "DDMDMDMMDMDDDMDM"]
[4, "DDDMDMDMMDMDDDMM"]
[5, "MDMDMMDMDDMM"]
[6, "MDMDMMDMDMM"]
[7, "MDMDMMDMMM"]
[8, "MDMDM"]
[9, "MDMDMDDD"]
[10, "MDMDMDD"]
"MDMDMDD"