Преобразуем условие в более понятное. Обозначаем: a=Первая буква согласная; b=Вторая буква согласная c=Третья буква гласная Тогда условие можно записать следующим образом: Перейдем к исходным обозначениям, учтя, что отрицание "гласная" есть "согласная", а отрицание "согласная" есть "гласная": (Первая буква гласная ИЛИ Вторая буква гласная) И Третья буква согласная. Можно сформулировать еще короче: "Первая ИЛИ вторая буква гласная, а третья обязательно согласная". Этому условию удовлетворяет только имя 4) Лидия - в нем вторая буква гласная, а третья согласная.
1) 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.