Курс супер классный, для меня, как будто в самом начале вы дали задание, сделать такой вот примитивненький калькулятор через if else и switch case, не смотря то, как напишите такую программу вы, я самостоятельно попытался изучить что мне было непонятно, и уже после самостоятельно мне удалось написать оба варианта, видя успех, и осознание того, что я понимаю что я делаю есть желание изучать c++ дальше))
time(NULL) оч плохой вариант для seed. Потому что время выдаётся с точностью до секунды. Это оч плохо ибо если вы будете дёргать перезагрузку генератора случайных чисел чаще , а при последовательном вызове rand это почти наверняка у вас получится повторяющиеся последовательности случайных чисел. По сути эта функция выдаёт эту последовательность со сдвигом. Если мы хотим хорошую хаотичность то надо дёргать srand не реже чем через 16 генераций. И использовать для этого наносекундный таймер а не этот секундный. Если реже то числа или последовательности будут повторяться...и вобще для генерации лучше использовать не эту тупую функцию а получше, которая даёт длинную последовательность псевдослучайных чисел. Качество генератора случайных чисел или как говорят его энтропия это оч важный параметр Чем выше она тем лучше. Особенно это видно в играх которые постоянно генеярт всякие случайные числа. Если плохой генератор то игра будет так же плохой ваши персонажи и их поведение будет предсказуемым и в игру станет неинтересно играть! Это оч важная тема для тех кто собирается писать игрушки.
а я сделал программу для вычисления корней квадратного уравнения (посмотрел в интернете только подключение cmath (для вычисления квадратного корня через sqrt)
Лучше всего создавать рандомный девайс и вызывать рандомные числа через Твистер и в дестрибьюшене указывать диапозон. Потому что именно так получится действительно рандом. У Этого видео рандом такой, если вышло какое либо число, допустим 20, он точно не вернётся к 20 до тех пор, пока не пройдёт весь цикл( Допустим до ста). Чтобы рандом был реально рандомным, нужно создать девайс и использовать генератор случайных чисел mt19937(Twister). Подключаете include и пишите код: // Создание случайного устройства, которое используется для инициализации генератора random_device rd; // Генератор случайных чисел (Mersenne Twister) mt19937 gen(rd()); // Диапазон случайных чисел (например, от 1 до 100) uniform_int_distribution distrib(1, 100); // Получение случайного числа int random_number = distrib(gen); cout
А ще можна ось так от без else. Сьогодні експериментував )). float a, b, c; char p; std::cin >> a; std::cin >> b; std::cin >> p; if (p == '+') { c = a + b; } if (p == '-') { c = a - b; } if (p == '*') { c = a * b; } if (p == '/') { c = a / b; } std::cout
як я зрозумів тут мається на увазі без "else if" це не доречне використання логічних виразів так як буде перевірятись кожна умова хоча при вірності однієї з них інші вірними бути не можуть тому варто використовувати "else if" де після знаходження вірної умови наступні перевірятись не стануть
Большое спасибо, очень интересные уроки, решила учить в качестве хобби, мой потолок в компьютерах это включать диспетчер задач, но у вас всё очень понятно
4:50 зачем создавать отдельную переменную, если можно сразу вывести значение? Код короче, действий меньше - оптимизация лучше. Пример: if (math == '+') std::cout
Интересный факт с if и else и с switch case switch(перем) { case значение: код } = if (значение) { Код } Остальные case = else if (значение) { Код } default: код = else { Код }
Лестница в небо. Бесконечно высокая. Но состоит из отдельных маленьких ступенек. Преподаватель поднимается по ним плавно, не спеша, по порядку. С ним идти ЛЕГКО!
@@MrSTAR-qh1xj Вобщем, насколько я понял, это "не инициализированная память" проще говоря - переменная без значения. Задаёшь переменной значение при создании (если это возможно) и этой "ошибки" не будет
Вопрос по случайным числам. Заметил, что функция из видео генерирует случайные числа всегда в большую сторону. Поставил диапазон до 100. Числа всегда идут от меньшего к большему, а когда доходит до границы диапазона, то следующее число обязательно будет самым маленьким. А когда решил расширить диапазон чисел до 1000 и более, то заметил, что тенденция такая же. Но при этом увеличение идет незначительное, на 10-15 пунктов. Как сделать генерацию более рандомной?
нет операции деления с остатком потому что стандартная операция / выполняет не ту операцию для целых чисел. в компе такой операции нет, но а С++ да. по сути это неправильная её трактовка. И когда в школе проходят деление то так тоже не делают. Всегда когда делят нацело подразумевается неполное частное и остаток. Т.е 2 числа в качестве результата а не одно! Но в С++ так не запишешь. Хотя в Питоне к примеру легко. А в С++ можно вернуть только 1 число: либо неполное частное, либо остаток. Отсюда и 2 операции. Но на самом деле это одна операция выдающая сразу 2 числа. Есть функция div возвращающая сразу 2 числа. Но она работает только для знаковых чисел. Для беззнаковых такой функции нет...
С таким написание кода по рандомным числам последующие запуски программы всегда дают результат не сильно отличный от предыдущего в большую сторону. Все равно есть закономерность получения рандомных чисел. Как уйти от этого?
Никак) закономерность будет всегда, просто человек её предугадать не может Можешь записывать последний запуск или завершение программы в файл (секунды с начала эпохи допустим) и при следующем запуске брать это число и от него уже через какую то функцию генерировать (допустим разделить на текущее время). Но мне хватало простой генерации от текущего времени
18:25 мы вызываем в srand функцию time с параметром NULL srand(time(NULL)); и здесь ты говоришь что теперь мы не зависим от времени. Разве не наоборот??? Как раз зависимость от текущего времени нам и позволяет получать различные значения в функции rand(). Или ты просто упростил для новичков чтобы не сбились ? Или я не понимаю?
ты прав. тут не совсем рандомные числа генерируются. лучше изучить это самостоятельное. Используется линейный конгруэнтный метод, а srand устанавливает seed этой формулы
Здравствуйте! Смотрю Ваш курс, очень нравится, все понимаю, хотя от программирования далек. Спасибо большое. Объясните, пожалуйста, как понять, куда ставить >, когда мы используем Cin и cout? В какую сторону стрелочки должны быть в каким случаях?
также можно было сделать и наоборот но для понятие ее людям сделали так и вообще все можно было сделать как в yoptaScript но это уже бред и учите машинный код а не эту фигню@@cryptedddd2940
Возможно тут 2 проблемы: 1) Наверное ты к res неправильно пропписал + - * / 2) Добавь ко всем условиям знак умножения(*) перед кавычками присвоения символа if(math == *"+") {res = num1 + num2; }. При комплияции скорее всего выскочет ошибка -1, но нажимай кнопку "Всеравно выполнить отладку"
у меня неправильный ответ выдает .какие то дроби постояно получаються . хоть делю или умножаю всеравно доли выдает.а в коде ошибок нет . что может быть ?
Классные видео, все понятно Но такой вопрос: если человек в вел два числа допустим 5 и 0 На ноль делить нельзя, что в таком случае делать? Я знаю что это вроде можно обойти, но как?
Можно при операции деления проверять num2, если 0 то выводить то что нельзя делить на ноль Можно через try - catch Обработка исключений, так как деление на ноль вызовет ошибку мы можем её поймать и вывести что на ноль делить нельзя, но вариант с проверкой мне нравится больше
Спасибо за урок, у меня такая проблема, когда ввожу (char math;) конечно без скобок, у меня выдает ошибку "использование имени типа не допускается", в чем может быть проблема? предлагает записать как (char; math;).
и кстати когда уже написал (char math;) после нажатия на ентер, вся эта строка уходит правее, появляется отступ, как будто я нажал на tab, с чем это связано может быть
к меня выдает в результатах какую чушь посмотрите код он правильный switch (math) { case '+':num3 = num1 + num2; break; case '-':num3 = num1 - num2; break; case '*':num3 = num1 * num2; break; case '/':num3 = num1 / num2; break; } он как будто рандомные значения выдает
создашь список символов или строку из символов и таким же образом как он будешь создавать рандомный индекс и вытаскивать элемент с этим индексом из списка или строки))
Товарищи, нужна помощь! Я, почему-то, не могу создать два исходных файла для проекта (ну, типо, 1 файл - 1 урок, а 2 файл - 2ой урок). Пишет, что не может найти исходный файл и так со всеми исходными файлами в проекте, но если оставить только один файл, то всё будет работать. Что делать?
Допустим цикл for for (int i = 0, i < 5; i++) Тут первый параметр объявление переменной i типа int, дальше условие цикла - пока i < 5, а дальше что будет происходить с i на каждой итерации цикла - то есть прибавляется 1 Так же можно делать в while или do-while while (i < 5) { i++; } Ну так то много где, намного удобнее писать ведь так i = i + 1 → i += 1 → i++
А я так понял не про инкремент и декремент имелось ввиду. Когда тебе нужно перезаписать переменную от себя же. Тоесть умножить на два будет вместо a = a * 2 → a *= 2
В коде идет проверка на "+, -, *, /" И если эта проверка не нашла не одного из этих значений То запуститься default который выдаст на экран текст с надписью error
тут видает ошибку в каждом ,,==" код ошибки C2446 и E0042 if (math == "+") res = num1 + num2; else if (math == "-") res = num1 - num2; else if (math == "*") res = num1 * num2; else if (math == "/") res = num1 / num2; Как починить?
5.24, автор, если читаете комментарии, какая у вас ошибка? научитесь их признавать и объяснять, чтобы люди с полного нуля не лазили по всему интернету часами ища ответ. я лучше уйду к авторам которые "прошу прощения я ошибся, здесь надо по-другому сделать". в анрил энжин у вас так же, заговариваетесь и путаете местами определения. я не могу понять в чем моя ошибка, я только пытаюсь учиться, но если все сделано точь-в-точь как на видео, но при этом ваше видео обрезается на моменте ошибки и начинается с того момента где уже получилось компиллировать, о чем то это наверно говорит.
@@abuda6i не вижу смысла спорить. я новичок, а видео смонтировано поверх ошибок, они их не исправляют и не объясняют, а просто срезают часть видеоурока
Чел, это бесплатный курс, непонятна твоя истерика с угрозами куда-то там уйти. Автор объясняет очень доходчиво, наглядно и по три раза. Твоя злость это следствие нежелания твоего мозга учиться, а не плохой падачи материала автором. Сять спокойно, посмотри ещё раз, потом ещё раз и так, пока не поймёшь в чем у тебя косяки
хорошо что есть такие ролики ибо в универе уже задали решать задачки, а как начинающий с нуля, даже базы не знаю 😢 спасибо большое за труд ❤
Спасибо вам большое, я будучи полным нулём в программировании сразу начал понимать эту тему благодаря вашим лекциям. ОГРОМНОЕ ВАМ СПАСИБО ЗА ВАШ ТРУД.
Курс супер классный, для меня, как будто в самом начале вы дали задание, сделать такой вот примитивненький калькулятор через if else и switch case, не смотря то, как напишите такую программу вы, я самостоятельно попытался изучить что мне было непонятно, и уже после самостоятельно мне удалось написать оба варианта, видя успех, и осознание того, что я понимаю что я делаю есть желание изучать c++ дальше))
Видики шикарны, смотрю на одном дыхании. Спасибо!
time(NULL) оч плохой вариант для seed. Потому что время выдаётся с точностью до секунды. Это оч плохо ибо если вы будете дёргать перезагрузку генератора случайных чисел чаще , а при последовательном вызове rand это почти наверняка у вас получится повторяющиеся последовательности случайных чисел. По сути эта функция выдаёт эту последовательность со сдвигом. Если мы хотим хорошую хаотичность то надо дёргать srand не реже чем через 16 генераций. И использовать для этого наносекундный таймер а не этот секундный. Если реже то числа или последовательности будут повторяться...и вобще для генерации лучше использовать не эту тупую функцию а получше, которая даёт длинную последовательность псевдослучайных чисел. Качество генератора случайных чисел или как говорят его энтропия это оч важный параметр Чем выше она тем лучше. Особенно это видно в играх которые постоянно генеярт всякие случайные числа. Если плохой генератор то игра будет так же плохой ваши персонажи и их поведение будет предсказуемым и в игру станет неинтересно играть! Это оч важная тема для тех кто собирается писать игрушки.
Приведи пример пж классной функции и как это все вписать
кто нибудь откройте форточку ...
он прав
Он прав@@mason228x
Спасибо за инфу
Спасибо за эти уроки, все понятно, качественно, подробно!
Спасибо за такой огромный труд. Автор просто супер!!!
Я во время просмотра прошлого ролика уже сделал калькулятор и тут урок с калькулятором! Класс!
а я сделал программу для вычисления корней квадратного уравнения
(посмотрел в интернете только подключение cmath (для вычисления квадратного корня через sqrt)
Спасибо за столь ценные уроки!
Лучше всего создавать рандомный девайс и вызывать рандомные числа через Твистер и в дестрибьюшене указывать диапозон. Потому что именно так получится действительно рандом. У Этого видео рандом такой, если вышло какое либо число, допустим 20, он точно не вернётся к 20 до тех пор, пока не пройдёт весь цикл( Допустим до ста). Чтобы рандом был реально рандомным, нужно создать девайс и использовать генератор случайных чисел mt19937(Twister). Подключаете include и пишите код:
// Создание случайного устройства, которое используется для инициализации генератора
random_device rd;
// Генератор случайных чисел (Mersenne Twister)
mt19937 gen(rd());
// Диапазон случайных чисел (например, от 1 до 100)
uniform_int_distribution distrib(1, 100);
// Получение случайного числа
int random_number = distrib(gen);
cout
Спасибо большое!
А ще можна ось так от без else. Сьогодні експериментував )).
float a, b, c;
char p;
std::cin >> a;
std::cin >> b;
std::cin >> p;
if (p == '+') { c = a + b; }
if (p == '-') { c = a - b; }
if (p == '*') { c = a * b; }
if (p == '/') { c = a / b; }
std::cout
як я зрозумів тут мається на увазі без "else if" це не доречне використання логічних виразів так як буде перевірятись кожна умова хоча при вірності однієї з них інші вірними бути не можуть тому варто використовувати "else if" де після знаходження вірної умови наступні перевірятись не стануть
@@_1mrscool11_9 и так можно делать но синтаксиески не правильно я как понимаю
@@krafti877 проверка выполняется, а тоесть занимает больше времени, в случае elseif если 1 условие выполнено то комп не будет проверять следующие.
@@wassabitv3038 спс
Большое спасибо, очень интересные уроки, решила учить в качестве хобби, мой потолок в компьютерах это включать диспетчер задач, но у вас всё очень понятно
как успехи?
16:07 функция rand() не возвращает число между 0 и 1, она возвращает целое число в диапазоне от 0 до RAND_MAX. по дефолту RAND_MAX = 32767
Калькулятор: создан✅
Теперь я C++ разработчик
Ну дак а что ищо нужно😅
Готов к работе за 100к/мес, буду создавать сотни калькуляторов в смену)
@@crash8286 500k/мес)
Очень благодарен за ваш труд.
Супер!!! Спасибо❤
за два часа залпом 5 видео посмотрел очень просто и интересно смотреть. Включил сокроть воспроизведение на 1.75 и кайфую
4:50 зачем создавать отдельную переменную, если можно сразу вывести значение? Код короче, действий меньше - оптимизация лучше.
Пример:
if (math == '+')
std::cout
да, и я так делал.
в будущем если будешь работать с ответом, отдельная переменная пригодится, а так можно и без нее
Интересный факт с if и else и с switch case
switch(перем) {
case значение: код
}
=
if (значение) {
Код
}
Остальные case = else if (значение) {
Код
}
default: код = else {
Код
}
Лестница в небо. Бесконечно высокая. Но состоит из отдельных маленьких ступенек.
Преподаватель поднимается по ним плавно, не спеша, по порядку. С ним идти ЛЕГКО!
Начал изучать плюсы после жс и питона. Ну в принципе пока что мне язык нравится.
Подскажите пожалуйста,, почему у меня на последней строке с res ошибка. Под res зеленая линия зигзагом, ПОЧЕМУ ТАК?
это ни на что не влияет
Зелёная линия в большинстве IDEA означает, что это слово не распознано. Скорее всего там просто синтаксическая ошибка (пока не посмотрел видео).
Это не ошибка.
Вернее - система распознаёт это как ошибку, но на работу это не влияет.
Вроде....
@@MrSTAR-qh1xj Вобщем, насколько я понял, это "не инициализированная память" проще говоря - переменная без значения.
Задаёшь переменной значение при создании (если это возможно) и этой "ошибки" не будет
Спасибо за урок!
тема с зависимостью рендера случайного числа от времени не раскрыта. В остальном огонь
19:20 также выдаёт ошибку. Лучше писать
Вопрос по случайным числам. Заметил, что функция из видео генерирует случайные числа всегда в большую сторону. Поставил диапазон до 100. Числа всегда идут от меньшего к большему, а когда доходит до границы диапазона, то следующее число обязательно будет самым маленьким. А когда решил расширить диапазон чисел до 1000 и более, то заметил, что тенденция такая же. Но при этом увеличение идет незначительное, на 10-15 пунктов. Как сделать генерацию более рандомной?
заметил, что рандомные числа, которые создает эта функция всегда идут от меньшего к большему
1 > 7 > 17 > 27 > 34 и т.д
можно ли это как-то исправить?
У меня также
Реально
У меня такого нет...
Сдал?
У меня вообще никакое число не высвечивается
Здравствуйте, можете помочь с этой ошибкой?
'rand' was not declared in this scope
нет операции деления с остатком потому что стандартная операция / выполняет не ту операцию для целых чисел. в компе такой операции нет, но а С++ да. по сути это неправильная её трактовка. И когда в школе проходят деление то так тоже не делают. Всегда когда делят нацело подразумевается неполное частное и остаток. Т.е 2 числа в качестве результата а не одно! Но в С++ так не запишешь. Хотя в Питоне к примеру легко. А в С++ можно вернуть только 1 число: либо неполное частное, либо остаток. Отсюда и 2 операции. Но на самом деле это одна операция выдающая сразу 2 числа. Есть функция div возвращающая сразу 2 числа. Но она работает только для знаковых чисел. Для беззнаковых такой функции нет...
Большое спасибо, полезно потратил время я считаю
Спасибо за видео!
Почему ты не пишешь using namespace std;
С таким написание кода по рандомным числам последующие запуски программы всегда дают результат не сильно отличный от предыдущего в большую сторону. Все равно есть закономерность получения рандомных чисел. Как уйти от этого?
Никак) закономерность будет всегда, просто человек её предугадать не может
Можешь записывать последний запуск или завершение программы в файл (секунды с начала эпохи допустим) и при следующем запуске брать это число и от него уже через какую то функцию генерировать (допустим разделить на текущее время). Но мне хватало простой генерации от текущего времени
18:25 мы вызываем в srand функцию time с параметром NULL srand(time(NULL)); и здесь ты говоришь что теперь мы не зависим от времени.
Разве не наоборот???
Как раз зависимость от текущего времени нам и позволяет получать различные значения в функции rand().
Или ты просто упростил для новичков чтобы не сбились ?
Или я не понимаю?
ты прав. тут не совсем рандомные числа генерируются. лучше изучить это самостоятельное. Используется линейный конгруэнтный метод, а srand устанавливает seed этой формулы
Cпacибo
Здравствуйте! Смотрю Ваш курс, очень нравится, все понимаю, хотя от программирования далек. Спасибо большое. Объясните, пожалуйста, как понять, куда ставить >, когда мы используем Cin и cout? В какую сторону стрелочки должны быть в каким случаях?
cout > потому что эту информацию получается вводят в программу, это я так понял этот материал
@@prettydazz cout имеет значение c вывод. std::cout num1; Показываешь что ввод пользователя нужно записать туды >> в перменную num1.
также можно было сделать и наоборот но для понятие ее людям сделали так и вообще все можно было сделать как в yoptaScript но это уже бред и учите машинный код а не эту фигню@@cryptedddd2940
Спасибо искал норм калкуятор для практики
Мы ждём 6-части
Почему при вводе диапазона от 2 до 5 в ранде может выйти 6?
строчка int result = 2 + rand() % 5
Товарищи, остановился на этой строке "std::cout
Возможно тут 2 проблемы:
1) Наверное ты к res неправильно пропписал + - * /
2) Добавь ко всем условиям знак умножения(*) перед кавычками присвоения символа if(math == *"+") {res = num1 + num2; }. При комплияции скорее всего выскочет ошибка -1, но нажимай кнопку "Всеравно выполнить отладку"
Нечего себе. Я с 1 по 5 урока буду втягивать информацию, но пока изучаю только теорию
у меня неправильный ответ выдает .какие то дроби постояно получаються . хоть делю или умножаю всеравно доли выдает.а в коде ошибок нет . что может быть ?
Спасибо автору!
Если у вас выдает ошибки, то просто напишите заново строку , а если не то , то не забывайте ставить ";" в конце
спс это круто мне помогло:)
почему-то пишет, что "rand" и
"srand" не объявлены (пишу на codeblocks)
Можно использовать using namespace std
А сайт с домашними заданиями платный??? Скажите пожалуйста! Видео очень помогают
да
можно более подробно о том, что значит зависимость от времени?
Значит что рандомное число, которое создалось не будет зависить от времени, к примеру то, что новое число сгенерируется через 5 минут.
@@HS-ng7hw спасибо большое! =)
как на macbook в консоли vscode убрать все ненужные данные?
по типу расположения файлов, репозиториев, подключения библиотек?
В консоли vs хз, а просто в консоли cls
Если я вас правильно понял, вы просто должны зайти в настройки, порыться и отключить ненужные окна
А для чего функцию рандома прибавлять к единице? У меня и без единицы всё работает. Не понял этот момент
Это начало диапазона, можно установить нужное число, второе число количество чисел. Пример 3+rand()%15 - получите от3 до 18
Спасибо
Подскажите как вы так быстро выводите не копируя текст?
выделил текст и нажал Cntrl + C что бы скопировать и Cntrl + V что бы вставить
Твои уроки очень полезны! Как же меня бесит что все команды на английском языке 😢
Возможно ли эти команды перевести на русский
Классные видео, все понятно
Но такой вопрос: если человек в вел два числа допустим 5 и 0
На ноль делить нельзя, что в таком случае делать?
Я знаю что это вроде можно обойти, но как?
Можно при операции деления проверять num2, если 0 то выводить то что нельзя делить на ноль
Можно через try - catch
Обработка исключений, так как деление на ноль вызовет ошибку мы можем её поймать и вывести что на ноль делить нельзя, но вариант с проверкой мне нравится больше
Спасибо за урок, у меня такая проблема, когда ввожу (char math;) конечно без скобок, у меня выдает ошибку "использование имени типа не допускается", в чем может быть проблема? предлагает записать как (char; math;).
и кстати когда уже написал (char math;) после нажатия на ентер, вся эта строка уходит правее, появляется отступ, как будто я нажал на tab, с чем это связано может быть
Нужно было весь код скинуть, а не часть
к меня выдает в результатах какую чушь посмотрите код он правильный
switch (math) {
case '+':num3 = num1 + num2; break;
case '-':num3 = num1 - num2; break;
case '*':num3 = num1 * num2; break;
case '/':num3 = num1 / num2; break;
}
он как будто рандомные значения выдает
А как получить рандомный символ например я хочу получить символ умножения или вычитания ?
создашь список символов или строку из символов и таким же образом как он будешь создавать рандомный индекс и вытаскивать элемент с этим индексом из списка или строки))
после ролика заметил что процент числа слишком скушный и сделал так чтобы первая переменная a находилась рандомом и делилась с б
А что делать если возникает ошибка: "Не удаётся открыть такой-то файл.exe для записи." после ого как я пытаюсь запустить программу?
Такая же проблема брат и не знаю как решить
если сдам экзамен по программирование на С++, то подпишусь. Он если что сегодня утром будет)
Сдал?
СДАЛ?
Мы переживаем)
Сдал?
CДАЛ?
Ну как, сдал или нет?
Товарищи, нужна помощь! Я, почему-то, не могу создать два исходных файла для проекта (ну, типо, 1 файл - 1 урок, а 2 файл - 2ой урок). Пишет, что не может найти исходный файл и так со всеми исходными файлами в проекте, но если оставить только один файл, то всё будет работать. Что делать?
Ошибка визуал студио это что-то с чем-то, попробуй использовать онлайн компилятор С++
покажите, как и где применяются сокращенные операции, не могу сообразить.
Допустим цикл for
for (int i = 0, i < 5; i++)
Тут первый параметр объявление переменной i типа int, дальше условие цикла - пока i < 5, а дальше что будет происходить с i на каждой итерации цикла - то есть прибавляется 1
Так же можно делать в while или do-while
while (i < 5) {
i++;
}
Ну так то много где, намного удобнее писать ведь так i = i + 1 → i += 1 → i++
А я так понял не про инкремент и декремент имелось ввиду.
Когда тебе нужно перезаписать переменную от себя же. Тоесть умножить на два будет вместо a = a * 2 → a *= 2
Когда захочешь и где захочешь
num уже как родной
а у меня почему-то else if не работает
У меня ошибки хотя скорее всего из за вода на телефоне у меня нет компьютера но я делаю всё в точь в точь что не так у меня ошибки выводит 😢
кода дэфолд прописал и специально сделал эррор то у меня сработала команда свитч кейс и дэфолд вместе и получилось ErrorResult: 0
ну емае ну нельзя было раньше про пространство имен рассказать (
дякую
а что надо нажать чтоб получить Error?
В коде идет проверка на "+, -, *, /"
И если эта проверка не нашла не одного из этих значений
То запуститься default который выдаст на экран текст с надписью error
тут видает ошибку в каждом ,,==" код ошибки C2446 и E0042
if (math == "+")
res = num1 + num2;
else if (math == "-")
res = num1 - num2;
else if (math == "*")
res = num1 * num2;
else if (math == "/")
res = num1 / num2;
Как починить?
Тоже самое
Ошибка оказывается в кавычках. Надо одинарную, а не двойную
Одинарные ковычки на знаки действия
Не " ", а это надо ставить ' '
ПОЧЕМУ У МЕНЯ С++ НЕ РАБОТАЕТ КОД БУКВАЛЬНО КАК У ТЕБЯ
; или :
Хах, я такой создаю калькулятор вне урока, и тут калькулятор, норм
А случайные числа прикольная вещь🤔 я сделал что то типо казино консоли 😂
5.24, автор, если читаете комментарии, какая у вас ошибка? научитесь их признавать и объяснять, чтобы люди с полного нуля не лазили по всему интернету часами ища ответ. я лучше уйду к авторам которые "прошу прощения я ошибся, здесь надо по-другому сделать". в анрил энжин у вас так же, заговариваетесь и путаете местами определения. я не могу понять в чем моя ошибка, я только пытаюсь учиться, но если все сделано точь-в-точь как на видео, но при этом ваше видео обрезается на моменте ошибки и начинается с того момента где уже получилось компиллировать, о чем то это наверно говорит.
делал все по видео, все заработало с 1 раза
@@abuda6i не вижу смысла спорить. я новичок, а видео смонтировано поверх ошибок, они их не исправляют и не объясняют, а просто срезают часть видеоурока
@@bazilik5398никто и не спорит , наверное там было обрезка из-за того что он куда то ушел или типо того но у меня абсолютно все работает без ошибок
Тоже новичок, всё работает с первого раза
Чел, это бесплатный курс, непонятна твоя истерика с угрозами куда-то там уйти.
Автор объясняет очень доходчиво, наглядно и по три раза.
Твоя злость это следствие нежелания твоего мозга учиться, а не плохой падачи материала автором. Сять спокойно, посмотри ещё раз, потом ещё раз и так, пока не поймёшь в чем у тебя косяки
Я немногг не понял, заяем случайные числа нужны
Ну рандом много где используется. Банально в игре - на сколько от 1 до 6 выпадет кубик? Или море других ситуаций.
@@Лаки-ц5и а понял, спасибо
*Использование не инициализированной памяти "math"*, я просто похлопаю чо остается то.
Объясни пожалуйста, а что не так?
Удивительно но у меня тоже рандомное число именно 2
вот это удивление просто чудо нафиг как такое возможно ты чтоли маг волшебник или просто выбил число с шансом 5 к 100 и офигиваешь
ну по сути да выбил число с шансом 5 к 100 и офигиваю@@mason228x
Про случайные числа плохо обьяснили
16:08 Автор, ты х**ню сморозил. Функция rand() возвращает не от нуля до одного, а от нуля до некого значения rand max
45 умножить на 2 будет 90? программа сработала неверно
ти че дурак?
А что не так? 45*2=90
10:23 бан
a, b, Z... Z Z z0v
Default не работает
Что то не то пишешь наверное
А ВЫ НЕ ДУМАЛЯ ЧТО ПРОПИСАТЬ USING NAMESPACE STD БЫСТРЕЕ БЛЯТЬ