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

Определить простые множители - C++

Восстановить пароль Регистрация
 
Dimaska
0 / 0 / 0
Регистрация: 02.10.2010
Сообщений: 5
03.10.2010, 00:56     Определить простые множители #1
Задание: Составить программу определения, является ли данное число простым. Если число не является простым, то определить все его простые множители

Заранее спасибо..
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
03.10.2010, 02:04     Определить простые множители #2
Dimaska, 1 и само число не учитываю как множители.

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
#include <iostream>
 
bool isSimple(int a)
{
    bool flag=false;
    for(int i=2; i<=a/2; ++i)
    {
         if(a%i==0)
         {
            flag=true;
            break;
         }
     }
     if(flag)
        return false;
     return true;
}
 
void print_numbs(int a)
{
     for(int i=2; i<=a/2; ++i)
     {
          if(a%i==0)
          {
              if(isSimple(i))
                 std::cout<<i<<' ';
          }
     }
     std::cout<<std::endl;
}
 
int main()
{
     int a;
     std::cout<<"Enter a: ";
     std::cin>>a;
     if(isSimple(a))
         std::cout<<"Numb "<< a <<" is simple\n";
     else
         print_numbs(a);
     return 0;
}
Dimaska
0 / 0 / 0
Регистрация: 02.10.2010
Сообщений: 5
03.10.2010, 12:57  [ТС]     Определить простые множители #3
Lavroff, слуушай,спасибо тебе большое...
а ты не мог бы еще написаьт к этой программе входные и выходные данные и блок-схему?очень-очень нужно(
Nameless One
Эксперт С++
 Аватар для Nameless One
5754 / 3403 / 255
Регистрация: 08.02.2010
Сообщений: 7,393
03.10.2010, 14:06     Определить простые множители #4
Lavroff, функцию isSimple можно переписать так:
C++
1
2
3
4
5
6
7
bool isPrime(int a)
{
    for(int i=2; i<=a/2; ++i)
        if(a%i==0)
            return false;
    return true;
}

Не по теме:

Цитата Сообщение от Dimaska Посмотреть сообщение
а ты не мог бы еще написаьт к этой программе входные и выходные данные и блок-схему?очень-очень нужно(
Совсем разленились...

Yandex
Объявления
03.10.2010, 14:06     Определить простые множители
Ответ Создать тему
Опции темы

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