Предмет: Информатика,
автор: janvilenldov92
Дано целое число N(>0).
Найти сумму его простых делителей.
Задача на с++.
Ответы
Автор ответа:
0
Ответ:
#include <iostream>
#include <math.h>
using namespace std;
int main()
{
int n,d=2, s=0;// идентифицируем переменные,d=2 т.к минимальный возможный простой делитель//
cout << "n=";//вводим n
cin >> n;//считываем n//
while (d < n)// повторяем цикл пока d не станет на 1 меньше n//
if (n % d == 0) //если остаток от деления =0, то n/d и выводим d на экран.//
{
n /= d;
cout << d << " ";
}
else //если остаток от деления >0, то прибавляем к d 1, и повторяем цикл.//
++d;// здесь прибавляем 1
if (n != 1)// если n не равно 1, то выводим n на экран(вот здесь я не поняла)//
cout << n << " ";
cout <<endl;
}
Объяснение:
janvilenldov92:
Добрый вечер. К сожалению или к счастью, я тоже видел этот код на просторах сети, но он не выводит сумму простых делителей числа. Я заплутал с этой задачей в том смысле, что сам могу написать только программу для вывода суммы всех делителей, а не только простых. Мне важно было бы увидеть хотя бы намек на помощь в том, как стоит вписать условие на проверку простоты.
Похожие вопросы
Предмет: Геометрия,
автор: aejikkakak
Предмет: Химия,
автор: kokosiklapuk
Предмет: Другие предметы,
автор: dilivik
Предмет: Алгебра,
автор: ANONIZM