Проверка на ввод числа - C (СИ) (74015)
Формулировка задачи:
Задание:вычислить факториал.
Подскажите пожалуйста почему когда ввожу символ или отрицательное число программа не выдаёт ничего
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- void main()
- {
- unsigned int n, i, x = 1;
- printf("Vvedite n ");
- if (scanf("%i", &n) != 1)
- {
- printf("Введены неверные данные…\n ");
- system("pause");
- exit(0);
- }
- else
- for (i = 1; i <= n; i++) x=x*i;
- printf("Result: %i", x);
- getch();
- }
Решение задачи: «Проверка на ввод числа»
textual
Листинг программы
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- void main()
- {
- int n, i, x = 1 ,y;
- printf("Vvedite n ");
- y=scanf("%i", &n);
- if (y!=1 || n <0)
- {
- printf("Incorrect data\n ");
- exit(0);
- }
- else
- for (i = 1; i <= n; i++) x=x*i;
- printf("Result: %i", x);
- }
Объяснение кода листинга программы
Объяснение:
- Включаем необходимые библиотеки:
- stdio.h используется для работы с вводом/выводом данных;
- stdlib.h используется для работы с памятью и алгоритмами;
- math.h используется для работы с математическими функциями.
- Определяем переменные:
- n - счётчик, который будет использоваться в цикле;
- i - счётчик, который будет использоваться в цикле;
- x - значение, которое будет умножаться на счётчик;
- y - используется для получения введённого значения.
- Выводим запрос на ввод числа:
- Выводим сообщение
Vvedite n
.
- Выводим сообщение
- Считываем число:
- Используем функцию scanf() для считывания введённого значения в переменную n.
- Проверяем корректность введённого значения:
- Используем условный оператор if для проверки значения переменной y (которая возвращается функцией scanf()). Если значение y не равно 1 или число меньше нуля, то выводим сообщение об ошибке и завершаем программу.
- Выполняем цикл:
- Используем цикл for для выполнения операции умножения x на счётчик от 1 до n.
- Выводим результат:
- Выводим сообщение
Result:
и значение переменной x. Таким образом, данный код выполняет следующие действия:
- Выводим сообщение
- Запрашивает у пользователя ввод числа.
- Проверяет корректность введённого значения.
- Выполняет цикл, в котором значение переменной x умножается на счётчик от 1 до введённого числа.
- Выводит результат умножения.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д