Форум программистов, компьютерный форум, киберфорум
Наши страницы

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

Войти
Регистрация
Восстановить пароль
 
serg47
0 / 0 / 0
Регистрация: 22.02.2014
Сообщений: 15
#1

Функция определения простых чисел - C++

19.03.2014, 17:20. Просмотров 580. Ответов 5
Метки нет (Все метки)

Здравствуйте! Это функция определения простых чисел.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
bool isSimple(int num)
    {
    if (num < 2)
        return false;
    else
        {
        for (int i = 2; i <= sqrt(num); i++)
            if (num % i == 0)
                return false;
            
        return true;
        }
    }
Объясните пожалуйста, построчно, если в функцию приходит например 9, что она вернет?
И почему 2 возвращает true?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2014, 17:20
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Функция определения простых чисел (C++):

Функция определения суммы простых делителей числа - C++
Вводится последовательность целых чисел, 0 - конец последовательности. Для каждого числа последовательности найти сумму его простых...

функция поиска простых чисел - C++
не могу сделать функции для поиска простых чисел, вот код функции int prost(int x) { if (x/2) return true; else ...

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

Функция по нахождению простых чисел на интервале - C++
Дан определенный интервал надо чтобы находила простые числа и выводила на экран как решить

Функция определения максимума двух чисел - C++
Не понимаю как написать. Для данных вещественных чисел x и y рассчитать, определив в программе функцию определения максимума двух...

Функция для поиска ближайших простых чисел - C++
Ув. товарищи программисты , нужна помощь. Требуется функция с помощью которой можно найти 2 ближайших ПРОСТЫХ числа к веденному числу. ...

5
Тамика
Котовчанин
917 / 461 / 145
Регистрация: 16.02.2010
Сообщений: 3,239
Записей в блоге: 27
19.03.2014, 17:32 #2
например 9, что она вернет?
Вернет false, потому 9 не простое число.
И почему 2 возвращает true?
Потому что два - это простое число.
0
jurok_85
241 / 225 / 78
Регистрация: 21.02.2013
Сообщений: 520
Завершенные тесты: 1
19.03.2014, 17:32 #3
Просто́е число́— это натуральное число, имеющее ровно два различных натуральных делителя: единицу и само себя. 2 является простым а 9 нет так как оно еще и на 3 делится функция вернет false
0
serg47
0 / 0 / 0
Регистрация: 22.02.2014
Сообщений: 15
19.03.2014, 19:15  [ТС] #4
Если в функцию приходит 2, соответственно num=2. В циклe i=2. Таким образом, 2 % 2 = 0. Условие истинно, значит дальше должен выполняться return false. Почему возвращается true?
0
jurok_85
241 / 225 / 78
Регистрация: 21.02.2013
Сообщений: 520
Завершенные тесты: 1
19.03.2014, 19:21 #5
а второе условие что i <= sqrt(2) ты учел,? программа даже не войдет в цикл
1
serg47
0 / 0 / 0
Регистрация: 22.02.2014
Сообщений: 15
19.03.2014, 19:38  [ТС] #6
Ну вот теперь, все ясно!
0
19.03.2014, 19:38
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.03.2014, 19:38
Привет! Вот еще темы с ответами:

Функция для удаления из массива простых чисел - C++
Написать функцию которая удаляет все простые числа из массива X.И вывести массив без простых чисел.

Функция, возвращающая количество простых чисел в массиве - C++
Ребят помогите разобраться. заданеие ***Написать функцию, возвращающую количество простых чисел в передаваемом ей массиве.*** вот...

Применение цикла if для определения простых чисел. If внутри цикла for - C++
Доброго времени суток, подскажите пожалуйста, в чем тут дело. С кодом все хорошо, все работает, просто я пытаюсь докопаться до сути и...

Рекурсивная функция подсчета количества простых чисел в последовательности - C++
Помогите, пожалуйста, написать программу с использованием рекурсии. Дана последовательность из N натуральных чисел. Нужно посчитать...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.