Найти факториал числа, пользуясь только указателями - C (СИ) (72369)
Формулировка задачи:
Написал такое:
Выдает ошибку, что рекурсия вызывает переполнение стэка. Где накосячил?
// Найти факториал числа, пользуясь только указателями. #include <iostream> using namespace std; long Fact(long*); void main() { long number = 5; long* result = nullptr; *result = Fact(&number); cout << "Factorial of " << number << " is " << *result << endl; } long Fact(long *ptr) { long temp = (*ptr) - 1; return (*ptr) * Fact(&temp); }
Решение задачи: «Найти факториал числа, пользуясь только указателями»
textual
Листинг программы
long* result = nullptr; *result = Fact(&number);
Объяснение кода листинга программы
В данном коде:
- Объявляется указатель на длинное целое число
result
и инициализируется значениемnullptr
(указатель, не указывающий на конкретное значение). - По указателю
result
записывается результат вызова функцииFact
с аргументомnumber
. ФункцияFact
не объявлена в данном коде, поэтому необходимо дополнительная информация о её определении.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д