Другие языки программирования и технологии
Напишите пожалуйста программу в паскале
составте программу позволяющую выяснить можно ли представить данное натуральное N в виде произведения двух составных сомножителей каждый из которых кратен трем
if N mod 9 = 0 then writeln('можно')
упс двух СОСТАВНЫХ
тогда
if (N mod 9 = 0) then
begin
num:=0;
a:=N
d:=2; {первый простой делитель}
while a>0 do {пока число не ноль}
begin
b:=true; {истина}
while d <= round(sqrt(a)) do {пока очередной делитель меньше корня из числа}
begin
if a mod d=0 then {если это делитель}
begin
{ write(d,' '); {выводим его} }
inc(num);
a:=a div d; {сокращаем число на этот делитель и снова проверяем делится или нет, если делится, выводим}
b:=false; {если нет, прекращаем с этим делителем}
break;
end;
inc(d); {увеличиваем делитель на 1 и все повторяем}
end;
if b then {если больше нет делителей, }
begin
{ write(a,' ');{выводим остаток от деления числа - последний делитель}}
inc(num)
break; {заканчиваем, больше делителей нет}
end;
end;
if num>4 then writeln('можно') {число должно делиться как минимум на 4 делителя a*b*3*3}
end
упс двух СОСТАВНЫХ
тогда
if (N mod 9 = 0) then
begin
num:=0;
a:=N
d:=2; {первый простой делитель}
while a>0 do {пока число не ноль}
begin
b:=true; {истина}
while d <= round(sqrt(a)) do {пока очередной делитель меньше корня из числа}
begin
if a mod d=0 then {если это делитель}
begin
{ write(d,' '); {выводим его} }
inc(num);
a:=a div d; {сокращаем число на этот делитель и снова проверяем делится или нет, если делится, выводим}
b:=false; {если нет, прекращаем с этим делителем}
break;
end;
inc(d); {увеличиваем делитель на 1 и все повторяем}
end;
if b then {если больше нет делителей, }
begin
{ write(a,' ');{выводим остаток от деления числа - последний делитель}}
inc(num)
break; {заканчиваем, больше делителей нет}
end;
end;
if num>4 then writeln('можно') {число должно делиться как минимум на 4 делителя a*b*3*3}
end
Проверить делимость на 9 и, если да, проверить простоту результата.
program v9;
var i,n:longint; b:boolean;
begin
readln(n); b:=n mod 9=0;
if b then
begin
n:=n div 9; b:=false;
for i:=2 to n div 2 do if n mod i=0 then begin b:=true; break end
end;
writeln(b)
end.
P.S. Ты опять не пишешь, в какой из версий Pascal нужна программа. Всегда указывай, от этого зависит текст программы.
program v9;
var i,n:longint; b:boolean;
begin
readln(n); b:=n mod 9=0;
if b then
begin
n:=n div 9; b:=false;
for i:=2 to n div 2 do if n mod i=0 then begin b:=true; break end
end;
writeln(b)
end.
P.S. Ты опять не пишешь, в какой из версий Pascal нужна программа. Всегда указывай, от этого зависит текст программы.
Похожие вопросы
- напишите пожалуйста программы по паскалю.
- Напишите пожалуйста программу на паскале!!
- Напишите пожалуйста программу на паскале.
- Напишите пожалуйста программу в паскале. Дана строка символов,определить количество слов,начинающихся с заданного символа
- Напишите пожалуйста программу в паскале
- Напишете пожалуйста программу по этой задаче. ( Паскаль)
- Сделайте пожалуйста программу на Паскале. Заранее спасибо!!!!
- Написать 2 программы на Паскаль.
- Помогите написать 2 программы на паскале.. . очень нужно
- Помогите написать 2 программы в паскале