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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.10.2009, 19:44   #1
iYoung
 
Аватар для iYoung
 
Регистрация: 06.10.2009
Сообщений: 3
По умолчанию Проверьте и отредактируйте задачу пожалуйста .

Задача - Дано натуральное число N. Найти число единиц в двоичной записи числа N.


Сам паскаль изучаю меньше месяца , поэтому возникает очень много сложностей ... Эту задачу при помощи советов и гугла решил вот так ... Но она не работает ((((

iYoung вне форума Ответить с цитированием
Старый 08.10.2009, 20:06   #2
iYoung
 
Аватар для iYoung
 
Регистрация: 06.10.2009
Сообщений: 3
По умолчанию

ну кто-нибудь помогите пожалуйста )
iYoung вне форума Ответить с цитированием
Старый 08.10.2009, 20:43   #3
sheka
Босс
Форумчанин
 
Аватар для sheka
 
Регистрация: 03.06.2009
Сообщений: 125
По умолчанию

после работы нажмите альт-ф5

или перед последним ендом поставьте реадлн.

Две одинаковые вложенные ошибки называются четной ошибкой и ошибкой не являются.
Ася 255507394. Отзывы здесь.

Последний раз редактировалось Stilet; 09.10.2009 в 08:25.
sheka вне форума Ответить с цитированием
Старый 08.10.2009, 20:47   #4
iYoung
 
Аватар для iYoung
 
Регистрация: 06.10.2009
Сообщений: 3
По умолчанию

так программа в любом случае выдает ответ 0 ..... Ошибка где то ((((
iYoung вне форума Ответить с цитированием
Старый 09.10.2009, 01:48   #5
illia2009
Пользователь
 
Регистрация: 09.10.2009
Сообщений: 10
По умолчанию

значит так, всё по порядку.
во-первых, оператор "mod" возвращает остаток от деления если делитель меншьше деленного. в противном случае "mod" возвратит НЕ НОЛЬ, а деленное. а так как в версии Pascal начиная с 7 все переменные обнуляются, то k=0. и условие "if k=1 then inc(i);" НИКОГДА не выполнится. мало этого, после того как n станет равная нулю (0), то на экран выведится переменная i, которая в силу того, что условие "if k=1 then inc(i);" не выполнилось ни одного раза, будет равна нулю (0). то есть, другими словами, эта программа ВСЕГДА (в версии компилятора 7 и выше (7.1) будет выдавать ноль (0) на экран.

думаю тут гуглом (google) не обойдётся, тебе нужно обратиться к репетитору. хорошые здесь http://programskitchen.com/
есть вопросы на которые никто не может дать вразумительного ответа?? обращайтесь:
пишите: "fq@programskitchen.com";
заходите: "http://programskitchen.com".
illia2009 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Отредактируйте пожалуйста программу МихХха Паскаль, Turbo Pascal, PascalABC.NET 0 24.05.2009 17:12
проверьте задачу Сова Паскаль, Turbo Pascal, PascalABC.NET 3 11.02.2009 14:22
Проверьте задачу Dialon Помощь студентам 14 10.02.2009 21:26
Отредактируйте,пожалуйста,задачу на записи, вычисляющую дату через m дней. JiLiYa Паскаль, Turbo Pascal, PascalABC.NET 2 26.12.2008 09:29