Форум программистов, компьютерный форум CyberForum.ru

Расчет факториала числа - C++

Восстановить пароль Регистрация
 
Николай2994
0 / 0 / 0
Регистрация: 05.09.2013
Сообщений: 4
07.04.2014, 21:33     Расчет факториала числа #1
Помогите пожалуйста найти ошибку в программе, объяснить её и варианты её исправления

Задача: Выполняется расчет факториала числа (число может быть положительным и отрицательным). Если результат выходит за пределы диапазона [-100; 100], он ограничивается этими значениями, выставляется флаг ошибки.

Программа: http://[]http://prntscr.com/37v6ms[/]

Текст программы:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 ...
 int X = 7;                                                          // Аргумент факториала.
 int Y;                                                               // Результат.
 bool ErrorFlag;                                                   // Флаг переполнения.
 unsigned int i;                                                   // Счетчик.
 ...
 Y = 1;                                                             // Ввод начального значения
                                                                      // факториала.
 ErrorFlag = false;                                              // Сброс флага переполнения.
 for (i = 1; (i <= X) && (ErrorFlag == false); i++)
 {
 Y *= i;                                                           // Очередное умножение.
 if (Y > 100)                                                     // Сравнение результата с
                                                                     // максимальным значением.
 {                                                                  // Результат - больше максимально допустимого.
 Y = 100;                                                        // Ввод максимального значения
                                                                    // результата.
 ErrorFlag = true;                                             // Установка флага переполнения.
 }
 else
 {
 if (Y < -100)                                                  // Сравнение результата с
                                                                   // минимальным значением.
 {                                                                 // Результат - меньше минимально допустимого.
 Y = -100;                                                     // Ввод минимального значения
                                                                   // результата.
 ErrorFlag = true;                                            // Установка флага переполнения.
 }
 }
 }
 ...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.04.2014, 21:33     Расчет факториала числа
Посмотрите здесь:

Бинарные числа! Перевод простого числа в бираное и расчет. C++
C++ Вычисление факториала числа
Вычисление факториала большого числа C++
Вычисление факториала для каждого введенного числа C++
программа вычисления факториала любого числа C++
Как сделать алгоритм факториала большого числа? C++
C++ C++ нахождение факториала числа n с вводом из файла
Вычисление факториала 20-битного числа C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 12:18. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru