Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.73
Leert
0 / 0 / 0
Регистрация: 20.03.2014
Сообщений: 37
#1

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

08.07.2014, 16:18. Просмотров 1673. Ответов 4
Метки нет (Все метки)

Помогите сделать это задание....
Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.07.2014, 16:18     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым
Посмотрите здесь:

C++ Напишите рекурсивную функцию, которая определит, является ли заданное натуральное число первичным.
Определить, является ли заданное натуральное число простым C++
Описать функцию, возвращающую true, если натуральное число является простым, и false в противном случае C++
Напишите функцию, определяющую является ли число простым C++
Написать функцию, которая проверяет, является ли переданное ей число простым? C++
Написать рекурсивную функцию, что переворачивает заданное натуральное число C++
Написать рекурсивную функцию, определяющую, что ее аргумент простое число C++
C++ Написать рекурсивную функцию, определяющую максимальное число
Написать рекурсивную функцию для расчета степени n вещественного числа a (n — натуральное число) C++
C++ Составить функцию, определяющую, является ли ее целый аргумент простым числом. Использовать эту функцию для п
Составить функцию, определяющую, является ли ее целый аргумент простым числом. Использовать эту функцию для п C++
C++ Определить, является ли заданное натуральное число простым

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
nmcf
4922 / 4260 / 1426
Регистрация: 14.04.2014
Сообщений: 16,748
08.07.2014, 17:34     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым #2
C++
1
2
3
4
5
6
bool f(unsigned int n, unsigned int d)
{
    if(d > n / 2) return true;
    if(n % d == 0) return false;
    return f(n, d + 1);
}
Вызывать так:
C++
1
2
3
4
5
6
7
8
if(f(n, 2))
{
// простое
}
else
{
  // не простое
}
Sergio Leone
2454 / 1099 / 402
Регистрация: 07.06.2014
Сообщений: 3,259
09.07.2014, 02:42     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым #3
nmcf, хорошее решение!
Но не без косяков. Как Вы думаете, что вернёт ваша функция f(n, 2) при n = 0 и n = 1 ?
nmcf
4922 / 4260 / 1426
Регистрация: 14.04.2014
Сообщений: 16,748
09.07.2014, 09:04     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым #4
Имеешь в виду строгое определение простого числа? Ну так не надо вызывать функцию с 0 и 1.
Автор может "допилить", добавив проверку.
Sergio Leone
2454 / 1099 / 402
Регистрация: 07.06.2014
Сообщений: 3,259
09.07.2014, 11:52     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым #5
Цитата Сообщение от nmcf Посмотреть сообщение
Ну так не надо вызывать функцию с 0 и 1.
А Вы уверены, что автор темы или те, кто придут в тему за вашей функцией об этом догадаются?

Цитата Сообщение от nmcf Посмотреть сообщение
Автор может "допилить", добавив проверку.
вот, я же к этому и веду, ведь достаточно было бы дописать в начале функции дописать:
C
1
if(n < 2) return false;
чтобы зануды, вроде меня, не цеплялись...
Yandex
Объявления
09.07.2014, 11:52     Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым
Ответ Создать тему
Опции темы

Текущее время: 10:29. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru