Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Программа, которая проверяет, является ли число простым





Простым называется число, которое делится только на себя и на единицу. Для того чтобы проверить, является ли число простым, проверим все возможные делители, отличные от 1 и самого числа. Первый делитель числа n находится на отрезке от 2 до , если на этом отрезке нет делителей, значит число - простое.

 

#include<iostream>

#include <math.h>

#include <conio.h>

#include <windows.h>

using namespace std;

 

int main()

{

//Настройки шрифтов и региональных стандартов

if(SetConsoleCP(1251)==0)

{

cerr<<"Fialed to set codepage!"<<endl;

}

if(SetConsoleOutputCP(1251)==0)//тоже самое для вывода

{

cerr<<"Failed to set OUTPUT page!"<<endl;

}

double x;

char flag = 1;

/* проверим, что задано натуральное число, т.е. целое и больше 0:

используем сначала число x типа double, которое может иметь дробную часть,и если задано число, которое <= 0 или не целое, или его нельзя преобразовать к целому типу, будем повторять ввод */

do

{

cout<<"Введите натуральное число <= 4e9 --> ";

cin >> x;

} while (x <= 0 || (unsigned long)x!= x || x > 4e9);

unsigned long n = x; //преобразуем число x в число n целого типа

/* поищем первый делитель; для поиска используем цикл for, поскольку счетчик цикла i можно использовать в качестве очередного проверяемого делителя: */

for (unsigned long i = 2; i <= sqrt(x); i++)

{

if (n % i == 0) // если n делится на i

{

flag=0;/* отмечаем с помощью специальной переменной (флажка), что делитель найден */

break; // и прерываем выполнение цикла

}

}

if (flag) cout<< n<<" - простое число\n";

// в зависимости от значения флажка выводим ответ

else cout << n<<" - не простое число\n";

_getch();

return 0;

}

Date: 2016-08-30; view: 251; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию