|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.04.2011, 22:35 | #1 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 60
|
факториал в с++
Всем привет, задание такое у меня, написать программу считающее факториал какого-то числа n ( 1<=n<=20).
Вроде написал программку и даже работает, но на каком то месте перестает правильно считать, т.е. счет уходит в минус. Может кто поведает юному юзеру в чем проблема? Код:
|
01.04.2011, 22:37 | #2 |
Участник клуба
Регистрация: 29.12.2009
Сообщений: 1,166
|
переполнение скорее всего происходит целочисленного типа, используй unsigned long long
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть] |
02.04.2011, 06:36 | #3 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 60
|
да вообщем то я тоже так думаю, подправил программу как ты посоветовал, т.е. взял под unsigned long long свой fact, ну и в общем то ничего к сожалению не изменилось
|
02.04.2011, 09:09 | #4 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,724
|
А в принтфе спецификатор поменяли?
|
02.04.2011, 09:59 | #5 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 60
|
э-э-э-э, что, что? Немного понятнее пожалуйста можно?=)
|
02.04.2011, 10:31 | #6 |
ios developer
Старожил
Регистрация: 16.11.2007
Сообщений: 2,885
|
Мне кажется, что такие вещи как факториал умнее считать рекурсией, цикл тут не нужен. Почти наверняка и задание по этой теме. А по теме - у тебя в n получается неявное преобразование char в int, чтож ты хотел-то. Преобразуй и проверяй всегда принадлежность n к заданному промежутку, чтоб в такие ситуевины не попадать.
Зы. а почему ввод через cin, а вывод не через cout? Переполнение long на факториале 20? Ну ну...
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!
Последний раз редактировалось crazy horse; 02.04.2011 в 10:37. |
02.04.2011, 10:46 | #7 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,724
|
"%d" - спецификатор формата для принтфа и подобных функций
читате доки для разнообразия что ли |
02.04.2011, 13:15 | #8 |
Пользователь
Регистрация: 29.01.2009
Сообщений: 60
|
спасибо за замечания
|
03.04.2011, 10:40 | #9 |
Участник клуба
Регистрация: 29.12.2009
Сообщений: 1,166
|
Код:
прогер C\C++\C#\Delphi
ася: [семь 3]-[97]-[1 шесть] |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Факториал | Radiy | Общие вопросы Delphi | 5 | 02.07.2010 08:26 |
Факториал | Dracula777 | Помощь студентам | 4 | 26.02.2010 22:56 |
C++ (факториал) | slim>>> | Помощь студентам | 2 | 13.01.2010 20:34 |
Факториал. | dimka660i | Помощь студентам | 11 | 10.10.2009 23:28 |
факториал в си++ | Sjava | Помощь студентам | 1 | 21.12.2008 12:17 |