Составители:
Рубрика:
Конечно можно реализовать программный код и без рекурсии. В этом случае
функция PrintString() будет выглядеть следующим образом:
void PrintString( char * str, int k )
{
for(int i=0; i<k; i++)
printf ( "%s", str);
}
В обоих случаях для исполнения кода достаточно вызвать функцию PrintString(),
передав ей некоторую строку, например "I love C++!\n" и количество раз для вывода
текста. В результате выполнения программы для k = 5 на экран будет выведено:
I love C++!
I love C++!
I love C++!
I love C++!
I love C++!
#include <stdio.h>
void main ()
{
PrintString("I love C++!\n", 5);
}
2. Функция, которая считает факториал.
Рекурсивная функция Fact() вычисляет факториал своего аргумента. При n = 0 или
n = 1 решение тривиально (результат = 1). Оно используется для начала обратного хода
рекурсивных вычислений.
long Fact(int n)
{
if ( n < 0 )
{
printf (" Значение %d ошибочно \n", n);
exit(1);
}
else if ( n == 0 || n == 1)
return 1; //проверка на тривиальность решения
else
return ( n * Fact(n - 1)); // рекурсивный вызов функции
}
В этом случае также легко реализовать программный код без рекурсии. Исходный
код нерекурсивной функции Fact() будет выглядеть следующим образом:
long Fact(int n)
{
for (int f = 1; n!=0; n--)
f *= n;
return f;
}
77
Конечно можно реализовать программный код и без рекурсии. В этом случае
функция PrintString() будет выглядеть следующим образом:
void PrintString( char * str, int k )
{
for(int i=0; i
void main ()
{
PrintString("I love C++!\n", 5);
}
2. Функция, которая считает факториал.
Рекурсивная функция Fact() вычисляет факториал своего аргумента. При n = 0 или
n = 1 решение тривиально (результат = 1). Оно используется для начала обратного хода
рекурсивных вычислений.
long Fact(int n)
{
if ( n < 0 )
{
printf (" Значение %d ошибочно \n", n);
exit(1);
}
else if ( n == 0 || n == 1)
return 1; //проверка на тривиальность решения
else
return ( n * Fact(n - 1)); // рекурсивный вызов функции
}
В этом случае также легко реализовать программный код без рекурсии. Исходный
код нерекурсивной функции Fact() будет выглядеть следующим образом:
long Fact(int n)
{
for (int f = 1; n!=0; n--)
f *= n;
return f;
}
77
Страницы
- « первая
- ‹ предыдущая
- …
- 75
- 76
- 77
- 78
- 79
- …
- следующая ›
- последняя »
