Вопрос: Как проверить, является ли число простым?

 

Лекция 19: Программа вывода простых чисел

Видео взято с канала: НОУ ИНТУИТ


 

Закономерности простых чисел [Numberphile на русском]

Видео взято с канала: Solipschism


 

2 Простые и составные числа, является ли число простым, составным Виленкин 6 класс 96,101,126

Видео взято с канала: Подслушано по Математике


 

Надёжный тест простоты чисел [Numberphile]

Видео взято с канала: Mad Astronomer


 

Напишите программу, проверяющую число, введенное с клавиатуры на четность. Домашнее задание. C++ #2.

Видео взято с канала: #SimpleCode


 

Как распознать простое число

Видео взято с канала: KhanAcademyRussian


 

Является ли число простым Проверяем на языке Си

Видео взято с канала: Igor Shapkin


55 комментариев

  • Это настолько очевидно, так как -1=(p-1)! mod p
    (следствие малой теоремы Ферма), поэтому, достаточно большие простые числа в квадрате -1 будут кратны 4!=120, потом 5!=720 и т.д 6!, 7!

    Это пример того, как простые вещи объясняют долго и муторно, что только еще хуже всё запутывают.

  • Всем привет. так сделал
    int a;
    cout<<"Введите число"<cin>>a; //ввод переменной а
    int b =a/2; //вычисление целочисленной переменной b
    double c;
    c=(double)a/2; //вычисление дробной переменной с
    if((double)c>b) //сравнение переменных с и b
    {
    cout<<"Не четное число"< }
    else if(a=0)
    {
    cout<<"Четное число"< }
    else
    {
    cout<<"Четное число"< }

  • Делал только из того, что знал из предыдущих уроков.

    #include

    using namespace std;

    double b,d,var,err;

    int a,c;

    int main()

    {

    setlocale(LC_ALL, «ru»);

    cout << ".
    \tВВЕДИТЕ ЦЕЛОЕ ЧИСЛО ДО 8-МИ ЗНАКОВ ДЛЯ ПРОВЕРКИ НА ЧЕТНОСТЬ:
    \t\t\t\t»;

    cin >> var;//вводим число

    a = var; err = (double)var a;

    if (err!= 0)

    {

    cout << ".
    \tВНИМАНИЕ!.
    \tНЕКОРРЕКТНЫЙ ВВОД!.
    \tПЕРЕЗАПУСТИТЕ ПРОГРАММУ И ВВЕДИТЕ ЦЕЛОЕ ЧИСЛО ДО 8-МИ ЗНАКОВ!
    «;

    }

    else

    {

    b = (double)a / 2;//делим на 2

    c = a / 2;//выделяем целую часть от деления

    d = (double)c b;//проверяем остаток

    if (d = 0)

    {

    cout << ".
    \t\tвведенное вами число является четным.
    «;

    }

    else

    {

    cout << ".
    \t\tвведенное вами число является нечетным.
    «;

    }

    }

  • У меня на олимпиаде по матану было задание доказать эту фигню. Первое, что я сделал расписал как (p-1)*(p+1), а потом за 10 минут додумался до доказательства через кратность соседних. Спасибо Мэтту за то, что поднял мне самооценку, я тогда и не задумался, что сделал что-то крутое

  • Добрый день. А я ЗД чет написал так
    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «ru»);

    int a;

    cout << "введите чило ";
    cin >>a;

    a = a % 2;

    if (a = 0)

    {

    cout << "Ваше число Четное" << endl;
    }

    else if(a=1)

    {

    cout << "Ваше число Нечетное" << endl;
    }

    }

    Это неправильно да?? но работает вроде

  • Так не честно, мы не знали про %, в других уроках про это ни слова. Я голову ломал как это сделать теми знаниями что получил из предыдущих уроков. В итоге сделал так:
    #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, «Rus»);
    double a;
    int b;
    cout << "Введите число." << endl;
    cin >> a;
    b = a / 2;
    if (b!= (a / 2))
    {
    cout << "Число нечетное!" << endl;
    }
    else cout << "Число четное!" << endl;
    }

  • Кто, возможно, скажет, что мой код мусор, но для меня он сокровище))
    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «Rus»); //Активация русского языка;

    int a, c;

    double b;

    cout << "Введите чило:" << endl;
    cin >> a;

    c = a / 2;

    b = (double) a / 2;

    if (b > c)

    {

    cout << "Число нечетное" << endl;
    }

    else

    {

    cout << "Число четное" << endl;
    }

    }

  • А я сделал таким извращенским способом
    #include

    #include

    using namespace std;

    void main() {

    cout << "Здравствуй дорогой друг, сегодня мы покажет является ли число четным!" << endl;
    cout << "Вводишь число(можно и отрицательное) и получаешь ответ" << endl;
    int a;

    cin >> a;

    int num = a % 10;

    num = abs(num);

    if (((num = 2) || (num = 4) || (num = 6) || (num = 8) || (num = 0))) {

    cout << "Четное!";
    }

    else {

    cout << "Нечетное";
    }

    }

  • Я в 5 классе. Помогите! Как определять огромные простые числа? Например 7777? Ну, чтобы не делить так всё до конца и не тратить времени. Объясните пожалуйста! Я очень хочу до конца понять эту тему. Искала в интернете и видео смотрела, ничего не нашла. Пожалуйста, объясните мне!����������

  • Так и знал, что нужно проверять на наличие остатка, но не знал, как именно это сделать, поэтому размышлял минут 5, как сделать по другому.В итоге вспомнил, что int при остатке округляет число, решил этим и воспользоваться.Вот что у меня вышло:
    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «rus»);

    int a;

    cout << "Введите число:";
    cin >> a;

    if ((a/2*2)=(a))

    {

    cout << "Ваше число четное" << endl;
    }

    else

    {

    cout << "Ваше число нечетное" << endl;
    }

    }

  • Начал изучать ваши уроки. До этого задания всё было супер, понятно и просто, но тут, тут у меня пригорело. Я пересматривал урок несколько раз, но, из озвученных в уроке инструментов, никак не мог сложить нужный результат. Оказывается суть домашнего задания было в том, чтобы мне нужно было узнать в интернете про «%» (остаток) и уже использовать это в решении. Тоже было и с «сетлокал» (языки), человек незнающий никогда не найдёт ответ.

  • Подскажите как это будет выглядеть? Пользователь вводит число. Если оно является четным, то мы его умножаем на 2 и выводим ответа на экран, возводим в третью степень и тоже выводим ответ на экран, если число нечетное, то мы его умножает на 3 с выводом ответа на экран и возводим в 4 степень с выводом ответа на экран

  • То что квадрат любого простого числа кратен 24 с остатком 1 верно, но не все числа удовлетворяющие этому условию простые. 49*49=2401, 2401-1 =2400 что кратно 24. Так же будет со всеми квадратами простых чисел больше 5 (7*7=49,11*11=121, 13*13=169… и т.д.) Любое утверждение требует проверки.

  • Ловкость языка и «никакого обмана» как говорят честные демагоги. Гдето после одинадцатой минуты так ловко перепутал что дажэ при повторе неразобрал как получяетса между теми эти и никаких простых. Но вот пришла в голову идея что если чтото подобно сказаному действительно доказано, то можно попробовать линейку скрутить в змейку и посмотреть несоответствует ли оси простым числам, потому что выглядит както закономерно и напрвшываетса идея получить предел дивергенцыи ‘золотого сечения’ 1.618… Но конешно второй вариант доказательства так и остался мною непонят ибо ненашел куда впихнуть простые после пояснения левоправово равенства двойки тройки шэстерки восмерки и самого понятия кратности, поскольку с одной стороны такое определение выглядит верным, но проблема в том что верным оно выглядит во философском смысле, а не в арифметическом. А при рисовании возможности совпадения с некими осями, спецпростые можно отнести к отрицательным по отношэнию к осям. Пробовал такое проделать с таблицой Менделеева, но неполучилось. Можэт сейчяс повезет…:)) Наперстники так и играют что процэс ускоряетса для затуманивания мерцанием при маневре, так что свое недопонимание могу юридически списать на преднамереную ловкость изпытателя относительно наблюдателей. Редко приходитса призновать что непонял, но это выгоднее чем спорить и рисковать остатса в дураках. Чтоб неоставлять в стороне тройку, допустим что паралельные оси соотносимы, но вот кривизна этих осей к самой функцыи простых чисел довольно спорно поскольку по умолчянию подразумеваетса что оси прямые по отношэнию к наблюдателю, и при том пространство между витками змейки необходимо считать несуществующим, а это тожэ можэт вызвать сериозные возрожэния. Вот такие впечятления от просмотренного. Калкулятором тожэ пользуюсь, ибо нечево ему без дела валятса да энергию жрать…:))
    И еще мое неразумение: можно ли щитать пересекающиеся конуса паралельными в смысле симетрии?

  • Народ, у меня така проблема.
    Я делал программу по подсчёту количество цифр до и после запятой. Число естественно было действительным. Для записывания действительного числа я использовал тип данных float. Но как оказалось позже при выводе на экран действительного числа (вроде 2.23) выводилось целое 2. При этом, операция floor не использовалась в той функции. Напоминаю, что тип данных у переменной float. То есть, на экране должно появится число 2.23. Мне удается считать кол. цифр до запятой, но после, по выше перечисленным причинам, никак.
    Интереса ради я создал новый файл с программой по проще. В этой программе была исключительно одна функция, в которой я создал переменную типа данных float, считал её, а потом вывел её на экран. Результат тот же. Выводит целую часть без цифр после запятой. При том, что про floor в коде и помины не было. Менял на double. Результат от этого не изменился.
    Что делать? Среда разработки Dev C++.

  • Всем привет. Пишу этот коммент с точки зрения личного интереса. Долго ломал я голову как решить поставленную задачу,
    в итоге зашел сюда посмотреть ответ. Меня привлекла эта строчка кода «if (a%2=0)»
    Из правил математики я знаю что получиться нуля не может, то есть если, к примеру, 4/2 получится 2. Так же если 2*2 будет 4.
    Это то и вызвало у меня интерес, как работает эта строка с точки зрения вычислений? Подумав над этим у меня появилось соображение (Если не правпоправьте, буду очень признателен)
    Что если когда я код своей программы пишу строку «if (a%2=0)», компьютер понимает это не как «Разделить число с точки зрения математики», а буквально разделить его. То есть взять 0 и начать прибавлять по 2 пока алгоритм не дойдет до введенного значения ( пусть это будет 4) и если значения на определенном этапе совпали, то принимается логическое «True», если нет, то «False».
    Допустим мы написали программу
    Вводим число 4
    И тут начинают происходить вычисления
    0+2=2
    2+2=4
    Алгоритм завершен, остатка нет.

    В общем как-то так. Может это правильно, может нет, я изучаю программирование 3 дня и мне тупо интересно))

  • Все очень просто: целые положительные числа, которые отсутствуют в обоих

    массивах A1 и A2

    | 6 11 16 21 26…..|

    | 24 35 46 57 68…. |

    A1(i,j)=6i^2+(6i-1)(j-1)= | 54 71 88 105 122…. |

    | 96 119 142 165 188… |

    |………………|

    | 6 13 20 27 34…..|

    | 24 37 50 63 76…. |

    A2(i,j)=6i^2+(6i+1)(j-1)= | 54 73 92 111 130…. |

    | 96 121 146 171 196… |

    |………………| i, j = 1, 2, 3,…

    являются индексами k простых чисел в последовательнсти S1(k)=6k-1 = 5, 11, 17, 23, 29, 35,….

    Эти числа: 1, 2, 3, 4,5,…, 7, 8, 9, 10,.., 12,…, 14, 15,…, 17, 18,19,…,…, 22, 23,…, 25,…,…., 28, 29,…

    Простые числа в последовательности S1(k)=6k-1:

    5, 11, 17, 23, 29,…, 41, 47, 53, 59,,…, 71,…, 83, 89,…, 101, 107, 113,…,…., 131,.137,…, 149,…,

    …, 167, 173,..

    Целые положительные числа, которые отсутствуют в обоих
    массивах A3 и A4

    | 4 9 14 19 24…..|

    | 20 31 42 53 64…. |

    A3(i,j)=6i^2-2i+(6i-1)(j-1)= | 48 65 82 99 116…. |

    | 88 111 134 157 180… |

    |………………|

    | 8 15 22 29 36…..|

    A4(i,j)=6i^2+2i+(6i+1)(j-1) = | 28 41 54 67 80…. |

    |60 79 98 117 136… |

    | 104 129 154 179 204… |

    |………………| i, j = 1, 2, 3,…

    являются индексами k простых чисел в последовательнсти S2(k)=6k+1 = 7, 13, 19, 25, 31, 37,….

    Эти числа: 1, 2, 3,…, 5, 6, 7,….,…., 10, 11, 12, 13,….,…,16, 17, 18,….,…, 21,…, 23,…, 25, 26, 27,…,…,, 30,…….

    Простые числа в последовательности S2(k)=6k+1:

    7, 13, 19,…, 31, 37, 43,..,…., 61 67, 73, 79,…,…, 97, 103, 109,….,…., 127,…, 139,…., 151, 157, 163,…,

    …., 181,…
    See [link] (planet-source-code.com/vb/scripts/…)

  • Уже второе ДЗ у меня получается абсолютно также как у вас! Спасибо за такие уроки, посмотрев до сюда я уже начал делать такие программы (хоть и простые, но все же программы) учитывая то что до начала просмотра этих видео я вообще ничего в программировании не понимал. Еще раз спасибо!

  • Писал как то алгоритм нахождения простых чисел, пришёл к такому: число не должно делиться на 2 на 3 и на 5, для этого просто делаем массив всех пересечений этих чисел и получаем небольшой массив, который циклично прибавляем к проверяемому числу [2,4,2,4,6,2,6,4], а начинаем отсчёт с 11, итого: нам ни разу не надо проверять число на 2 3 и 5, так можно наращивать массив сколько угодно, что уменьшит затраты на вычисления. А проверять число надо только делением его на массив полученных простых чисел максимум до числа большего чем проверяемое/5 (в моё алгоритме)… вот:)
    П.С. данный алгоритм не проверяет конкретное число, он проверяет все подряд, что уже давно бессмысленно:))

  • Не работает 25 не простое число но оно тоже таким образом можно получить 25*25=625 и 625-1=624 потом 624/24=26
    И не только 25, почти все числа которые заканчиваются на 5 тоже получаются, от других кроме 5 числа 49, 121 и тогдалии

  • Сделал только чуть по другому!
    #include

    #include

    using namespace std;

    int main(int argc, char** argv) {

    setlocale(LC_ALL, «Russian»);

    do{

    int number, summa;

    cout << "Ââåäèòå ÷èñëî: \b";
    cin >> number;

    summa = number % 2;

    if(summa) {

    cout << "Âàøå ÷èñëî íå÷åòíîå! " << summa;
    }

    else {

    cout << "Âàøå ÷èñëî ÷åòíîå! " << summa;
    }

    } while(true);

    getch();

    return 0;

    }

  • #include

    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «ru»);

    int a;

    int n=0;

    cout << "введите количество проверяемых числе" << endl;
    {

    cin >> n;

    }

    while (n!= 0)

    {

    cout << "Введите число" << endl;
    cin >> a;

    if (a % 2)

    {

    cout << "Нечёт" << endl;
    n-;

    }

    else if (a / 2)

    {

    cout << "Чёт" << endl;
    n-;

    }

    }

    system(«pause»);

    return 0;

    }

  • Я так решил ДЗ))
    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «Russian»);//Включение русского языка в консоли

    int a, intPart;

    float fractPart,b;

    cout << "Введите число:";
    cin >> a;

    b = double(a) / 2;

    intPart = b;

    fractPart = b intPart;

    cout << "Введенное число " << a;
    if (fractPart = 0)

    {

    cout << " четное" << endl;
    }

    else

    {

    cout << " не четное" << endl;
    }

    }

  • он даже не понимает почему 24 -это намного интереснее (((((2^46+4^47+5^54+7^45+1)*2+1)*2+1)*2+1)*2+1)*2+1=5200577781589212832195329233811486901823P
    (((200^7+200^16+200^20)+1)*2+1)*2+1=41943040026214400000000000000051200000000000007Р
    3^2+37^2+79^3+79^3+13^3+31^3+71^2+17^2+179^3=6765433P
    я нашел всю закономерность простых чисел

  • я делал отталкиваясь от целочисленной переменной int a;. В условии if((a-(a/2)*2)=0) при обработке тип выбирает из частного целые части тем самым при повторном умножении на это же число выводит на единицу меньше (13/2)*2=12. И того (13-(13/2)*2)=1 а надо чтобы 0 ) выражение идёт в else и обозначается как нечетное.

  • У меня очень большой код получился
    #include «pch.h»

    #include

    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «rus»);

    const char p = ‘.
    ‘;

    float hs;

    cout << "Введите число a = ";
    cin >> hs;

    if (hs>0)

    {

    if (hs / 2 > (hs 1) / 2)

    {

    cout << "Число " << hs << " четное" << p;
    }

    else

    {

    cout << "Число " << hs << " нечетное" << p;
    }

    }

    else if (hs < 0)
    {

    if (hs / 2 > (hs 1) / 2)

    {

    cout << "Число " << hs << " четное" << p;
    }

    else

    {

    cout << "Число " << hs << " нечетное" << p;
    }

    }else

    cout << "Число " << hs << " равно 0" << p;
    system(«pause»);

    return main();

    }

  • Можете перевести это видео: https://youtu.be/d6c6uIyieoo
    ?
    Во всех видео намберфила есть качественные субтитры на английском языке, используя их можно ускорить перевод видео. Субтитры с ютуб можно скачать на сайте downsub.com после, перевести с помощью гугл транслейт или какой другой проги и подкорректировать.

  • вот эта да(йопмашувать)!!! пасматрел ролик и узнал великую тайну(каторая вопщем та не асобо и занимала но..) аказуеца число Эйлера 2 147 483 647…эта да это число эйлера!!! это было неспраста…а мы вот и не знали..а упирались тыщу раз..в него
    з.ы.те кто шпилил в л2 на гфш паймут

  • Плохое видео, ничего внятно не рассказали, кроме самой идеи алгоритма и то вторая часть не понятна.
    Тест, про который здесь говорят интересен в первую очередь тем, что это единственный полиноминальный тест простоты. Его нахождение интересно тем, что вводит задачу теста простоты в класс P. На практике гораздо быстрее тест APR, но формально он экспоненциальный, хотя на практике это никак не проявляется. Т.е. никто никогда не будет использовать тест из видео на практике, но его наличие имеет важное теоретическое значение.

  • спасибо огромное за ваш труд! но.. могу я попросить больше переводов джеймса гриме? он такой изумительный ��, но переводов с его участием не так много, как хотелось бы.
    каждый раз просто выносит, когда просто вижу его ( почему, хм )
    была бы премного вам благодарна!))

  • #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL,»Ru»);

    int a;

    cout << "Кем был Пётр первый 1)Президент,2)Царь" << endl;
    cin >> a;

    if (a > 2)

    {

    cout << "Ответ неверный" << endl;
    }

    else if (a = 2)

    {

    cout << "Ответ верный" << endl;
    }

    else

    {

    cout << "Ответ неверный" << endl;
    }

    int b;

    cout << "Вы верите в бога?1)Нет,2)Да" << endl;
    cin >> b;

    if (b > 2)

    {

    cout << "Вы не верите в бога-ваш путь в ад" << endl;
    }

    else if (b = 2)

    cout << "Вы верите в бога, но все равно попадете в ад" << endl;
    if(b=0)

    {

    cout << "Вы поставили 0, вы попадете в небытье" << endl;
    }

    if (b = 1)

    {

    cout << "Атеистас место в аду,ошибка 48 " << endl;
    }

    int g;

    cout << "Напишите число" << endl;
    cin >> g;

    if(a=a/2+a/2)

    {

    cout << "Это четное число" << endl; }
    else

    {

    cout << "Это нечетное число" << endl;
    }
    Ну как-то так, по задание сделал в самом конце сверху решил по эксперементировать )

  • Мой неадекватный метод, только для целых чисел, положительных
    #include
    using namespace std;

    int a;
    cout << "Введите число: " << endl;
    cin >> a;
    int b = a 1;
    int m = a + 1;
    int c = a / 2;
    int n = b / 2;
    int s = m / 2;
    if ((c = n) && (c!= 0) && (n!= 0))
    {
    cout << "Нечётное число" << endl;
    }
    else if (a = 0)
    {
    cout << "Ноль" << endl;
    }
    else if ((c = s) && (s < 0) && (c < 0))
    {
    cout << "Нечётное число" << endl;
    }
    else if (a < 0)
    {
    cout << "Чётное число" << endl;
    }
    else if (a = 1)
    {
    cout << "Нечётное число" << endl;
    }
    else
    {
    cout << "Чётное число" << endl;
    }

  • Я пошёл немного по другому,но всё получилось.
    Вот мой исходник:

    #include
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, «Rus»);

    int a, b = 2, c;
    cin >> a;
    c= a % b;
    cout << c << endl << endl << endl << endl << endl; if (c<1)
    {
    cout << "Ваше число четное!" << endl; }
    else
    {
    cout << "Ваше число не четное!
    » << endl;
    }

    Сергей,большое спасибо тебе за уроки.
    Твой курс самый лучший.

  • самый извращённый алгоритм
    #include

    using namespace std;

    void main()

    {

    setlocale (LC_ALL, «ru»);
    int b, n;

    float a, c, m;

    cout << "введите число " << endl;
    cin >> a;

    b = a / 2;

    n = b * 10000;

    c = a / 2;

    m = c * 10000;

    if (m > n)

    {

    cout << "не чётное" << endl;
    }

    else

    {

    cout << "чётное" << endl;
    }

    }

  • Вот вам еще один метод, кстати который намного мене затратен чем операция получение остатка ( % ).

    if(a & 0x01)
    cout << "NP" << endl;
    else
    cout << "P" << endl;
    & это Bitwise Operator AND, не путать с && Logical AND.
    Тут прикол в том что такое сравнение происходит побитно, ну и это намного быстрее чем сделать операцию получения остатка.
    (P.S: за русский не ругайте, не русский я, выучил как смог)

  • что с дробными числами делать пока хз:( (досмотрел до конца, понял. компилятор не работает с float || double)
    прога снизу тз на ура выполняет

    #include

    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «ru»);

    int h;

    cout << "Введите число для проверки на четность и не четность" << endl;
    cin >> h;

    if (h = 0)

    cout << "Вы ввели нуль, сволочи" << endl;
    else

    if (h < 0)
    cout << "Вы ввели число меньше нуля, хитрожопые" << endl;
    else

    if(h % 2 = 0)

    cout << "Вы ввели четное число" << endl;
    else

    cout << "Вы ввели не четное число" << endl; }

  • Немного Википедии:
    При оценке параметра {\displaystyle r={\mathcal {O}}(\log ^{5}n)} {\displaystyle r={\mathcal {O}}(\log ^{5}n)} алгоритм требует 1 000 000 000 Гб (гигабайт) памяти для чисел из 1024 бит. Для современных операционных систем это слишком большой объём информации. В предположении верности гипотезы Артина и гипотезы Софи Жермен о плотности множества простых чисел для алгоритма будет достаточно значения параметра {\displaystyle r} r, оцениваемого в {\displaystyle {\mathcal {O}}(\log ^{2}n)} {\displaystyle {\mathcal {O}}(\log ^{2}n)}. В этом случае будет достаточно 1 Гб памяти. Но пока верность этих гипотез не доказана, алгоритм не применяется ввиду сложного исполнения. Дональд Кнут, поместивший алгоритм во второй том Искусства программирования (издание 3), в частной переписке отметил его чисто теоретический характер[6].

    Так что, походу сильно легче искать простые числа не стало, нда

  • также ввел проверку на 0, но проверка почему-то не работает
    #include «pch.h»
    #include
    using namespace std;
    int main()
    {
    setlocale(LC_ALL, «rus»);
    int a;
    cout << "число " << endl;
    cin >> a;
    if(a % 2 = 0) {
    cout << "делится";
    }
    else if(a = 0) {
    cout << " это 0";
    }
    else {
    cout << " не делится";
    }
    return 0;
    }

  • Комментарий к фрагменту примерно с 9:10.

    Здесь было бы точнее сказать: допустим, p не 2, следовательно (p-1) и (p+1) делятся на 2.
    Без уточнения звучит как «простое число нечётное», но 2 как раз пример такого числа. Аналогично с тройкой.
    Это действительно важно, т.к. во втором доказательстве 2 и 3 строго исключаются на обозначенном этапе рассуждений (что соответствует 4:36).

    И ещё. Простое число не является числом без делителей, т.к. любое число делится на себя и на 1.

    Кстати, 2 часто выпадает из доказательств как «чётное простое», но вот тройку чё-то жалко.

  • #include «stdafx.h»
    #include «iostream»
    #include «Windows.h»
    using namespace std;

    int main()
    {
    setlocale(LC_ALL, «Russian»);
    int x, z;
    cin >> x;
    system(«cls»);
    cout << '.
    ‘ << "Вот ваше число, щас скажу чётное, или нет" << endl;
    cout << x;
    Sleep(1000);
    system(«cls»);
    cout << "Минуточку...";
    Sleep(1000);
    system(«cls»);
    z = x % 2;
    if (z = 1) {
    cout << "Число не чётное" << endl;
    }
    if (z = 0) {
    cout << "Число чётное!" << endl;
    }

    return 0;
    }

  • я написал так, чтобы при вводе другого типа данных было соответсвующее сообщение:

    #include

    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «Rus»);

    int a;

    cout << "Введите число для проверки на чётность: ";
    cin >> a;

    if (!(int)a)

    {

    cout << "Вы не ввели целочисленное число:(" << endl;
    }

    if ((a % 2 = 0) && ((int)a))

    {

    cout << "Число чётное!\t" << endl;
    }

    else if (a % 2!= 0)

    {

    cout << "Число нечётное!\t" << endl;
    }

    }#include


    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «Rus»);

    int a;

    cout << "Введите число для проверки на чётность: ";
    cin >> a;

    if (!(int)a)

    {

    cout << "Вы не ввели целочисленное число:(" << endl;
    }

    if ((a % 2 = 0) && ((int)a))

    {

    cout << "Число чётное!\t" << endl;
    }

    else if (a % 2!= 0)

    {

    cout << "Число нечётное!\t" << endl;
    }

    }

  • Написал такой же код для решения, но тип данных указал double (хз зачем). Не мог понять в из-за чего VS Studio ругается. Накатал тему на форуме, мол объясните что не так. А уже в конце ролика понял в чём загвоздка)

  • Вторую формулу не понял.. Объясните пожалуйста..

    Исходя из первой, как я понимаю, надо тупо проходить по ряду прямоугольника паскаля (числа в ряду и есть коэффициенты), и смотреть делиться ли этот ряд на номер этого ряда без остатка. Забавно

  • Хосподи. Что вы так,сложно все делаете?) Программисты по-всей своей мере ленивые люди. Зачем писать такие громоздкие тесты. Напишите из разряда. || (Или) && (ИИ) По большей части,это относятся к людям,которые ноят что не было,подобного урока для решения задачи.

  • Способ друга Мэтта более «тяжелый», потому что до него трудно догадаться. Способ самого Мэтта более «трудный», поскольку там больше процедур необходимо сделать, больше труда/времени затрачивается. Перенести 100кг за раз тяжело, перенести же 10 раз по 10кг трудно.

  • Мой более сложный вариант который я придумал перед тем как посмотреть на данный в видео:
    #include

    using namespace std;

    int main()

    {

    setlocale(LC_ALL, «Rus»); //Русские символы

    const char NL = ‘.
    ‘; //констата новой линии

    int numI; //введённое число

    bool chek; //булевая проверка чётности

    cout << "Введите число: ";
    cin >> numI; //запись ввода в переменную

    if (numI%2 > 0) {

    chek = true; //(проверка)не чётное

    }

    else if (numI%2 = 0) {

    chek = false; //(проверка)чётное

    }

    if (chek = true) {

    cout << "Введённое число нечётное";//Вывод текста на экран
    }

    else if (chek = false) {

    cout << "Введённое число чётное";//Вывод текста на экран
    }

    }

  • Возникло пару вопросов, не совсем по теме, но задам тут. Смотрел ваши видео про работу с различными бд (Access, SQL Server), но вот проблема, если я захочу запустить такое приложение на другой машине, возникнут проблемы, можно ли как-то прикрутить бд к ресурсам и использовать не зависимо от расположения бд? Или это как-то иначе делать нужно… Допустим, я не знаю установлен ли server или access на другой машине, как быть тогда? За ранее спасибо, не нашел на эту тему видео…

  • Думал что 0 не относится ни туда ни туда)
    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «rus»);

    int var;

    cout << "Введите число для проверки на четность: " << endl;
    cin >> var;

    if (var % 2!= 0)

    {

    cout << "Число " << var << " нечетное!" << endl;
    }

    else if (var = 0)

    {

    cout << "Это е*аный ноль, чувак. Так не пойдет. Но в комментах сказали, что чет. Зря ты восклицательный знак там влепил, ахахахахах"<< endl;
    }

    else

    {

    cout << "Число " << var << " четное!" << endl;
    }

    }

  • If we cross out from set of positive integers all numbers divisible by 2 and all numbers divisible by 3 then
    all remaining numbers (including remaining composite numbers and ALL prime numberrs) will be in one of two forms 6k-1 or 6k+1, so it’s not suprising that every prime plus or minus 1 is divisible by 6.

  • Я пошёл таким способом

    #include

    using namespace std;

    void main()

    {

    setlocale(LC_ALL, «Rus»);

    int a;

    cout << "Введите любое число" << endl; cin >> a;

    float r, n;

    r = (double)a / 2;

    n = a / 2;

    if (a = 0)

    {

    cout << a << " Является нулём" << endl;
    }

    else if (r = n)

    {

    cout << a << " Является чётным" << endl;
    }

    else

    {

    cout << a << " Является нечётным" << endl;
    }

    }

  • 4 часа думал и пришел к такому:
    cout << "привет, сейчас ты напишеш число и я проверю его на четность"<cin >> a;

    //ввели проверку на дробное число.

    double b;

    b = (double) a / 2;

    cout << b < {

    cout << "Данное число четное"<< endl;
    }

    else

    {

    cout << "Данное число нечетное" << endl;
    }

  • Контент намберфайл состойт только из докозательств очевидных математическтх свойств и каких то невероятных красивых совпадений математики которые вообще никому не нужны кроме них. Занялись бы чем нибудь полезным. Кому нужен математический контент, посмотрите vsause. Думаю многие из вас знают этот канал. Посмотрите про парадокс банаха-тарского. Это уже что-то где надо думать

  • #include
    using namespace std;

    int main() {
    cout << "Vvedite chislo: "; int a;
    cin >> a;
    a % 2 = 0? cout<<"Chislo chetnoe": cout<<"Chislo nechetnoe";
    cout << '.
    ‘; //У меня линукс, и чтобы следующая строка не заходила на строку приглашения терминала я ставлю еол (энд оф лайн)
    }

  • Убедительно прошу всех! Сообщите мне, как связаться с автором этого ролика. Я ему гораздо глубиннее и интереснее изложу свою теорию простых чисел, которая объясняет и его пример в том числе. Думаю ему будет интересно!