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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.70
Best-pm07
..:::BesT:::..
7 / 7 / 1
Регистрация: 19.03.2009
Сообщений: 195
#1

Сумма делителей данного натурального числа - C++

24.03.2009, 12:58. Просмотров 4772. Ответов 6
Метки нет (Все метки)

Задание:
Написать подпрограмму, которая вычисляет сумму делителей данного натурального числа

Добавлено через 1 час 26 минут 24 секунды
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Program BesT_VII;
uses wincrt;
var a,i:2..maxlongint;
sum:longint;
begin
write('a=');readln(a);
sum:=0;
for i:=2 to a div 2 do
begin
if a mod i=0 then
sum:=sum+i;
end;
write ('sum=',sum);
readln
end.
Есть только на паскале помогите сделать на С++
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
24.03.2009, 12:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Сумма делителей данного натурального числа (C++):

Подсчитать количество делителей данного натурального числа. - C++
Нужно решить задания(Как можно проще...простые коды..(for,while,if,scanf,printf...)) 1)Подсчитать количество делителей данного...

Найти сумму делителей натурального числа - C++
4. Нахождение суммы делителей натурального числа (само число и единицу в качестве делителей не рассматривать).

Функция - число делителей натурального числа - C++
We define the function f(x) = the number of divisors of x. Given two integers a and b (a ≤ b), please calculate f(a) + f(a+1) + ... + f(b)....

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

Определить К - количество делителей натурального числа N - C++
дано натуральное число N. Определить К-количество делителей этого числа не превышающих его (N-12, его делители 1 2 3 4 6 K=5) N-целое...

Среднее арифметическое всех делителей натурального числа - C++
Составить программу нахождения среднего арифметического значения всех делителей заданного натурального числа N(N<=1000), кратных 3 и 4...

6
jds_07
28 / 27 / 1
Регистрация: 12.03.2009
Сообщений: 85
24.03.2009, 13:14 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream.h>
#include <conio.h>
 
#define N 65535;
 
int main() {
    unsigned long a[N], i[N], sum;
    
    clrscr();
    cout << "Enter a: "; cin >> a;
    sum = 0;
    for (i = 2; i <= a / 2; i++) {
        if ( !(a % i)) {
            sum += i;
        }
    }
    cout << "Result: " << sum << endl;
    getch();
    return 0;
}
0
Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
24.03.2009, 13:15 #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
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    int x;
    int SumDevisors=0;
    cout<<"Vvedite x: ";
    cin>>x;
    while(x!=1)
    {
        for(int i=2; i<100000; i++)
        {
            if(x%i==0)
            {
                SumDevisors+=i;
                x/=i;   
            }   
        }
    }
    cout<<"SumDevisors="<<SumDevisors<<endl;
    getch();
    return 0;   
}
0
Humanitis
172 / 164 / 6
Регистрация: 12.01.2009
Сообщений: 430
24.03.2009, 14:17 #4
Цитата Сообщение от Бартимеус Посмотреть сообщение
x/=i;
Это таки здесь не нужно.
Например если число 12. то делитель равный 6 программа не подсчитает
1
Бартимеус
181 / 33 / 2
Регистрация: 29.10.2008
Сообщений: 283
24.03.2009, 14:24 #5
Значит я немного неправильно понял задачу

Добавлено через 2 минуты 54 секунды
и программа должна выглядеть так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
#include <conio.h>
using namespace std;
int main()
{
    int x;
    int SumDevisors=0;
    cout<<"Vvedite x: ";
    cin>>x;
    for(int i=2; i<=x; i++)
    {
        if(x%i==0)
        {
            SumDevisors+=i; 
        }   
    }
    cout<<"SumDevisors="<<SumDevisors<<endl;
    getch();
    return 0;   
}
1
Дрюня
0 / 0 / 0
Регистрация: 11.05.2009
Сообщений: 30
11.05.2009, 19:15 #6
Люди, а как сделать чтоб программа не сумировала делители, а выводила их на экран... подскажите плз...
0
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
12.05.2009, 09:40 #7
Цитата Сообщение от Дрюня Посмотреть сообщение
Люди, а как сделать чтоб программа не сумировала делители, а выводила их на экран... подскажите плз...
В 14 строке вместо SumDevisors+=i; написать cout << i << endl;
7 и 17 строки убрать. После 9 строки можно вставить cout << "Deliteli chisla " << x << endl;
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.05.2009, 09:40
Привет! Вот еще темы с ответами:

Найти количество делителей натурального числа N. больших К - C++
Найти количество делителей натурального числа N больших К. в с++

Найти сумму четных делителей натурального числа - C++
пишу вот так , но не пойму до конца логику расчетов...объясните что забыл? #include &lt;iostream&gt; #include &lt;cmath&gt; #include...

Найти количество делителей натурального числа, больших K - C++
Помогите пожалуйста надо написать программу которая: Найти количество делителей натурального числа, больших К (К вводится).

Найти количесво нечетных делителей натурального числа - C++
помогите составить программу на с++ для этой задачи: Найти количесво нечетных делителей натурального числа, больших К (К вводится с...


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

Или воспользуйтесь поиском по форуму:
7
Yandex
Объявления
12.05.2009, 09:40
Ответ Создать тему
Опции темы

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