Рекурсия: определить, является ли заданное число простым - C (СИ)

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

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

Надо написать рекурсивную функцию определения, является ли заданное число простым

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

textual
Листинг программы
  1. #include <stdio.h>
  2.  
  3. bool prime(int num, int del)
  4. {
  5.     if(del > num/2)
  6.         return true;   
  7.     return num%del ? prime(num,++del) : false;
  8. }
  9.  
  10. int main()
  11. {
  12.     int num;
  13.  
  14.     printf("enter your number: ");
  15.     scanf("%i",&num);
  16.    
  17.     if (prime(num,2))
  18.         printf("your number is prime\n");
  19.     else
  20.         printf("you number is'nt prime\n");
  21.     return 0;
  22. }

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

  1. Включаем стандартную библиотеку ввода-вывода
  2. Функция prime(int num, int del) - определяет, является ли число простым.
  3. Если делитель больше числа, то число простое и функция возвращает true.
  4. Если число делится на делитель без остатка, то функция вызывает саму себя, увеличивая делитель на единицу, и возвращает результат.
  5. Если функция не вернула значение, то число простое и функция возвращает false.
  6. Функция main() - считывает число с помощью функции scanf и передает его в функцию prime.
  7. Выводит сообщение о том, является ли число простым.

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


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

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

11   голосов , оценка 4.091 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы