Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 22.10.2008, 12:07   #1
pakusya
Пользователь
 
Регистрация: 17.10.2008
Сообщений: 23
По умолчанию разложение на простые множители

спасибо sergeix за решение! но так как я только в начале изучения паскаля преподам не очень понравится решение со строками. поэтому, не без помощи книг, решила вот так:
var
a,i,k:integer;
begin
write('ввести последовательность')
readln('n');
k:=0;
for i:=1 to n do
begin
write('задать значение a=');
readln(a);
if a=0 then
k:=k+1;
end;
if k=0 writeln('отрицательных чисел нет');
else writeln('кол-во отриц. чисел=',k);
end.
но почему-то она не работает. помогите пожалуйста найти ошибки.
и если несложно, помогите решить задачу:
дано натуральное число N разложить его на простые множители и вывести результат в виде(например: 12=1*2*2*3.)
pakusya вне форума
Старый 22.10.2008, 13:20   #2
Ламер_001
Ну и что? :)
Форумчанин
 
Регистрация: 20.10.2008
Сообщений: 129
По умолчанию

ну разве что после первого write в конце ";" поставить)
только при чем тут разложение на простые множители?)))
Учиться, учиться и еще раз учиться

Последний раз редактировалось Ламер_001; 22.10.2008 в 13:45.
Ламер_001 вне форума
Старый 19.12.2011, 15:55   #3
konj
Пользователь
 
Регистрация: 15.12.2011
Сообщений: 14
По умолчанию

Цитата:
Сообщение от pakusya Посмотреть сообщение
дано натуральное число N разложить его на простые множители и вывести результат в виде(например: 12=1*2*2*3.)
program lab21;

{$APPTYPE CONSOLE}

Var n,I,j:word;
F:Byte;
Begin
Write('vvedite natyralnoe chislo:');
Readln(n);
Write(n:6,'=1'); {любое число имеет множитель 1}
F:=0;
J:=n;
for I:=2 to n div 2 do
begin
if j mod I=0 then
begin
f:= 1; {найден множитель больше 1}
while j mod i = 0 do
{цикл определяет, сколько множителей I в исходном числе N}
begin
write('*',i);
j:=j div I
end;
end;
end;
If f=0 then writeln('*',n);
Readln
End.
konj вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разложение введенного слова в виде дерева на дельфи Gauss Общие вопросы Delphi 7 23.03.2008 21:57
Разложение в ряд Маклорена Mari Помощь студентам 2 03.02.2008 23:23
Разложение числа на слагаемые Oleg-vp Общие вопросы Delphi 5 30.10.2007 10:43