program Project1;
{$APPTYPE CONSOLE}
uses
SysUtils;
var i,j:word;
begin
readln(j);
i:=1;
while i<=j do
begin
if (j mod i)=0 then begin writeln(i); j:=j div i;i:=1;end;
inc(i);
end;
readln;
end.
(Delphi 6)задача про натуральные числа
Вот условие:
Разложить заданное натуральное число на простые множетели.
Программировать надо на Delphi, а я в нём ещё не доканца разобрался.
Заранее огромное спасибо!!!
спасибо за помощь, пойду пробоватшь этот код.
Код:
i:=2;
while i<=j do
begin
if (j mod i)=0 then begin writeln(i); j:=j div i end else
inc(i);
end;
while i<=j do
begin
if (j mod i)=0 then begin writeln(i); j:=j div i end else
inc(i);
end;
я бы таким сделал цикл поиска...
Спасибо, всегда рад помощи, а особенно когда там могут дать много вариантов решение одной задачи. Можно и поучиться на своих и чужих ошибках.
Цитата:
Спасибо, всегда рад помощи. Аособенно когда там могут дать много вариантов решение одной задачи. Можно и поучиться на своих и чужих ошибках.
Будешь многа учиться на чужих ошибках - никогда прогить не научишься. Пиши больше сам! Ищи литературу. В общем, что я буду лекцию тебе читать. Захочешь научиться - поймешь, что надо делать.
Представляешь, я пол недели тыкал в программе, а он мне все равно выдаёт не все простые множетели а только последнее. Я да же не знаю, что надо написать что бы он стал выдовать все простые множетели.
я что-то не понял, что-то не работает?
Вот смотри: Код программы работает, он всё считает. Только вот программа выводит не все простые множители которые там получаются, а только последний. Фиг знает, видать я где то в программе косанулся, а найти не могу. Вроде всё правельно сделал.
может ты простое число вводишь
Не, я вообще любое пробовал вводить, а он всё равно только последнее выводит. Вот я там уже всё просмотрел, вроде всё правельно. Я уже и не знаю чё за фигня.
кинь здесь исходник.
Вот исходник.
Код:
Label2.Caption:=inttostr(i);
а
Код:
Label2.Caption:=Label2.Caption+' '+inttostr(i);//пробел чтобы числа различать.
еще вначале процедуры чтобы очистить прошлый результат надо бы
Код:
label2.Caption:='';
и все нормал будет.
Спасибо за помощь! Пошёл пробовать.