Виктор сконструировал робота «переливатор». переливатор занимается только лишь тем, что, используя 3 сосуда различной емкости, может отмерить необходимое ему количество воды. при этом он имеет источник воды, количество которой не ограничено. роботу понимает исключительно такие команды: наполнить х – получив эту команду, робот наполнит полностью емкость x вылить из х – получив эту команду, робот выльет все содержимое сосуда x на землю. перелить из x в y – получив эту команду, робот перельет все содержимое сосуда x в сосуд y до полного заполнения сосуда y. если в сосуд x не помещается все содержимое сосуда y, то остаток воды остается в сосуде y вам необходимо составить и записать алгоритм в таблицу для переливатора, что выполнив его, робот в одном из сосудов (любом) оставит ровно 7 литров воды. при этом результат должен быть достигнут за минимальное количество действий при этом у робота есть такие сосуды: сосуд а – емкостью 4 литра; сосуд в – емкостью 5 литров; сосуд с – емкостью 10 литров.
var k,i,n:integer;
begin
write('k = '); readln(k);
n:=0;
for i:=2 to round(sqrt(k)) do
if k mod i= 0 then n:=n+1;
if n=0 then writeln(k,' - простое число')
else writeln(k,' - составное число');
end.
Пример:
k = 23
23 - простое число
2)
var a,b,i:integer;
function prost(n:integer):boolean;
var j,m:integer;
begin
m:=0;
for j:=2 to trunc(sqrt(n)) do
if n mod j = 0 then inc(m);
prost:=m=0;
end;
begin
readln(a,b);
writeln('Простые числа:');
for i:=a to b do
if prost(i) then write(i,' ');
end.
Пример:
10 30
Простые числа:
11 13 17 19 23 29
3)
var k,i,n:integer;
function prost(n:integer):boolean;
var j,m:integer;
begin
m:=0;
for j:=2 to trunc(sqrt(n)) do
if n mod j = 0 then inc(m);
prost:=m=0;
end;
begin
readln(k);
i:=2; n:=0;
writeln('Простые числа:');
while n<k do
begin
if prost(i) then begin write(i,' '); n:=n+1; end;
i:=i+1;
end;
end.
Пример:
10
Простые числа:
2 3 5 7 11 13 17 19 23 29
class SearchPalin{
public static void main(String args[]){
String palinString = new java.util.Scanner(System.in).nextLine();
System.out.print("\nПалиндром(-ы):\n ");
for(int wordStart = 0, wordEnd = 0; wordEnd<palinString.length(); wordEnd++)
if(wordEnd+1==palinString.length() || palinString.charAt(wordEnd+1)==' '){
String wordBeginning = "", wordEnding = "";
for(int wordBe = wordStart;wordBe<wordEnd+1;wordBe++)wordBeginning+=palinString.charAt(wordBe);
for(int wordEn = wordEnd;wordStart-1<wordEn;wordEn--)wordEnding+=palinString.charAt(wordEn);
if(wordBeginning.equals(wordEnding)){
for(int palinWord = wordStart;palinWord<=wordEnd;palinWord++)System.out.print(palinString.charAt(palinWord));
System.out.print("\n ");
} wordStart = wordEnd+2;
}
}
}