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

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

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

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

28.11.2012, 01:01. Просмотров 1046. Ответов 5
Метки нет (Все метки)

4. Определить функцию, проверяющую, является ли данное число простым, и функцию, подсчитывающую количество единиц в двоичной записи натурального числа. Найти все пары простых чисел, не превосходящих n, сумма единиц в двоичной записи которых совпадает. Например, такой парой является пара 3 (11) и 5 (101).

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

C++ Написать программу, проверяющую является число простым или дробным!
Определить функцию, проверяющую, является ли целое число совершенным C++
C++ Определить является ли число простым
Разработать функцию, проверяющую, является ли число простым C++
Определить, является ли данное число N простым C++
Составить программу, проверяющую, будет ли простым данное натуральное число C++
Напишите функцию, определяющую является ли число простым C++
Составить программу, проверяющую является ли данное число совершенным C++
Составить программу, проверяющую является ли данное число простым C++
C++ Определить функцию, проверяющую, является ли число простым
C++ Проверить, является ли данное число целым и простым
Написать программу, проверяющую является ли введенное число простым C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Сов@
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 47
28.11.2012, 16:25     Определить функцию, проверяющую, является ли данное число простым #2
Проверка на простое число.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
bool Prostoe_proverka(int a)
        {
            bool flag = 0;
            if (a % 3 == 0 || a % 5 == 0 || a % 7 == 0)
                flag = 1;
            else
                flag = 0;
            return flag;
        }
в майне вызываешь функцию:
int a;
cin>>a;
 
 if (!Prostoe_proverka(a))
                count<< "Prostoe";
            else
 
                count<<"Ne prostoe";
Скопируй запусти проверь.
Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
28.11.2012, 16:34     Определить функцию, проверяющую, является ли данное число простым #3
Цитата Сообщение от Сов@ Посмотреть сообщение
Скопируй запусти проверь.
Я проверил. Неправильно.
Сов@
0 / 0 / 0
Регистрация: 22.10.2011
Сообщений: 47
28.11.2012, 16:36     Определить функцию, проверяющую, является ли данное число простым #4
Цитата Сообщение от Schizorb Посмотреть сообщение
Я проверил. Неправильно.
На каком числе валится?
Schizorb
508 / 460 / 16
Регистрация: 07.04.2012
Сообщений: 865
Записей в блоге: 1
Завершенные тесты: 1
28.11.2012, 16:47     Определить функцию, проверяющую, является ли данное число простым #5
Сов@, Если вызывать именно так, как ты вызываешь, то уже на 3.

Попробуй вызвать свою функцию в цикле, получается странный ряд:

C++
1
2
3
for(int i = 1; i <= 100; ++i)
        if(Prostoe_proverka(i))
            std::cout << i << " ";
ForEveR
Модератор
Эксперт С++
7958 / 4720 / 319
Регистрация: 24.06.2010
Сообщений: 10,525
Завершенные тесты: 3
28.11.2012, 16:56     Определить функцию, проверяющую, является ли данное число простым #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <iostream>
 
constexpr bool is_divide(int n, int divisor)
{
   return n % divisor == 0;
}
 
constexpr bool is_simple_impl(int n, int div, int max)
{
   return div > max ? true : is_divide(n, div) ? false : is_simple_impl(n, div + 1, max);
}
 
constexpr bool is_simple(int n)
{
   return n < 2 ? false : is_simple_impl(n, 2, n / 2);
}
 
int main()
{
   for (int i = 2; i < 100; ++i)
   {
      if (is_simple(i)) std::cout << i << std::endl;
   }
}
Yandex
Объявления
28.11.2012, 16:56     Определить функцию, проверяющую, является ли данное число простым
Ответ Создать тему
Опции темы

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