|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
22.12.2008, 21:04 | #1 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 15
|
Определить является ли данное число совершенным.. Паскаль.
Определить является ли данное число совершенным.
Код:
|
22.12.2008, 21:40 | #2 | |
Форумчанин
Регистрация: 05.10.2007
Сообщений: 536
|
честно говоря - в твоем коде не разбирался лень.
написал вот что: Код:
Цитата:
rocklistener...
|
|
22.12.2008, 23:30 | #3 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 15
|
|
22.12.2008, 23:56 | #4 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,646
|
Ошибка кроется тут:
Код:
P.S. На счёт оптимизации. Заметьте, что на каждой итерации цикла будет считаться корень. Лучше сделать так: Код:
E-Mail: arigato.freelance@gmail.com
Последний раз редактировалось Arigato; 22.12.2008 в 23:59. |
23.12.2008, 14:25 | #5 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 15
|
Если round заменить на trunk то всё равно если n=m^2,то m мы посчитаем два раза.То есть если n=9,то k=7.А k должно быть равно 1+3=4.
В принципе в начале можно делать проверку program sover (input,output); var n2,n,i,k:integer; begin writeln('Vvedite chislo'); read(n);i:=2;k:=1;n2:=round(sqrt(n) ); while i<=n2 do begin if (n)mod(i)=0 then k:=k+i+(n)div(i); i:=i+1 end; if n=sqr(n2) then k:=k-n2; writeln(n=k) end. Вот как-то так... |
23.12.2008, 21:15 | #6 |
Высокая репутация
СуперМодератор
Регистрация: 27.07.2008
Сообщений: 15,646
|
Можно заменить эту строку: if n mod i = 0 then inc (k, i + n div i);
на Код:
E-Mail: arigato.freelance@gmail.com
|
23.12.2008, 21:53 | #7 |
Пользователь
Регистрация: 22.11.2008
Сообщений: 15
|
Ну можно и так.Спасибо всем.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Определить, является ли матрица магическим квадратом. | drakon803 | Помощь студентам | 11 | 14.12.2011 14:29 |
является ли заданное натуральное число совершенным | Савинова | Помощь студентам | 3 | 19.11.2008 09:51 |
определить является ли четырехугольник квадратом | Ntfser | Общие вопросы Delphi | 2 | 18.10.2008 16:48 |
Ввести число N и определить делится ли оно без остатка на число M (VBA) | Ivanich | Microsoft Office Excel | 7 | 24.04.2008 19:43 |
Паскаль.программа, которая определяет каким является введенное число... | Integer | Помощь студентам | 4 | 18.11.2007 22:17 |