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

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

Войти
Регистрация
Восстановить пароль
 
pipec-kapec
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 73
#1

Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним - C++

12.06.2012, 03:08. Просмотров 1059. Ответов 6
Метки нет (Все метки)

Тест. k=24.
Результат. 1; 5; 7; 11; 13; 17, 19; 23.


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

C++ Дано натуральное число n. Найти все его делители и разложить его на простые числа.
Дано натуральное число n. Напечатать те натуральные числа, квадрат которых не превышает n. C++
C++ Дано натуральное число n. Получить все его натуральные делители.
Дано натуральное число n. Вывести на экран все натуральные числа, меньше n и взаимно простые с ним. C++
C++ Получить все натуральные числа, меньшие n и взаимно простые с p
Дано натуральное число n>1. Выведите все простые множители этого числа в порядке возрастания с учетом кратности. C++
выписать все натуральные числа,взаимно простые с m, из отрезка [1;m-1] C++
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Andrey.K
 Аватар для Andrey.K
340 / 261 / 15
Регистрация: 14.11.2010
Сообщений: 480
12.06.2012, 03:16     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <conio.h>
using namespace std;
bool Simple (int &N)// ф-ия проверяет является ли число простым, нсли да то возвращает true
{
    bool rez=true;
    for(int k=2;k<=N/2;k++)
    if (N%k==0) rez=false;
    return rez;
}
int main()
{
    setlocale(0,"Rus");// для вывода русских букв на экран
    int k;// здесб будет хранится вводимое число
    cout<<"Введите число: ";cin>>k;
    cout<<"Все простые и натуральные числа меньше "<<k<<endl;
    for(int i=1;i<k;i++)// в этом цикле проверяем все числа до k , простые они или нет
    {
        if(Simple(i)) cout<<i<<" ";// если простое то выводим его на консоль
    }
    getch();
    return 0;
}
pipec-kapec
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 73
12.06.2012, 03:21  [ТС]     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #3
Огромное спасибо, помогите плиз с написанием другой программы, если несложно, тема в этом же форуме - Определите, есть ли в данной строке указанное слово
AnyOne697
 Аватар для AnyOne697
134 / 106 / 5
Регистрация: 22.05.2010
Сообщений: 533
12.06.2012, 21:03     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #4
Если я правильно понял, то было сделано совсем не то. Взаимно простые числа это числа, НОД которых равен 1. Например, 9 и 25 - взаимно простые, хотя 9 при этом простое, а степень тройки.

Нод двух чисел можно найти с помощью алгоритма Евклида.
pipec-kapec
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 73
13.06.2012, 22:03  [ТС]     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #5
Если можешь, напиши код для этой задачи...
AnyOne697
 Аватар для AnyOne697
134 / 106 / 5
Регистрация: 22.05.2010
Сообщений: 533
13.06.2012, 23:47     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
 
int NOD(int a,int b)
 {
    while(a!=0 && b!=0)
    {
       if(a>=b) a=a%b;
           else b=b%a;
    }
 return a+b;
 }
 
int main()
{
    int n;
    std::cout<<"Input k->";
    std::cin>>n;
    for(int i=1;i<n;i++)
        if(NOD(i, n)) std::cout << i<< " ";
//system("Pause"); may needed in #include <cstdlib> [C++] or <stdlib.h> [C]
    return 0;
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2012, 23:55     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
pipec-kapec
2 / 2 / 0
Регистрация: 07.06.2012
Сообщений: 73
13.06.2012, 23:55  [ТС]     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним #7
Спасибо!!!
Yandex
Объявления
13.06.2012, 23:55     Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним
Ответ Создать тему
Опции темы

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