Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 0
Регистрация: 29.11.2016
Сообщений: 9
1

Описать функцию, находящую разложение заданного натурального числа на простые множители

29.11.2016, 20:56. Показов 1242. Ответов 4
Метки нет (Все метки)

Помогите написать программу, пожалуйста
Описать функцию factors(a, n, F), находящую разложение натурального числа a на простые множители. Количество множителей возвращается в целой переменной n, а сами множители (в порядке неубывания) – в целочисленном массиве F (n и F – выходные параметры; максимальное число элементов массива F считать равным 15)
0

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
29.11.2016, 20:56
Ответы с готовыми решениями:

Разложение на простые множители заданного натурального числа
Составить программу , печатающую разложение на простые мн0жители заданн0го натУральн0го числа n > 0...

Разложение натурального числа на простые множители
Выведите разложение натурального числа n > 1 на простые множители. Простые множители должны быть...

Разложение на простые множители заданного натурального числа
Составить программу, печатающую разложение на прос¬тые множители заданного натурального числа n > 0...

Разложение натурального числа на простые множители
Добрый день, люди подскажите пожалуйста программный код по теме курсовой: Разложение натурального...

4
382 / 276 / 478
Регистрация: 09.05.2014
Сообщений: 769
01.12.2016, 12:38 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
24
25
26
27
28
29
30
31
#include <iostream>
void factors(int a, int F[], int &n){
    
        for (int div=2; div<=a; div++)
        {
            bool prime=true;
            for (int d=2; d<div/2; d++)
                if (div/d==0){
                    prime=false;
                    break;
                }
            if (prime)
                while (a%div==0)
                {
                    F[n]=div;
                    n++;
                    if (n==15)
                        return;
                    a/=div;
                }
        }
}
 
int main(){
    int num, n=0, PrimeDiv [15];
    std::cin>>num;
    factors(num, PrimeDiv, n);
    for (int i=0; i<n; i++)
        std::cout<<PrimeDiv[i]<<' ';
        
}
1
0 / 0 / 0
Регистрация: 29.11.2016
Сообщений: 9
02.12.2016, 11:07  [ТС] 3
lawr, программа выводит множители, но не выводит их количество
0
382 / 276 / 478
Регистрация: 09.05.2014
Сообщений: 769
02.12.2016, 14:45 4
Mark77,
C++
1
std::cout<<"prime divisors quantity= "<<n<<std::endl;
1
Эксперт C
26059 / 16250 / 3492
Регистрация: 24.12.2010
Сообщений: 35,604
02.12.2016, 14:53 5
C++
1
2
3
4
5
6
7
8
9
10
11
int factors(int a, int F[]){
 int n=0;
 for (int div=2; a>1; ) {
   if (a%div==0) {
     F[n++] = div;
     a /= div;
   }
   else div++;
}
return n;
}
2
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.12.2016, 14:53

Разложение натурального числа на простые множители
составить программу разложения данного натурального числа на простые множители.

Разложение натурального числа на простые множители
Помогите пожалуйста составить программу для разложения данного натурального числа на простые...

Требуется вычислить разложение натурального числа на простые множители
Простите,что пишу сюда код на си,просто дождаться ответов в разделе &quot;Си&quot; невозможно: Ошибка в...

Разложение натурального числа на простые множители с помощью рекурсии
Собственно суть задачи: разложение натурального числа на простые множители с помощью рекурсивной...


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

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

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