Написать не рекурсивную функцию, используя стек - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Написать не рекурсивную функцию, которая используя стек, вычисляет значение F(m,n) для любой пары положительных чисел n и m за соотношением: Не могу совсем разобраться с задачей, не соображаю даже с чего мне начать. Уравнение через if'ы смогу решить но что такое стеки и как их сюда прикрутить не знаю.

Решение задачи: «Написать не рекурсивную функцию, используя стек»

textual
Листинг программы
int cr(char * mass[]){
int x =-1;
char ch[1];
 while(1){
  printf("Введите x >0  или x = 0 \n")
  fread(ch ,1,1,stdint);
  x = ch[0] - '0';
  if(x >= 0)
    break;
// обратите внимание, здесь не анализируются служебные символы, такие как \n и прочие
 
 }
 
return x;
}

Объяснение кода листинга программы

  1. Объявлена функция cr с типом возвращаемого значения int и параметром char *mass[]
  2. Внутри функции объявлены две переменные: x со значением -1 и ch типа char с размером 1 байт.
  3. Запущен цикл while(1), который будет выполняться до тех пор, пока пользователь не введет значение x > 0 или x = 0.
  4. Внутри цикла выводится сообщение с просьбой ввести x.
  5. Затем с помощью функции fread считывается один символ из стандартного ввода в переменную ch.
  6. Присваивается значение x равное первому символу в массиве ch, приведенному к типу int и считанному без регистра.
  7. Если значение x больше или равно нулю, то цикл прерывается.
  8. Функция возвращает значение x.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы