|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
20.10.2016, 18:44 | #1 |
Пользователь
Регистрация: 20.10.2016
Сообщений: 14
|
Программа на делфи.
В общем суть программы: в массиве есть два совершенных числа, найти их произведение. (Совершенные числа- числа, сумма всех делителей(кроме самого числа) которого равна самому числу - 6;28).
Массив я задал вручную, и вот процедурка по нахождению заветного произведения Procedure PrSov; begin for i:=1 to 10 do begin for n:=1 to masA[i] do if (masA[i] mod n) = 0 then s:=s+n; n:=n+1; if s=masA[i] then p:=p*masA[i]; end; writeln('Proizv=',p:4:0); В выоде всегда получаю 1. В сети не нашел чего-то типичного. |
20.10.2016, 18:59 | #2 |
Старожил
Регистрация: 17.11.2010
Сообщений: 18,922
|
s перед вложенным циклом обнулить нужно. n:=n+1; - какой-то хитрый ход, не понятный мне. Перед основным циклом в p единицу засунуть, а то умножаешь фиг знамо на что. Вот еще - проверку делимости на самого себя тоже не нужно
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Последний раз редактировалось Аватар; 20.10.2016 в 19:06. |
20.10.2016, 20:47 | #3 |
Пользователь
Регистрация: 20.10.2016
Сообщений: 14
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Программа в делфи | koxaz941 | Общие вопросы Delphi | 3 | 29.05.2013 17:34 |
программа на Делфи | katerinaа | Фриланс | 1 | 27.05.2013 17:50 |
программа на делфи | Anton94.by | Помощь студентам | 1 | 17.10.2012 22:17 |
Программа на делфи | misher | Общие вопросы Delphi | 6 | 20.07.2010 20:53 |
Программа на Делфи | max214145 | Фриланс | 4 | 26.05.2010 20:09 |