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

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

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Автоматический запуск программы после критической ошибки. Как организовать? http://www.cyberforum.ru/cpp-beginners/thread1141813.html
Добрый день. Есть программа, использующая OpenCV. В идеале программа должна работать без присмотра несколько часов к ряду. Однако иногда возникают какие то критические исключения, из-за которых программа вылетает. Возможно ли написать в коде какой то механизм, который бы перезапускал программу после критической ошибки?
C++ Вызов метода std::list -> unresolved external symbol Добрый день. Столкнулся с проблемой, может кто подскажет в чем причина... Есть следующие файлики inc.h #include <list> #include "inc1.h" inc1.h http://www.cyberforum.ru/cpp-beginners/thread1141808.html
Подсчёт количества "+", "-", "0" элементов в двумерном массиве с использованием файлов C++
Здравствуйте. Много перерыто разных сайтов в поисках подобных задач - к сожалению, не попалось ничего подобного. Поскольку работаю на С ++ очень немного, сложные программы писать не могу, а тут ещё и работа с файлами. Вот условие: Разработать программу, которая: 1) вводит с клавиатуры или читает из файла двумерный целочисленный массив размерностью элементов и выводит его на экран. Элементы...
C++ Структура элемента массива работник. Определить фамилию самого старшего мужчины
Структура элемента массива работник: фамилия, число, месяц и год рождения, пол. определить: ─ фамилия самого старшего мужчины; ─ все фамилии, начинающиеся с заданной буквы; ─ список людей, родившихся в заданном месяце.
C++ Структуры: абоненты телефонной компании http://www.cyberforum.ru/cpp-beginners/thread1141752.html
1. Написать программу – электронную базу данных, хранящую информацию об абонентах телефонной компании. Каждый абонент компании описывается следующими полями: номер телефона, фамилия, имя, отчество, улица, дом, квартира. Программа должна выполнять следующие действия: • ввод с клавиатуры данных не менее чем о 8 людях (в массив структур); • вывод данных об абонентах, чей номер начинается с...
C++ Вывести на экран треугольники, оставить в файле только координаты тупоугольных треугольников Помогите написать программу на С++. Задание звучит так: В файле заданы координаты вершин треугольников. Вывести на экран треугольники. Оставить в файле только координаты тупоугольных треугольников. Треугольник с наименьшим тупым углом выделить отдельным цветом. Вывести сообщение пересекаются ли эти треугольники. подробнее

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

Задача: Выполняется расчет факториала числа (число может быть положительным и отрицательным). Если результат выходит за пределы диапазона [-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;                                            // Установка флага переполнения.
 }
 }
 }
 ...
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 02:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru