rand. srand. rand задать диапазон. srand time null. Генератора случайных чисел. randomize. Урок #29.

แชร์
ฝัง
  • เผยแพร่เมื่อ 15 มิ.ย. 2017
  • Генератора случайных чисел. rand. srand. randomize. rand задать диапазон. srand time null. Урок #29.
    Понравилось видео или оказалось полезным? Подпишись!
    Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут! =)
    www.donationalerts.ru/r/simple...
    или тут
    / simplecode
    Уроки по программированию
    Наша группа ВК smplcode
    Подписывайтесь на канал / @simplecodeit

ความคิดเห็น • 375

  • @SimpleCodeIT
    @SimpleCodeIT  6 ปีที่แล้ว +139

    *Друзья, если вы решили изучать программирование и подписались на канал - рекомендую вам нажать колокольчик чтобы никогда не пропускать новые уроки!*

    • @MTTimon
      @MTTimon 4 ปีที่แล้ว +1

      При каждом запуске программы равномерное число больше предыдущего, пока не дойдет до предела, как можно это исправить?

    • @MTTimon
      @MTTimon 4 ปีที่แล้ว +1

      *рандомное

    • @user-iv3fd3zs9y
      @user-iv3fd3zs9y 3 ปีที่แล้ว

      А как быть если нужно случайное четное число?

    • @4gottendreamer
      @4gottendreamer 3 ปีที่แล้ว +1

      @@user-iv3fd3zs9y int a = 2 * rand();

    • @user-iv3fd3zs9y
      @user-iv3fd3zs9y 3 ปีที่แล้ว

      @@4gottendreamer Спасибо

  • @user-lm7lx7nn3i
    @user-lm7lx7nn3i 7 ปีที่แล้ว +251

    Лучше всех рассказываешь про c++. Все коротко и понятно. Спасибо тебе огромное.

    • @chopper3311
      @chopper3311 3 ปีที่แล้ว +8

      не совсем коротко, но понятно так точно

    • @romkagm7756
      @romkagm7756 2 ปีที่แล้ว +3

      @@chopper3311 на 1.5 коротко

    • @user-ej5or6sj5t
      @user-ej5or6sj5t 2 ปีที่แล้ว +6

      @@romkagm7756 на 10.0 - режим самоучителя китайского за час.

    • @thirdbyron
      @thirdbyron ปีที่แล้ว +1

      100%

    • @ivanliaz
      @ivanliaz 4 หลายเดือนก่อน

      @@chopper3311 в этом и фишка, когда человек не спешит, то информация лучше усваивается.

  • @HeadGenCSGO
    @HeadGenCSGO ปีที่แล้ว +32

    Учусь в ВУЗе на программиста на заочном обучении. И чтобы научиться писать код, просматриваю твои уроки. Пока вся информация прямо в мозг и все ДЗ выполняются с легкостью. Спасибо за доходчивую и не муторную подачу материала!

  • @SimpleCodeIT
    @SimpleCodeIT  7 ปีที่แล้ว +50

    В этом уроке мы рассмотрим как работать с генератором случайных чисел.

  • @vladalu9794
    @vladalu9794 6 ปีที่แล้ว +161

    cout

  • @pav58
    @pav58 6 ปีที่แล้ว +11

    Спасибо за урок. Как всегда все четко, ясно понятно.

  • @UstinovDin
    @UstinovDin 5 ปีที่แล้ว +134

    Если у кого Dev C++ и компилятор ругается, сообщает об ошибке, говорит что srand и rand не определен, то пропишите еще одну библиотеку: #include и не забудьте ctime.

    • @bars6274
      @bars6274 5 ปีที่แล้ว +3

      Спасибо!

    • @hellangel4055
      @hellangel4055 5 ปีที่แล้ว +3

      Благодарю

    • @yaroslavnovichkov6736
      @yaroslavnovichkov6736 4 ปีที่แล้ว +3

      Спасибо большое.

    • @user-yz3cj4nr6u
      @user-yz3cj4nr6u 4 ปีที่แล้ว +2

      О ты бог. Я час не понимал, что с кодом. СПАСИБО!!!

    • @notbakha
      @notbakha 4 ปีที่แล้ว +6

      Удаляй нааахер эту программу. лучше установи вижуалку. самая офигительная прога

  • @user-nt3pf5wd1c
    @user-nt3pf5wd1c 4 ปีที่แล้ว

    Понятно, доступно, понимаю, учусь.С уважением и благодарностью.

  • @user-rj4bh9xu7d
    @user-rj4bh9xu7d 6 ปีที่แล้ว +109

    Лучших онлайн уроков в рунете я не встречал. Маленькое уточнение которое может стать фатальным при отладке это %10 выводит 0 - 9, а не 0 - 10. Чтобы до 10 включительно нужно %11. И зачем выводить генерацию чисел и вывод их на консоль разными циклами? Хотя это зависит от конкретно поставленной задачи. А в общем ОГРОМНОЕ СПАСИБО за такие исчерпывающие уроки. Мне даже препод по программированию так не объяснял как Вы.

    • @user-ly4bp8su2h
      @user-ly4bp8su2h 6 ปีที่แล้ว +1

      Ну тут возможно 10 не включительно,так как условием это точно не оговорено :)

    • @user-mo6tw8fj6h
      @user-mo6tw8fj6h 5 ปีที่แล้ว

      a = rand() % 100 + 1; //Диапозон 0-100 или 1-100?

    • @alleksacha1
      @alleksacha1 5 ปีที่แล้ว

      @@user-mo6tw8fj6h, 1 - 100. +1 означает сдвиг на единицу.

    • @user-mo6tw8fj6h
      @user-mo6tw8fj6h 5 ปีที่แล้ว

      Alexandra Kouleshova спасибо

    • @Kokurorokuko
      @Kokurorokuko 4 ปีที่แล้ว

      Верно! Лайкнул, чтобы не ошибались.

  • @user-kz8pw3qf6i
    @user-kz8pw3qf6i 6 ปีที่แล้ว +35

    Лаконично и понятно, спасибо! Только у тебя изредка внизу черная часть экрана.

  • @aikokulabduashimkyzy9306
    @aikokulabduashimkyzy9306 4 ปีที่แล้ว +2

    Учителя как вы-я вижу впервые 😍

  • @MrRONE777
    @MrRONE777 3 ปีที่แล้ว +1

    Необходимо было сделать белый шум с нормальным распределением, нулевым матожиданием и единичным ско. Всё сделал, потом смотрю, а при разных запусках ничего не меняется. Твоё видео помогло, узнал про srand и time. Спасибо. Толковые у тебя уроки, посмотрел уже их много!

  • @kola33258
    @kola33258 6 ปีที่แล้ว +21

    Очень крутой канал)Супер)

  • @proman8078
    @proman8078 ปีที่แล้ว

    Дай бог тебе здоровья , братан , просто лучший

  • @merrymary1729
    @merrymary1729 5 ปีที่แล้ว +13

    Классные уроки)
    Огромное спасибо!
    P.S Просто балдею от криков ласточек на заднем фоне))

  • @logcom482
    @logcom482 2 ปีที่แล้ว

    Спасибо за понятливое обяснения !!!Удачи тебе чувак!

  • @Ermine882
    @Ermine882 7 ปีที่แล้ว +1

    Как всегда спасибо за урок!

    • @SimpleCodeIT
      @SimpleCodeIT  7 ปีที่แล้ว +2

      Пожалуйста =)

  • @user-jw3xg1xi7h
    @user-jw3xg1xi7h 6 ปีที่แล้ว

    хороший урок. Думаем над заданием)

  • @user-ss2io6sm6k
    @user-ss2io6sm6k 5 ปีที่แล้ว

    Как всегда - спасибо!

  • @Ms001man
    @Ms001man 5 ปีที่แล้ว

    Спасибо за урок!

  • @Firuz26
    @Firuz26 7 ปีที่แล้ว +1

    Спасибо за урок

  • @NazariyDudnik
    @NazariyDudnik 2 ปีที่แล้ว

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

  • @rycore7424
    @rycore7424 3 ปีที่แล้ว +5

    На различных сайтах написано все очень коряво и не подробно, как-то даже заумно, я человек которому легче все запомнить на примерах и твой канал как и сам этот курс великолепен ! Спасибо тебе за этот курс!

  • @ziynatdinkhalbaev5872
    @ziynatdinkhalbaev5872 ปีที่แล้ว

    спасибо тебе бро, научил чего я хотел!!

  • @user-et6qv3ql3r
    @user-et6qv3ql3r 6 ปีที่แล้ว +46

    Для получения случайного числа в каком-либо диапазоне можно воспользоваться формулой: a + rand() % (b - a + 1). a - минимальная цифра в диапазоне, b - максимальная.

    • @Anonymous-jr1vx
      @Anonymous-jr1vx 2 ปีที่แล้ว +3

      Спасибо!

    • @Cos2.
      @Cos2. 2 ปีที่แล้ว +2

      Лучший😃

    • @fnubee7135
      @fnubee7135 ปีที่แล้ว +1

      @U.P. она работает некорректно можешь поэксперементировать

    • @Sam-cg3rl
      @Sam-cg3rl ปีที่แล้ว

      А не проще использовать mt19937? Если нужен диапазон, используй еще и uniform_int_distribution distrib(от, до);

    • @Sam-cg3rl
      @Sam-cg3rl ปีที่แล้ว

      mt и работает быстрее раза в 3

  • @user-vb1xw8sg4o
    @user-vb1xw8sg4o 3 ปีที่แล้ว

    Спасибо огромное!

  • @notforvideoschannel
    @notforvideoschannel 6 ปีที่แล้ว +6

    Если вы работаете в среде MinGW, для этих функций нужно ещё подключить библиотеку cstdlib, иначе выдаст ошибку. Ещё в этой среде, при первом вызове функции rand();, различие возвращаемого значения между запусками программы равно расстоянию в секундах между запусками программы (то есть, не совсем рандом). Чтобы этого избежать, нужно один раз вызвать её просто так, ничему не присваивая.

  • @polmesh2057
    @polmesh2057 ปีที่แล้ว

    Спасибо 🙏 большое 😊

  • @leragadenko8429
    @leragadenko8429 3 ปีที่แล้ว +4

    Те кто перешёл с питона на полюсы, Что за....почему все так...ладно. За урок спасибо!

  • @DJamal1803
    @DJamal1803 ปีที่แล้ว

    Крутые видео !

  • @MichaelPershin
    @MichaelPershin 6 ปีที่แล้ว +3

    Некоторые компиляторы для использования rand и srand требуют подключить библиотеку cstdlib, например Dev-C++

  • @SimpleCodeIT
    @SimpleCodeIT  7 ปีที่แล้ว +1

    #rand #srand #SimpleCode #урокипрограммирования

  • @issatay8876
    @issatay8876 ปีที่แล้ว +1

    спасибо, выручил

  • @vicar-martyr
    @vicar-martyr 3 ปีที่แล้ว

    Ставлю лайк еще до просмотра

  • @m0l0d0ys_time5
    @m0l0d0ys_time5 3 ปีที่แล้ว +33

    Приветствую!
    У меня возник вопрос , какой смысл нам делать второй цикл на вывод arr[i] , когда мы можем еще в первом цикле в теле цикла во второй строчке написать cout

    • @Shiefavv
      @Shiefavv 3 ปีที่แล้ว +2

      я попробовал, в итоге получилось.

    • @Girafik0
      @Girafik0 2 ปีที่แล้ว

      Возможно потому что так программа будет быстрее работать

    • @danilglushko9494
      @danilglushko9494 ปีที่แล้ว

      @@Girafik0 Скорее будет проще читать код другому программисту

  • @user-ut7tj6bp4t
    @user-ut7tj6bp4t 4 ปีที่แล้ว

    Удачи в развитии канала)))

  • @giorgikiladze3230
    @giorgikiladze3230 5 ปีที่แล้ว

    bolshoye spasibo tak derjat

  • @user-ly4bp8su2h
    @user-ly4bp8su2h 6 ปีที่แล้ว +121

    Едрить мои тапки..полегче канал яж таким темпом программистом стану.

    • @TheWladberlin
      @TheWladberlin 4 ปีที่แล้ว +34

      А если еще и скорость на 1,5 поставить, то еще быстрее станешь!

    • @media_soccer
      @media_soccer 4 ปีที่แล้ว +6

      @@TheWladberlin ахахахах, в голос

    • @Stupid_YT_bring_back_nicknames
      @Stupid_YT_bring_back_nicknames 4 ปีที่แล้ว +1

      @@TheWladberlin ну тогда сразу на 2 ставить

    • @TheWladberlin
      @TheWladberlin 4 ปีที่แล้ว +1

      @@Stupid_YT_bring_back_nicknames на 2 это слишком круто :)

    • @arturminiput7587
      @arturminiput7587 4 ปีที่แล้ว +3

      Я таки ставлю;) всё равно скорости не хаватает😅

  • @user-lb1zt9kp9k
    @user-lb1zt9kp9k 7 ปีที่แล้ว +43

    По-моему у вас оговорочка: ведь при делении любого числа на 10, мы всегда будем получать остатки от 0 до 9 (10 никак не получим). Аналогично, если делить число на 2, мы всегда будем получать 0 или 1.
    А так уроки крутые и во всем понятные. Спасибо

    • @serhiyhrytsiuk4376
      @serhiyhrytsiuk4376 6 ปีที่แล้ว +4

      Евгений Пернач правильно подметили. 10 никогда не сгенерируется

    • @user-vk4vr8iy7b
      @user-vk4vr8iy7b 5 ปีที่แล้ว +1

      +1

    • @user-sh9zw7zp2c
      @user-sh9zw7zp2c 4 ปีที่แล้ว +3

      Используем if. Например если хотим числа от 10 до 20
      if (a = rand() % 10 == 9){
      a = rand() % 10 + 11;
      }
      else a = rand() % 10 + 10;
      cout

    • @user-mm5ln4qh5q
      @user-mm5ln4qh5q ปีที่แล้ว +1

      @@user-sh9zw7zp2c хоспаде что это

    • @user-ms3xb7rg2v
      @user-ms3xb7rg2v 11 หลายเดือนก่อน +2

      ​@@user-sh9zw7zp2cДа проще можно. rand()%11 + 10

  • @enceladussatellite1304
    @enceladussatellite1304 3 ปีที่แล้ว

    Спасибо.

  • @lost3575
    @lost3575 7 ปีที่แล้ว

    спасибо!!

  • @empty.1807
    @empty.1807 4 ปีที่แล้ว +5

    Чтобы не вышло : error 'rand' was not declared in this scope
    сперва кодом напишите :
    #include
    #include
    и пишите дальше

  • @chikchirik680
    @chikchirik680 4 ปีที่แล้ว +40

    Тут уместно выражение, которое можно использовать для получения чисел от a до b:
    a + rand()%(b-a+1)

    • @blackfox1175
      @blackfox1175 2 ปีที่แล้ว +1

      не работает эта формула.И как вообще ее понять?

    • @Glist_B_Panamke7
      @Glist_B_Panamke7 2 ปีที่แล้ว +5

      @@blackfox1175 работает. подставь любые два числа (от - до). Например, тебе нужно, чтобы выдавались случайные числа от 1 до 5. подставляешь. 1 + rand() % (5-1+1) = 1+ случайное число от 0 до 4 => тебе выдается случайное число от 1 до 5

    • @Glist_B_Panamke7
      @Glist_B_Panamke7 2 ปีที่แล้ว +18

      @@blackfox1175эта формула - rand % число - работает так:
      1) rand() выдает тебе число в секундах (скажем, 17.543),
      2) после, из сгенерированного числа берется остаток при делении (в данном случае, 17.543 % 10 = 3)
      3) и после всего этого прибавляется какое-то еще число.
      Поэтому, извлекая остаток при делении на 10, ты можешь получить числа от 0 до 9:
      17.540 % 10 = 0,
      17.541 % 10 = 1,
      17.542 % 10 = 2,
      ... % 10 = ... ,
      17.549 % 10 = 9.
      А после, когда ты каждое число-остаток еще увеличиваешь на какое-то число(7, скажем), получаешь:
      (17.540 % 10) + 7 = 0 + 7 = 7, (минимальное число, которое может выдать формула при (% 10))
      (17.541 % 10) + 7 = 1 + 7 = 8,
      (... % 10) + 7 = ... + 7 = ... ,
      (17.549 % 10) + 7 = 9+7 = 16 (максимальное, которое может выдать формула при (% 10))
      _____________________________
      получаешь, что rand() % 10 + 7 выдает числа от 7 до 16 - [7, 17) или [7, 16]
      Его формула ( a + rand()%(b-a+1) ) работает на это же принципе.
      Хочу я, например, случайные числа от 5 до 21 (включительно)
      ----------------------------------------------------------------------------------------------------------
      Значит, минимальное число, которое я получу будет:
      a + rand()%(b-a+1) = 5 + rand() % (21-5+1) = 5 + rand() % 17 = 5 + (случайное число от 0 до 16. В данном случае - 0) =
      = 5 + 0 = 5
      А максимальное число, которое я могу получить, будет:
      a + rand()%(b-a+1) = 5 + rand()%(21-5+1) = 5 + 16 = 21
      Вот я и получаю числа [5, 22) или [5, 21]

    • @user-nj3ii1op1z
      @user-nj3ii1op1z 2 ปีที่แล้ว

      @@Glist_B_Panamke7 подойдет ли эта формула для диапазона (от -x до y)

    • @Glist_B_Panamke7
      @Glist_B_Panamke7 2 ปีที่แล้ว +3

      @@user-nj3ii1op1z Краткий ответ: Да, подойдет.
      Например: нужно тебе вывести числа от -5 до 20 - [-5; 20]. Подставляешь мысленно свои числа.
      -5 + rand() % (20 - (-5)+1) => -5 + rand()% 26
      Получается, что могут быть сгенерированы числа...
      - 5 + число от 0 до 25, где
      -5 + 0 = -5 (минимальное число, которое способна произвести формула)
      -5 + 25 = 20 (максимальное число, которое способна произвести формула)

  • @user-kb6qd8rg4g
    @user-kb6qd8rg4g 4 ปีที่แล้ว

    спасибо

  • @user-wh8gw3pm3f
    @user-wh8gw3pm3f 3 ปีที่แล้ว

    Привет. Есть вопрос. Почему cout нужно выводить через отдельный цикл. Ведь если поместить его в этот же все работает.

  • @TyurinAlexey
    @TyurinAlexey 5 ปีที่แล้ว

    Здравствуйте, а зачем еще один цикл 12:14 я учусь и у меня вот вопрос, так как я не понял этого. Можно ведь так сделать и получим то же самое без лишнего цикла. Я не в коем случае не пытаюсь вас подначить, я просто не понимаю и задаю вопрос как учителю. А понял, если мы делаем 2 цикла то сначала все цифры генерируются а только потом выводятся а если без второго цикла то они по очередности выводятся на экран после генерации, то есть без отладчика это не увидишь все быстро происходит. Вроде кажется что одинаково все, но есть разница, но на результат я как понял это не влияет
    #include
    #include
    using namespace std;
    int main()
    {
    setlocale(LC_ALL, "ru");
    srand(time(NULL));
    int const SIZE = 10;
    int arr[SIZE];
    for (int i = 0; i < SIZE; i++)
    {
    arr[i] = rand() % 10;
    cout

  • @book_riot
    @book_riot 3 หลายเดือนก่อน

    По поводу srand(). Эта функция устанавливает передаваемое пользователем значение в качестве стартового.
    int main()
    {
    srand(45); // устанавливаем стартовое значение - 45
    // Выводим 100 случайных чисел
    for (int count=0; count < 100; ++count)
    {
    cout

  • @user-ck9uf6pw6j
    @user-ck9uf6pw6j 5 ปีที่แล้ว +1

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

  • @banaaboy6504
    @banaaboy6504 5 ปีที่แล้ว +5

    Прирожденный преподаватель. Любому двоечнику объяснит )

  • @witch_meion
    @witch_meion 3 ปีที่แล้ว

    Можете объяснить %-остаток деления как можно использовать и в каких случаях? Я могу использовать при решений задач, но при этом не понимаю почему и как я им пользуюсь

  • @theflameflare
    @theflameflare 8 หลายเดือนก่อน

    Оказалось тут есть достаточно интересные решения у людей. Пожалуй, это первая дз в цикле, где пришлось действительно включить голову, чтобы что-то получить)
    int main()
    {
    setlocale(LC_ALL, "ru");
    srand(time(NULL));
    //Задаём длину массива
    int const ARR_LENGHT = 10;
    int copies = 1;
    int arr[ARR_LENGHT]{};
    //Вывод изначально сгенерированных значений
    cout

  • @OI-LEROY
    @OI-LEROY 5 ปีที่แล้ว +10

    10 ваша запись не вернёт, так как если число будет кратно десяти, то оно поделиться без остатка.

  • @spikeresonance
    @spikeresonance 6 ปีที่แล้ว +28

    Зачем создавать второй цикл, если можно после arr[i] = rand() % 10; просто написать cout

    • @mishalavik4595
      @mishalavik4595 6 ปีที่แล้ว +2

      Сейчас это не имеет значения, хотя ты прав, так проще.

    • @desex5670
      @desex5670 5 ปีที่แล้ว +8

      Для наглядности, не все люди понимают. И он это делает для наглядности кода,так же и потому, что рациональность программы не играет никакого значения

    • @banaaboy6504
      @banaaboy6504 5 ปีที่แล้ว +2

      Для наглядности это делается. Все правильно, при обучении не перемешивает код. Для начинающих понятнее.

    • @coldebolaff1195
      @coldebolaff1195 4 ปีที่แล้ว

      @@banaaboy6504 Затем, что смешивать операции нежелательно. Это в данном случае можно безболезненно в цикле запихнуть и заполнение, и вывод.

    • @but9l471
      @but9l471 3 ปีที่แล้ว

      О том что это можно делать в одном цикле я никогда и не думал
      Спасибо за совет

  • @mishalavik4595
    @mishalavik4595 6 ปีที่แล้ว +1

    Твои уроки как в приложении SoloLearn, только тут больше материала и понятнее чем там.

  • @user-lp9lb1zh9d
    @user-lp9lb1zh9d 3 หลายเดือนก่อน

    Добрый день.
    Возможно я тороплюсь с вопросом!!!
    Но чем отличается библиотека от ???
    Кстати у меня все работает без этих и не каких ошибок, почему так?

  • @user-bb1nk1po5e
    @user-bb1nk1po5e ปีที่แล้ว +1

    привет из 2023. Спасибо большое!

  • @_iCore
    @_iCore 3 ปีที่แล้ว

    В прошлом видео видел, что ты выделил весь код, нажал какую-то комбинацию клавиш и всё выравнялось по табуляциям. Как это сделать?

  • @gloomyfoodeater7408
    @gloomyfoodeater7408 6 ปีที่แล้ว +4

    Оговорки в видео. При записи: rand()%x; число x не включается в диапазон, т.е. множество значений [0;x).

  • @rost1931
    @rost1931 3 ปีที่แล้ว +1

    Для тех кто пишет на "Xcode"
    Что бы сгенерировать рандом.числа пишите
    srand(static_cast(time(nullptr)))

  • @deltaeptat1546
    @deltaeptat1546 3 ปีที่แล้ว +1

    Теперь-то понятно как сиды в майнкрафт работают!

  • @HemulMozyr
    @HemulMozyr 2 ปีที่แล้ว

    а если не использовать библиотеку времени? если объявить переменную инт, но не инициализировать ее. теперь при чтении этой переменной мы получим случайный мусор из памяти и этим мусором инициализировать srand? будет ли так работать?

  • @_e_mask
    @_e_mask 3 ปีที่แล้ว +2

    Я: Мастер Сергей, но как? Сергей: Друг мой, случайные числа не случайны.

  • @OleksandrHlushchuk
    @OleksandrHlushchuk 3 ปีที่แล้ว +2

    Специально не смотрел домашнее задание, потому что хотел сам это сделать. У меня получилось. Когда я изучил двухмерный динамический массив, у меня возникла идея: сделать программу, где нужно ввести количество рядков и столбцов чтобы сделать динамический массив, например 4х5, и в нем должны быть случайные числа которые не повторяются и также они должны быть от 1 и до всего количества элементов в таком массиве. То есть чтобы можно было посчитать от 1 до последнего элемента в массиве (если 4х5, то до 20-ти), где эти цифры лежат в случайном порядке. Я это сделал!!!! Предлагаю всем сделать такое (скажем так челендж).
    По скрипту: огромнейшее спасибо за уроки!!!

    • @OK_3D_JOY
      @OK_3D_JOY 2 ปีที่แล้ว

      Ты имеешь ввиду судоку?

    • @OleksandrHlushchuk
      @OleksandrHlushchuk 2 ปีที่แล้ว

      @@OK_3D_JOY Нет, проще

    • @dotlvforge5631
      @dotlvforge5631 8 หลายเดือนก่อน

      @@OK_3D_JOYЭто скорее будет как матрица 4х5

  • @sanjous1234
    @sanjous1234 4 ปีที่แล้ว

    Как цифры, указывающие на строку в визуал студио добавить?

  • @user-tf9hl4ig9w
    @user-tf9hl4ig9w 6 ปีที่แล้ว +1

    Псевдослучайных чисел.. Ну а так ЛАЙК.

  • @chelovechek7773
    @chelovechek7773 3 หลายเดือนก่อน

    👍

  • @Look-and-say
    @Look-and-say 5 ปีที่แล้ว

    Было бы интересно увидеть генератор рандомных символов с пробелами

    • @lordov_yt
      @lordov_yt ปีที่แล้ว

      я прочитал с проебами

  • @b1ackmail767
    @b1ackmail767 2 ปีที่แล้ว

    А как сделать так, чтобы количество элементов в массиве можно было задавать с ввода с клавиатуру. В MS CODE выдает ошибку, так как количество элементов в массиве может принимать только константные значения?

  • @mcoxotnik
    @mcoxotnik 7 หลายเดือนก่อน

    Проверил, при деление по модулю на 10, выводятся все числа кроме 10. Чтобы получить 10, необходимо делить по модулю на 11.

  • @DevilJokerTV
    @DevilJokerTV 6 ปีที่แล้ว +5

    Генерация случайных чисел на границах (от числа1 до числа2):
    int rn[10];
    int min = 5, max = 13; //границы
    srand(time(NULL)); //сеем зерно
    for (int i = 0; i < _countof(rn); i++) //_countof(rn) можно написать вместо sizeof(rn)/sizeof(rn[0])
    {
    rn[i] = rand() % (max - min + 1) + min; //генерируем случайное число от min до max
    cout

  • @user-ls3fu1uu1t
    @user-ls3fu1uu1t 2 ปีที่แล้ว

    Здравствуйте!
    Подскажите пожалуйста, можно ли в visual studio c++ делать графики зависимости?

    • @arsunchik
      @arsunchik ปีที่แล้ว

      Можно делать всё, только надо подключать библиотеки

  • @Violator655
    @Violator655 6 ปีที่แล้ว

    мне в кодеблокс потребовалось добавить #include в заголовок, иначе функция rand была недоступной для использования.

  • @Alekseiy1000
    @Alekseiy1000 6 ปีที่แล้ว +1

    Может конечно есть другой вариант проверки .... но у меня вышло так
    За уроки спасибо
    #include
    #include
    #include
    using namespace std;
    void main()
    {
    SetConsoleCP(1251);
    SetConsoleOutputCP(1251);
    srand(time(NULL));
    int const SIZE = 10;
    int Arr[SIZE];
    //заолняем массив случайными числами
    for (int i = 0; i < SIZE; i++)
    {
    Arr[i] = rand() % 10;
    for (int j = 0; j < i; j++) //Запускаем второй цикл для проверки заполненной части массива
    {
    if (Arr[i] == Arr[j]) //Проверяем массив на нахождения одинаковых чисел, если таковые имеются то
    {
    i--; //мы меняем значение i и выходим с проверки
    break;
    }
    }
    }
    //Выводим массив на экран
    for (int i = 0; i < SIZE; i++)
    {
    cout

    • @dimapetrashchuk3036
      @dimapetrashchuk3036 6 ปีที่แล้ว +1

      У вас есть недоработка. Если второй цикл, в котором проверка заменит число на сходное с другим из предыдущих, то цикл пойдет дальше. Например у вас есть массив:
      [0] = 7
      [1] = 5
      [2] = 3
      [3] = 8
      [4] = 6
      [5] = 9
      [6] = 9
      то, при срабатывании вашей проверки во втором цикле, программа может заменить [6] = 9 например на [6] = 3 и так и оставит. Но "3" у вас уже есть в [2] = 3.

  • @paul.antares
    @paul.antares 3 ปีที่แล้ว +1

    В iostream включили ctime да?

  • @jenicatune1325
    @jenicatune1325 2 ปีที่แล้ว

    Только подумала, а если нужно без повторов значений, и тут же домашка по нему XDDDDD

  • @mishalavik4595
    @mishalavik4595 6 ปีที่แล้ว

    Я подсел на твои уроки как на наркотики...

  • @user-of6dx1pm2s
    @user-of6dx1pm2s 5 ปีที่แล้ว

    не могу понять зачем выводить массив через cout в новом цикле(2й), если его можно вывести в первом

  • @user-cc7rj7qr1g
    @user-cc7rj7qr1g 4 ปีที่แล้ว +3

    Подскажите,пожалуйста, а как заполнить массив случайными вещественными числами?

    • @kira12stand15
      @kira12stand15 4 ปีที่แล้ว

      int arr[]{(число которое нужно) + rand() % "Число которое нужно}

    • @kira12stand15
      @kira12stand15 4 ปีที่แล้ว

      Через "Число которое нужно" ты делаешь определенный диапазон

  • @abcloud7672
    @abcloud7672 วันที่ผ่านมา

    Хотел использовать адрес памяти какой нибудь переменной для передачи в srand(), так как адрес памяти постоянно меняется. Но как оказалось, в моей программе, (которую я делал на разных системах, в том числе и на windows 7 в Code Blocks с инструментами MinGW, компилятором g++), адреса памяти при перезапуске программы не меняются!
    Начал копать и как оказалось дело в технологии ASLR - Address Space Layout Randomization, которая в Win 7 не использовалась и может быть отключена и на более поздних системах. Это ASLR меняет адреса памяти.
    Вопрос: time не очень случайный параметр. Какие ещё случайные параметры можно передать в srand()?

  • @user-gx7wk8xn7z
    @user-gx7wk8xn7z 3 ปีที่แล้ว +3

    бля сколько умников в комментах, просто ужас)
    ну раз такие умные, создайте свой плейлист с такими уроками и отстаньте от человека!
    А тебе, спасибо большое, очень полезные знания... Надеюсь, вскоре устроюсь на работу где-то, благодаря тебе!

  • @inquisitor4894
    @inquisitor4894 ปีที่แล้ว

    rand() % a + b, где a - это количество цифр (диапазон) чисел, которое будет генериться в rnad(); b - число, с которого начитается генерация.

  • @circularka9513
    @circularka9513 5 ปีที่แล้ว

    Как называется среда разработки?

  • @mihail8159
    @mihail8159 16 วันที่ผ่านมา

    🥰🥰🥰🥰

  • @LoneWolf-ct1fr
    @LoneWolf-ct1fr 4 ปีที่แล้ว +6

    больше похоже на какой-то костыль

  • @ghostdragon8167
    @ghostdragon8167 5 ปีที่แล้ว +5

    rand()%10 выводит числа не от 0 до 10, а то 0 до 9

  • @Viamsupervadetvadens
    @Viamsupervadetvadens 6 ปีที่แล้ว +1

    up

  • @liderboy5617
    @liderboy5617 ปีที่แล้ว

    это конечно не так важно, однако мне просто интересно, на минуте 3:30 при генерации случайных чисел, у вас появились числа 41 и 18467, когда я повторил ваш код и активировал его у меня появились эти же числа, это значит что генерация рандомных чисел без использования srand() у всех будет одинакова?

  • @tabbo5533
    @tabbo5533 ปีที่แล้ว

    Я совсем недавно начал программировать на язык С++ и вот такой вопрос возник у меня, если мы знаем, что % - это остаток от деления, то как мы на(10:25) можем получить промежуток генерируемых чисел от 5 до 15? Возьмём максимальный остаток, напрмер, 19%10=9, а вот уже 20%10=0, возможно я что-то не так понял, объясните пожалуйста...

    • @learning4702
      @learning4702 ปีที่แล้ว

      Там еще добавляется пятерка, смещающая диапазон [0;10) на 5 единиц, то есть получается [5;15)

  • @OtryadPanimaniya
    @OtryadPanimaniya 5 ปีที่แล้ว

    а как сделать чтобы выдавал вещественные числа?

  • @user-gx5qu1rx9l
    @user-gx5qu1rx9l 5 ปีที่แล้ว +7

    ДЗ:
    Создать программу, в которой заполняется массив случайных чисел из 10 элементов.
    Диапазон элементов массива - от 0 до 20. Главное условие - каждый элемент массива
    должен быть уникальным, т. е. не повторятся с другими элементами
    Такой вариант решения:
    setlocale(LC_ALL, "Rus");
    srand(time(NULL));
    int RandomNum;
    int arr[15]{};
    for (int i = 0; i < size(arr); i++)
    {
    RandomNum = rand() % 20 + 1;
    for (int j = 0; j < size(arr); j++)
    {
    if (RandomNum == arr[j])
    {
    RandomNum = rand() % 20 + 1;
    j = -1;
    }
    }
    arr[i] = RandomNum;
    cout

  • @user-id3fc8qs7y
    @user-id3fc8qs7y 3 ปีที่แล้ว

    Кстати, лучше рассказывай с самых первых уроков про типы данных с установленным размером, а то потом от недопрограммистов программы на других платформах могут ломаться)

  • @erhundvimmbseowde2918
    @erhundvimmbseowde2918 29 วันที่ผ่านมา

    С++ оказывается крайне схож по синтаксису с обычным С... а я то думал будет тяжело переучиваться.

  • @zhosealdo4265
    @zhosealdo4265 7 ปีที่แล้ว

    приветствую тебя автор канала, большое спасибо за уроки и за тематику. Подскажи пожалуйста, какую приобрести книгу именно по С++, что бы начать осваивать с нуля. Книга плюс видео уроки, мне так удобней, и легче осваивать материал. До этого никакие языки не изучал. Начал читать книгу ( освой самостоятельно С++ за 21 день. Автор Джесс Либерти) Но читать книгу на компьютере это геморой для меня, а найти ее нигде не могу, даже в интернет магазинах. Может что лучше знаешь. И если есть про программирование АВР с нуля, посоветуй книги будь добр. А вообще что бы программировать микроконтроллер надо же знать какой нибудь язык? С++ например.

    • @ethermanmac6724
      @ethermanmac6724 6 ปีที่แล้ว

      Я программировал микроконтроллеры всегда на Ассемблере.. никаких глюков, быстродействие, и малый вес после компиляции. т.е. ненужно брать более дорогой МК, для того чтобы туда всунуть прогу на высокоуровневом языке написанную, а написать на почти машинном языке, и залить в недорогой МК. Но это выбор каждого, как кто хочет. Для МК лучше Ассемблера наверное нет и не будет, где-то читал, что все системы жизненно-важные для космического оборудования разработаны и спроектированы с использованием как раз низкоуровневых языков, таким без сомнения является Ассемблер. Но без высокоуровневых сейчас тоже никуда, поэтому я тоже решил С++ учить. Например есть проект в котором МК может работать автономно и с внешним управлением из ПК или смарта, вот тут как раз для написания приложений для ПК и смарта лучше всего С++ (или другой высокоуровневый), а прога,которая будет залита в МК - однозначно на Ассемблере.

    • @ethermanmac6724
      @ethermanmac6724 6 ปีที่แล้ว

      Тоже паралельно этим урокам от Сергея, читаю эту книгу. Кстати залил из сети ее версию в фб2 под читалку, конвертнул под мой киндл, и супер получилось, там верстка и ссылки все работает, заметки закладки и т.д. т.е. почти как реальная бумажная книга, а не как обычный скан читать в пдф с компа. и глаза не устают с читалки и все функции как у обычной книги. Поищите, в сети есть.

    • @zhosealdo4265
      @zhosealdo4265 6 ปีที่แล้ว

      благодарю, обязательно буду иметь ввиду. ТВОЙ комент натолкнул на ознакомление ассемблера

  • @sergo530
    @sergo530 2 ปีที่แล้ว

    Здравствуйте скажите пожалуйста а вы можете мне помочь с генерировать числа?

  • @adventuresinthedark5101
    @adventuresinthedark5101 6 ปีที่แล้ว

    Урок гуд, но подскажите плз, как генерировать буквы? Или кто может кинуть исходник? Я сам разберусь.

  • @pvp717
    @pvp717 ปีที่แล้ว

    Вот мой вариант цикла генерирующего заданное в size количество рандомных чисел в массив intArr[size].
    const int size = 10;
    int intArr[size]{};
    srand(time(NULL));
    for (int i = 0; i < size; i++) {
    bool flag = true;
    while (true) {
    int buffRand = rand()% size;
    for (int j = 0; j < i; j++) {
    if (intArr[j] == buffRand) {
    flag = false;
    break;
    }
    }
    if (flag) {
    intArr[i] = buffRand;
    break;
    }
    else
    {
    flag = true;
    }

    }
    }

  • @yaroslavnovichkov6736
    @yaroslavnovichkov6736 4 ปีที่แล้ว +4

    Почему ты говоришь, что значения при rand() % 10 могут получаться от 0 до 10? Остатком от деления на 10 могут быть числа 0, 1, 2, 3, 4, 5, 6, 7, 8, 9. Значит может быть от 0 до 9

    • @Rsjnn
      @Rsjnn 2 ปีที่แล้ว +2

      Все мы ошибаемся.

  • @alamr2775
    @alamr2775 4 ปีที่แล้ว +3

    нам ничего не нужно знать о функции, если она работает
    ))

  • @user-zc6pd7jr3i
    @user-zc6pd7jr3i 3 ปีที่แล้ว +2

    У меня функция time(NULL) заработала без библиотеки . Странно

  • @yellowmoonishka1725
    @yellowmoonishka1725 2 ปีที่แล้ว

    Ths