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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 21, средняя оценка - 4.62
Garret192
1 / 1 / 0
Регистрация: 21.10.2009
Сообщений: 84
#1

Дано натуральное число n. Найти все его делители и разложить его на простые числа. - C++

22.10.2009, 19:06. Просмотров 2668. Ответов 2
Метки нет (Все метки)

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

Дано натуральное число n. Найти все его делители и разложить его на простые числа.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2009, 19:06
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Дано натуральное число n. Найти все его делители и разложить его на простые числа. (C++):

Дано натуральное число. Найти все его простые положительные делители. C++ - C++
Входные данные Дано натуральное число N. Выходные данные Вывести все его простые положительные делители.

Дано натуральное число N. Разложить его на простые множители - C++
Всем доброго времени суток. Очень нужна помощь с данной задачей в плане оформления, так как совсем не знаю этот язык программирования. Дано...

Дано натуральное число n. Получить все его натуральные делители. - C++
Помогите пожалуйста. Нужно написать программу на языке Си. Дано натуральное число n. Получить все его натуральные делители. ...

Дано целое число n. Получить все простые делители этого числа - C++
Почему простые делители выдает не правильно? ch-число del-делитель dd-делитель делителя #include "stdafx.h" #include...

Дано натуральное число N получить все делители этого числа. - C++
Дано натуральное число N получить все делители этого числа. C++ в QT. Можно и в MVS. Почищу код если в MVS.

Дано натуральное число. Вывести на экран все простые числа до заданного числа. - C++
Дано натуральное число. Вывести на экран все простые числа до заданного числа.

2
TanT
эволюционирую потихоньку
466 / 464 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
22.10.2009, 19:48 #2
два варианта нахождения простых чисел
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>
#include <math.h>
using namespace std;
int main()
{  int a[100]={0};
   int i=0, k=0;
   bool l;
   a[0]=2;   
  for (i=3;i<100;i+=2)
  {    int j=0;     
       l=false;
      while (j<=k && l==false && a[j]<=(int)sqrt((double)i))
      {
       if ((i%a[j])==0){l=true;}
       j++;
      }
       if (l==false){k++;a[k]=i;}       
  }  
   for (i=0;i<=k;i++)
    cout<<a[i]<<"\n";
   system("pause");
}
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
25
26
27
//Решето Эратосфена реализация
#include<iostream>
using namespace std;
 
int main()
{
        int nSize;
        cout << "Limit = ";
        cin >> nSize;
    nSize++;
        bool* bArray = new bool [nSize];
 
        memset(bArray, 1, nSize);
 
        for(int i = 2; i < nSize; ++i)
                if(bArray[i])
                for(int j = i*i; j < nSize; j += i)
                        bArray[j] = false;
        cout << "All primes numbers from 0 to " << (nSize - 1) << ":" << endl;
        for(int i = 2; i < nSize; ++i)
                if(bArray[i])
                printf("%d ", i);
 
        cout << endl;
 
        return 0;
}
1
valeriikozlov
Эксперт С++
4675 / 2501 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
23.10.2009, 14:51 #3
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
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
#include "iostream.h"
#include "math.h"
#include "windows.h"
int main()
{
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    int A, temp=1, *mas, i;
    bool mas_0; 
    cout<<"Ââåäèòå ÷èñëî: "<<endl;
    cin>>A;
    if(A%2==0)
        mas_0=true;
    else
        mas_0=false;
    int n=(int)pow(A, 0.5);
    mas=new int[n];
    mas[0]=2;
    cout<<"ГђГ*çëîæåГ*ГЁГҐ Г*Г* ïðîñòûå Г¬Г*îæèòåëè:"<<endl;
    while(A!=1)
    {
        bool fl=false;
        for(i=0; i<temp; i++)
            if(A%mas[i]==0)
            {
                A/=mas[i];
                cout<<mas[i]<<endl;
                fl=true;
                break;
            }
        if(!fl)
        {
            mas[temp]=mas[temp-1];
            while(!fl)
            {
                for(i=0; i<temp; i++)
                {
                    if(mas[temp]%mas[i]==0)
                    {
                        mas[temp]++;
                        i=0;
                        break;
                    }
                    if(A%mas[temp]==0)
                    {
                        fl=true;
                        temp++;
                        break;
                    }
                    else
                    {
                        i=0;
                        mas[temp]++;
                    }
                }
            }
        }
    }
    cout<<"Âñå èñïîëüçóåìûå ïðîñòûå äåëèòåëè: "<<endl;
    if(mas_0)
        i=0;
    else
        i=1;
    for(; i<temp; i++)
        cout<<mas[i]<<"  ";
    cout<<endl; 
    return 0;
}
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.10.2009, 14:51
Привет! Вот еще темы с ответами:

Найти наименьшее натуральное число, которое отсутствует в последовательности и определить его делители. - C++
Дана последовательность натуральных чисел. Найти наименьшее натуральное число, которое отсутствует в последовательности и определить его...

Дано натуральное число k. Получите все натуральные числа, меньшие k и взаимно простые с ним - C++
Тест. k=24. Результат. 1; 5; 7; 11; 13; 17, 19; 23. Помогите с написанием программы, желательно с комментариями..заранее спасибо.

Дано натуральное число n. Вывести на экран все натуральные числа, меньше n и взаимно простые с ним. - C++
Помогите пожалуйста, мне на завтра 2 проги в универ, а я совсем не знаю как их сделать((( 1)Дано натуральное n(n&lt;100), целые числа...

Дано натуральное число n>1. Выведите все простые множители этого числа в порядке возрастания с учетом кратности. - C++
Дано натуральное число n&gt;1. Выведите все простые множители этого числа в порядке возрастания с учетом кратности. Ввод...


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

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

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