ПИШЕМ КАЛЬКУЛЯТОР НА C# | КАК НАПИСАТЬ КАЛЬКУЛЯТОР НА C# | C# ДОМАШНИЕ ЗАДАНИЯ | #3

✅Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут!=)
✅Доступ к исходному коду и спонсорство / simplecode
✅ donatepay.ru/don/SimpleCode
✅BTC кошелек: 12oYfJnvt76wjJbpvfhM41m6KPz6uz4LD4
✅ Telegram канал t.me/SergeySimpleCode
Уроки по программированию
✅Наша группа ВК smplcode
✅Подписывайтесь на канал / @simplecodeit

Пікірлер: 372

  • @SimpleCodeIT
    @SimpleCodeIT5 жыл бұрын

    Cамый лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =) ✅Доступ к исходному коду и спонсорство www.patreon.com/SimpleCode ✅ donatepay.ru/don/SimpleCode

  • @damonsalvator136

    @damonsalvator136

    3 жыл бұрын

    Привет. Классные ролики! ТЫ большой молодец. Подскажи пожалуйста, как сделать такой калькулятор, чтобы можно было вводить например 23*223-100 и тому подобное, какой-нибудь продвинутай калькулятор

  • @Sugondeesenuts

    @Sugondeesenuts

    Жыл бұрын

    a что, например, с возведением числа в степень? Или, например, при работе с слишком большими числами(то же возведение 567 в степнь 345)? Есть, конечно, вариант работы с Decimal, но Math.Pow с этим форматом не работает, а чтобы ковертить decimal в float и обратно - слишком много надо написать для одной строки, из-за чего исправление всех ошибок займет слишком много времени. Есть ли другие способы работать с такими большими числами?

  • @kratigo

    @kratigo

    Жыл бұрын

    Можно добавить while(true) {код} Что бы не приходилось перезапускать калькулятор)

  • @xeither289

    @xeither289

    Жыл бұрын

    GOD JESUS TOLD US TO LOVE GOD AND TO LOVE ONE ANOTHER! LET'S NOT DESTROY THIS WORLD! NO WAR!!! БОГ СОЗДАЛ ТАКОЙ ПРЕКРАСНЫЙ МИР! НЕ БУДЕМ РАЗРУШАТЬ МИР! ПОЛЮБИМ БОГА И ВСЕХ ЛЮДЕЙ! НЕТ ВОЙНЕ!!

  • @xeither289

    @xeither289

    Жыл бұрын

    @@damonsalvator136 GOD JESUS TOLD US TO LOVE GOD AND TO LOVE ONE ANOTHER! LET'S NOT DESTROY THIS WORLD! NO WAR!!! БОГ СОЗДАЛ ТАКОЙ ПРЕКРАСНЫЙ МИР! НЕ БУДЕМ РАЗРУШАТЬ МИР! ПОЛЮБИМ БОГА И ВСЕХ ЛЮДЕЙ! НЕТ ВОЙНЕ!!

  • @felixfelix3759
    @felixfelix37593 жыл бұрын

    Знали бы вы, как я был в восторге, когда самостоятельно сделал калькулятор)))

  • @hugofthedevil2720

    @hugofthedevil2720

    2 жыл бұрын

    Знаю))

  • @user-ic9vh4uh1j

    @user-ic9vh4uh1j

    2 жыл бұрын

    понимаю

  • @Qolqanat04

    @Qolqanat04

    2 жыл бұрын

    Понимаю

  • @deya1172

    @deya1172

    2 жыл бұрын

    Что это такое я не понимаю, она как-то пригодится?для чего оно нужно?

  • @user-dw4sn4hj3y

    @user-dw4sn4hj3y

    2 жыл бұрын

    @@deya1172 ну вы же букварь, таблицу умножения.. в первом классе или в садике учили? пригодилось? это азы программирования (букварь)

  • @slavik15971597
    @slavik159715975 жыл бұрын

    Автор, давно заметил что ты не юзаешь комбинацию клавиш ctrl+D (копирование целой строки, и вставка копии строки позади текущей) и комбинации alt+стрелка вверх и alt+стрелка вниз (смещение целой строки вниз или вверх). Очень удобно и быстро привыкаешь. Ещё можно легко сместить экран вверх или вниз без мыши не сдвигая курсор ctrl+ стрелка вниз и ctrl+стрелка вверх. Ctrl+ стрелка в право смещение курсора через слово, а не посимвольно. Home,end,page up, page down и тд. Именно поэтому visual studio такая классная, все сделано так чтобы не трогать мышь каждые две секунды покликать. Очень отвлекает во время погружения))

  • @amigo0324

    @amigo0324

    4 жыл бұрын

    тупо лучший

  • @KorocheSHAIN

    @KorocheSHAIN

    4 жыл бұрын

    Гспди, да я с вами топиком стану xd. Нахер училку)

  • @envoy5969

    @envoy5969

    3 жыл бұрын

    Всё кроме "Ctrl + D" работает

  • @Zeding_Stuff

    @Zeding_Stuff

    3 жыл бұрын

    @@envoy5969 в шарп девелопе пишешь?

  • @user-vk9tw8uc6h

    @user-vk9tw8uc6h

    3 жыл бұрын

    @@envoy5969 правильно "Ctrl + С" (копировать строку) и "Ctrl + V" (вставить строку)

  • @user-nm8oj8di3y
    @user-nm8oj8di3y9 ай бұрын

    Называются курсы от новичка к профессионалу, почитал комменты и понял, что новичок здесь только я....

  • @dimasavukov6230
    @dimasavukov62305 жыл бұрын

    Сергей, спасибо! Вы лучший из лучших!

  • @user-tj3eb5yq6b
    @user-tj3eb5yq6b3 жыл бұрын

    Круто! Дошел до 18-го урока и только щас увидел, что есть плейлист с разбором домашнего задания. Радует, что пока я все ДЗ сделал правильно =) Сергей ты реально круто объясняешь! Всякие курсы по сравнению с тобой - стоят молча в сторонке!

  • @helpupgrade9654
    @helpupgrade96543 жыл бұрын

    Очень сильно вдохновили на решение задач по программированию. Даже в самых простых конструкциях языка бывают затруднения. Благодарю Сергей, что помогли убрать пробелы в знаниях. =)

  • @tarlanchannel4830
    @tarlanchannel48302 жыл бұрын

    Здравствуй Сергей! В очередной раз благодарю тебя за такой шикарный урок!!! Я отношусь к твоим видео урокам очень серьёзно. Конспектирую!)) Сразу же записываю код. Благодаря твоему таланту хорошо всё объяснять у меня не остаётся вопросов. Думаю у остальной аудитории точно так же. Так давайте поддержим лайком нашего уважаемого преподавателя!

  • @r0kudenashiii
    @r0kudenashiii4 жыл бұрын

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

  • @maksimk711
    @maksimk7114 жыл бұрын

    Есть небольшой недочет в калькуляторе, я бы сказал узкое место. Если человек введет любое десятичное число с разделителем "точка", например 2.56, то калькулятор выкинет исключение, так как это не верный формат. Можно же добавить на входящие данные дополнительный метод Replace, который избавит пользователя от таких ошибок. Например вот так double.Parse(Console.ReadLine().Replace(".", ",")); Для новичков урок очень даже отличный! Спасибо за ваши труды!!!

  • @priminister5711

    @priminister5711

    4 жыл бұрын

    Круть!

  • @siralon2034

    @siralon2034

    4 жыл бұрын

    Спасибо

  • @BLGamesChannel

    @BLGamesChannel

    3 жыл бұрын

    @Человек я не смог)

  • @BLGamesChannel

    @BLGamesChannel

    3 жыл бұрын

    @Человек ты только начал изучать? Если хочешь, го в вк или телеграмм...

  • @Witchfinder_General

    @Witchfinder_General

    3 жыл бұрын

    @@BLGamesChannel я смог и на свич и на иф, никуда не заглядывая, что со мной редко бывает, только вот про деление на ноль забыл, что не ноль выйдет, не учёл этого исключения.

  • @user-wf9gx4it2f
    @user-wf9gx4it2f3 жыл бұрын

    Я просто снимаю шляпу перед вами! Очень помогли и многое разъяснили, спасибо!

  • @user-su9go2ou1y
    @user-su9go2ou1y5 жыл бұрын

    Сергей, я просто тащусь от твоих уроков, спасибо!

  • @vertex6590
    @vertex65905 жыл бұрын

    Спасибо Вам большое. Благодаря Вашим урокам материал усваивается лучше. Практически полностью изучил С++, хотелось бы от Вас еще уроки SFML...

  • @SimpleCodeIT
    @SimpleCodeIT5 жыл бұрын

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

  • @user-so4rn1hj2s
    @user-so4rn1hj2s3 жыл бұрын

    Спасибо большое !!! Радости нет придела, когда всё получилось с первого раза ))

  • @nikolayvalchanov3426
    @nikolayvalchanov34263 жыл бұрын

    Спасибо вам за уроки Сергей!

  • @user-kk6ob5ud3n
    @user-kk6ob5ud3n3 жыл бұрын

    Спасибо за твой, без сомнения, великий труд! Спасибо

  • @theyandwe9047
    @theyandwe90475 жыл бұрын

    Подписан на канал, учу плюсы, на этом же канале. Лайк авансом, так как знаю "the content will be good"

  • @ant69xx
    @ant69xx4 жыл бұрын

    Сергей, большое спасибо!

  • @user-qz8hb9yh3b
    @user-qz8hb9yh3b3 жыл бұрын

    Лучший преподаватель по программированию в мире!!!

  • @dtpirates
    @dtpirates5 жыл бұрын

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

  • @user-pr6cf9vw1b

    @user-pr6cf9vw1b

    5 жыл бұрын

    А можешь сбросить код?

  • @WebPunkkk

    @WebPunkkk

    4 жыл бұрын

    А что за "плюсы" ?

  • @valley527

    @valley527

    4 жыл бұрын

    @@WebPunkkk c++

  • @HaHaHa55566
    @HaHaHa555662 жыл бұрын

    Супер! Спасибо вам за уроки! Привет из 2022)))

  • @user-lx5vv3uu8u
    @user-lx5vv3uu8u5 жыл бұрын

    Сергей, салют! Спасибо!!!

  • @ifelru
    @ifelru2 жыл бұрын

    Спасибо за отличные уроки!

  • @dmitryzolkin7904
    @dmitryzolkin79042 жыл бұрын

    Всего четыре дня назад, максимум что я мог сделать это объявить переменную и вывести её в консоль. Теперь, умея писать калькулятор и понимая каждую строчку кода и все методы внутри него, с гордостью осознаю что шарю в программировании). Пусть совсем новичок, но уже что то умею. Всё благодаря Вам, Сергей! Спасибо что записали уроки и преподали материал предельно доступно и доходчиво. Вы ЧЕЛОВЕЧИЩЕ! P.S. Я написал калькулятор немного по другому. После ввода первого числа, программа сразу предлагает выбрать действие. После присваивания этого действия в переменную action, внутри метода switch в зависимости от выбранного действия происходит ввод второго числа с последующей операцией вычисления и выводом результата.

  • @mrcheater8170
    @mrcheater81703 жыл бұрын

    Супер уроки! Обожаю ваш канал)

  • @3dserj9
    @3dserj94 жыл бұрын

    Спасибо большое!!!))

  • @Orl_a_n_Do
    @Orl_a_n_Do2 жыл бұрын

    блин, я сделал калькулятор ,ниче се, спасибо большое за отличные уроки, лучше уроков по С# не видел)

  • @gass1271
    @gass12715 жыл бұрын

    Большое дело делаешь.

  • @user-pd3lg1vf2c
    @user-pd3lg1vf2c3 жыл бұрын

    Спасибо Вам за урок! Теперь вы мой любимый блогер))))

  • @avr_stm_pro2955
    @avr_stm_pro29553 жыл бұрын

    СПАСИБО за труд!!

  • @dabudidabudai573
    @dabudidabudai5733 жыл бұрын

    А ведь я попробовал на своём написанном калькуляторе поделить на 0. Ответ удивил: "бесконечность"

  • @SaffronChipMCPE

    @SaffronChipMCPE

    3 жыл бұрын

    у меня ноут имеет мозги, он ответил:"? " перевод:"шо, *лять? это что такое? ты тупой?"

  • @yosh1486

    @yosh1486

    3 жыл бұрын

    Ответ убил

  • @FyUajYpUlM39

    @FyUajYpUlM39

    3 жыл бұрын

    Так и должно быть. Попробуйте разделить 2 на 0.1. Получите 20 Деление на 0 - это по-сути деление на бесконечно малое число, т.е дробь с огромным кол-вом нулей после точки. Что-то вроде: 2 / 0.00000000000000000000000000000000000000000000...[a few years later]...000000000001 = бесконечно большое число, т.е бесконечность.

  • @kaktusshow7638

    @kaktusshow7638

    2 жыл бұрын

    @@FyUajYpUlM39 0 это 0

  • @epsilon.sw_

    @epsilon.sw_

    2 жыл бұрын

    @@kaktusshow7638 и да и нет

  • @jses8560
    @jses85605 жыл бұрын

    Лайк без базара!

  • @user-od8mn6ns2z
    @user-od8mn6ns2z2 жыл бұрын

    Круто, спасибо за разбор. Понятную мне часть я сделал.

  • @rigrru1798
    @rigrru1798 Жыл бұрын

    эххх не сделал правильно,всегда забываю что есть и другие типы данных и сильно тупил 🥲

  • @user-nc4dv3ub3p
    @user-nc4dv3ub3p2 жыл бұрын

    Начал делать калькулятор и сделал три свича для каждого элемента. думал, что нужно по key брать и числа и знак)) Вроде всё получилось, но застрял в ошибке компиляции). Посмотрел, как это планировалось делать в видео и спокойно сделал оба способа.))

  • @karmapolice6783
    @karmapolice67833 жыл бұрын

    спасибо! было интересно!

  • @user-dm4bl9od8l
    @user-dm4bl9od8l2 жыл бұрын

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

  • @user-nh1lp8xt4j
    @user-nh1lp8xt4j2 жыл бұрын

    Круто. Со свичем я так и сделал практически только ситуацию с нулем не предусмотрел.

  • @Venishko_Kun
    @Venishko_Kun Жыл бұрын

    Обожаю чувство, когда спустя 20 минут поиска ошибки в коде, понимаешь, что она была самой банальной. И на этой радости идёшь повторять основы. Чувствую себя счастливым первоклашкой, выучившим 2*3

  • @mr.billichbill3420
    @mr.billichbill34204 жыл бұрын

    Спасибо!

  • @user-sz8rl4bs5q
    @user-sz8rl4bs5q2 жыл бұрын

    Отличное видео и уроки! Я ещё добавил обработку исключения, если будет точка, вместо запятой.

  • @egorkalmykov4003
    @egorkalmykov40033 жыл бұрын

    Спасибо !!!

  • @user-gc5xy5rk8x
    @user-gc5xy5rk8x5 жыл бұрын

    уроки отличные , но вот бы по чаще ими наслаждаться !)

  • @Luna-bh8ww

    @Luna-bh8ww

    5 жыл бұрын

    По какой чаще?

  • @user-zq5hl8hv8g
    @user-zq5hl8hv8g3 жыл бұрын

    Благодарю

  • @cootook
    @cootook4 жыл бұрын

    в калькуляторе через if для деления я написал if (action == "/" && value2 != 0), а в else написал "вы ввели неизвестную операцию или делите на ноль". А так спасибо за уроки, для новичка - супер!

  • @bekzatabdysatarov1041

    @bekzatabdysatarov1041

    2 жыл бұрын

    Полный код скинуть можешь? Пожалуйста)

  • @user-fk9uq8pr2u
    @user-fk9uq8pr2u2 жыл бұрын

    Бомба :)

  • @arroganz9318
    @arroganz9318 Жыл бұрын

    Так. Допустил некоторые ошибки не полностью поняв разницу приема аргумента к иф и свичу, а так же небольшую маленькую деталь с запросом по типу арифметического действия с выводом это в переменную. Но все остальное по логике при дзшке сделал норм. Спасибо за такие интересные детали, как чистка консоли в конце действия и метод вайл. В голове отложились, т.к. максимально просты. А вот конструкцию трай кэтч, я за несколько подзабыл, в частности, для чего он необходим. Спасибо что напомнили! Я ещё раз отложил в память. При этом тоже подзабыл полный функционал метода трайпарс. Надеюсь мы ещё к нему в будущем вернёмся в уроках)! Закрепляю днём эту тему и иду вечером дальше.

  • @geshoi
    @geshoi2 жыл бұрын

    Люблю когда мне все понятно как в этом уроке.

  • @dmitriydubrovets8404
    @dmitriydubrovets84043 жыл бұрын

    Лучший !

  • @camelos
    @camelos2 жыл бұрын

    Супер

  • @user-up6sd8bz3e
    @user-up6sd8bz3e5 жыл бұрын

    Последний break в switch можно убрать, не? В default кейсе после выполнения всех команд и без break будет выход из switch'а P.S: спасибо за интересный урок!

  • @VladimirBalasyan

    @VladimirBalasyan

    3 жыл бұрын

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

  • @petrovich1742
    @petrovich17423 жыл бұрын

    "Введите число 1" ввожу [1] (как и попросили) "Введите число 2" ввожу [2] (тоже самое) Result = 3 В смысле - 3 - ж..па. ;)

  • @1ofsb

    @1ofsb

    3 жыл бұрын

    Возможно запускается другая программа

  • @suren2902
    @suren29024 жыл бұрын

    спасибо

  • @seniorscript9995
    @seniorscript99955 жыл бұрын

    Лайк

  • @dmitryfateev2398
    @dmitryfateev23984 жыл бұрын

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

  • @astralpirate1593
    @astralpirate15933 жыл бұрын

    Автору огромное спасибо! Интересно, что за клавиатура, по звукам напоминает мою клавиатуру из 90-х Cherry, если не сложно, Сергей, ответь.

  • @breewz1498
    @breewz14982 жыл бұрын

    в уроке про if else не было сказано что этот блок можно использовать так как ты сказал то есть if() { } else if() { } если бы было сказано я бы сделал калькулятор с блоком if чуть лучше, но у меня получилось сделать его и без этой информации

  • @user-ib8wj8dw7p
    @user-ib8wj8dw7p4 жыл бұрын

    Классное видео! Спасибо за объяснения. У меня такой вопросы: почему c++ можно в одну строку написать стразу весь пример(5+5), а в c# надо по отдельности(5 Enter + Enter 5)?

  • @WebPunkkk

    @WebPunkkk

    4 жыл бұрын

    Особенности языка

  • @slavadyagilev7686

    @slavadyagilev7686

    3 жыл бұрын

    Вы вообще видео смотрели?

  • @sephiroth787
    @sephiroth7872 жыл бұрын

    Спасибо Автору за урок ! ============================ Немного переделав, такая логика последовательности привычней: double firstValue, secondValue; string action; Console.WriteLine("Введите Первое число:"); firstValue = double.Parse(Console.ReadLine()); Console.WriteLine("Выберите операцию:'-' '+' '*' '/'"); action = Console.ReadLine(); Console.WriteLine("Введите Второе число:"); secondValue = double.Parse(Console.ReadLine()); if (action == "-") { Console.Write("Результат = "); Console.WriteLine(firstValue - secondValue); } else if (action == "+") { Console.Write("Результат = "); Console.WriteLine(firstValue + secondValue); } else if (action == "*") { Console.Write("Результат = "); Console.WriteLine(firstValue * secondValue); } else if (action == "/") { if (secondValue == 0) Console.WriteLine(0); else Console.Write("Результат = "); Console.WriteLine(firstValue / secondValue); } else { Console.WriteLine("Ошибка! Неизвестное действие!"); } Console.ReadLine();

  • @nel1n351

    @nel1n351

    Жыл бұрын

    Выбрал более длинный путь

  • @nel1n351

    @nel1n351

    Жыл бұрын

    Вариант из видео только короче и как по мне красивее ведь не надо писать каждое слово с новой строчки (29 строк) double firstValue, secondValue; string action; Console.Write("Введите Первое число:"); firstValue = double.Parse(Console.ReadLine()); Console.Write("Выберите операцию: "); action = Console.ReadLine(); Console.Write("Введите Второе число: "); secondValue = double.Parse(Console.ReadLine()); switch (action) { case "+": Console.WriteLine(" Ответ: " + firstValue + secondValue); break; case "-": Console.Write(" Ответ: "); Console.WriteLine(firstValue - secondValue); break; case "*": Console.WriteLine(" Ответ: " + firstValue * secondValue); break; case "/": Console.WriteLine(" Ответ: " + firstValue / secondValue); break; } Console.ReadLine();

  • @palladiumgamer8827
    @palladiumgamer8827 Жыл бұрын

    Учусь у IT Proger'а по видео. Написал свой калькулятор на if и else. Потом в последующем написал на switch. Поначалу калькулятор на if и else был большой из за того, что он в каждом "если" запрашивал данные и высчитывал их. Но потом, когда писал под на switch, придумал вынести запросы в начало и код стал короче (в последствии код на if и else тоже так переделал). Но я никак не могу придумать калькулятор, который бы мог запрашивать не 2 числа и выражение (например 2+2), а столько выражений, сколько потребуется (например 3+2-1*5). Но тут надо продумать момент умножения и деления, чтобы они вначале выполнялись, а не сложение и вычитание. А так, я впринцыпе доволен своим прогрессом.

  • @ivannebyshynets8829
    @ivannebyshynets88293 жыл бұрын

    Лайк репост -__-

  • @aleks_gavs
    @aleks_gavs3 жыл бұрын

    Автор, огромное спасибо! Если благодаря Вашим урокам действительно дойду до уровня, на котором смогу зарабатывать на этом деле, первую ЗП обещаю перечислить! Система "оплата за результат")

  • @koltergt7469

    @koltergt7469

    3 жыл бұрын

    Удачи!

  • @user-yk6iq5hn4d
    @user-yk6iq5hn4d2 жыл бұрын

    Автор, могли бы Вы ради интереса показать, как создать настоящий калькулятор с несколькими действиями. Я сам пытался, но упираюсь в ситуацию с приоритетом операторов

  • @pavel6341
    @pavel63413 жыл бұрын

    ты лучший

  • @geshoi
    @geshoi2 жыл бұрын

    Чуть чуть мне не хватило мозгов в случае с switch добить мой код до конца, но посмотрев первую половину урока, в случае с if все пошло как по маслу. Надеюсь я наконец стану программистом, так давно этого хочу, уже лет 15.

  • @coutiaraZZ

    @coutiaraZZ

    Жыл бұрын

    ну как

  • @ещкере-йоу

    @ещкере-йоу

    Жыл бұрын

    @@coutiaraZZ Ну чё стал?

  • @coutiaraZZ

    @coutiaraZZ

    Жыл бұрын

    @@ещкере-йоу да

  • @IIIllllllllll
    @IIIllllllllll5 жыл бұрын

    Может в следующем уроке вместе попробуем запилить скриптовой мод для гта 5?)

  • @12312312423
    @123123124235 жыл бұрын

    Бик зур рахмет)

  • @vertex6590

    @vertex6590

    5 жыл бұрын

    Сэлам

  • @user-en7pi4pj9x
    @user-en7pi4pj9x Жыл бұрын

    А я заморочился считыванием нажимаемых кнопок с клавиатуры. Там есть ещё что по мелочи допилить, но самое главное это то что неосилил считывание Shift + 8 и знака / с обычной клавиатуры (не с цифровой). Обвязку try-catch с использованием bool errorPointer использую во всех домашках. Так же - не нашёл способ (да его походу и нет) передать куда-нибудь (в переменную, указатель, ещё какой-нить метод, класс, тип) математический оператор (+, -, /, или *). А Так бы было прикольно если бы можно было так - double a = 0.0; double b = 0.0; //привык сразу инциализировать переменную при создании mathOperator = ... ; //здесь идёт динамическая ссылка на оператор double result = a mathOperator b; //когда надо mathOperator принимает +, когда надо -, / или *, такая идея Если у кого есть идеи как допилить пишите ************* static void Main(string[] args) { Console.WriteLine("Это программа калькулятор"); Console.WriteLine("Введите первое число"); bool errorPointer = false; double firstValue = 0.0; double secondValue = 0.0; string mathOperator = ""; try { firstValue = double.Parse(Console.ReadLine()); } catch (Exception) { Console.WriteLine("Введено недействительное число"); errorPointer = true; } Console.WriteLine("Введите знак математической операции (+, -, *, /"); ConsoleKey consolekey = Console.ReadKey().Key; switch (consolekey) //в switch-case работает всё кроме Shift+8 (*) и '/' с обычной клавиатуры { case ConsoleKey.Add: case ConsoleKey.OemPlus: mathOperator = "сложение"; break; case ConsoleKey.Subtract: case ConsoleKey.OemMinus: mathOperator = "вычитание"; break; case ConsoleKey.Multiply: mathOperator = "умножение"; break; case ConsoleKey.Divide: mathOperator = "деление"; break; default: Console.WriteLine(" Неизвестный оператор"); break; } Console.WriteLine(" Введите второе число"); try { secondValue = double.Parse(Console.ReadLine()); } catch (Exception) { Console.WriteLine("Введено недействительное число"); errorPointer = true; } if (errorPointer) { Console.WriteLine("Подсчёт невозможен из-за неверного заполнения чисел или знака"); } else { switch (mathOperator) { case "сложение": Console.WriteLine("Сумма двух чивел равна " + (firstValue + secondValue)); break; case "вычитание": Console.WriteLine("Разность двух чивел равна " + (firstValue - secondValue)); break; case "умножение": Console.WriteLine("Произведение двух чивел равно " + (firstValue * secondValue)); break; case "деление": Console.WriteLine("Результат деления двух чивел равен " + (firstValue / secondValue)); break; default: Console.WriteLine("Недействительная операция"); break; } } } } }

  • @user-wi8di4xs1j
    @user-wi8di4xs1j3 жыл бұрын

    Можно было использовать TryParse, вместо Try catch

  • @user-im2kw1hc7n
    @user-im2kw1hc7n3 жыл бұрын

    Вот так я просто хочу )))

  • @amezhlumov
    @amezhlumov4 жыл бұрын

    А на Windows Forms как получить с кнопок значения переменных left и right ?

  • @beshenyy_sobaken
    @beshenyy_sobaken Жыл бұрын

    5:21 конечно, делить на ноль нельзя, но в теории должна получиться бесконечность (почему должна? потому что это неопределенное число, а что-то за гранью понимания)

  • @yaroslavtrots3361
    @yaroslavtrots33615 жыл бұрын

    Планируете оконные приложения делать ?

  • @user-wy2kp2es1k
    @user-wy2kp2es1k4 жыл бұрын

    Спасибо большое за уроки. Видимо в последних обновлениях Visual studio поправили ситуацию с / на 0. Не нужно if else. На экране выводится "Бесконечность" и программа не падает.

  • @reni9451

    @reni9451

    4 жыл бұрын

    Это работает почему то только с double. Во всех остальных случаях надо предусмотреть Exception

  • @ShyShya

    @ShyShya

    3 жыл бұрын

    @@reni9451 С float тоже выводит "бесконечность". Кроме double и float выводит System.DivideByZeroException: "Попытка деления на нуль."

  • @user-lj5yq1lu2d
    @user-lj5yq1lu2d10 ай бұрын

    калькулятор на switch сделал правильно, чему очень рад) но вот по конструкции if else не смог осилить, просто потому что не знал что можно делать так: if (a) { } else if (a) { } else if (a) { }

  • @Ars_015
    @Ars_0152 жыл бұрын

    Все прекрасно, но не могу понять почему вы не разобрали конструкцию else if отдельно, хорошо что заметил это в вашем коде и по гуглил, вроде как понял, но хотелось бы объяснение от вас

  • @indigo7671

    @indigo7671

    Жыл бұрын

    @@Xendevit Про if else был, но конкретно else if не было

  • @miksline
    @miksline2 жыл бұрын

    Сделал с if за 10 минут, ибо делал его ещё 2 недели назад, до начала изучения этого курса. А потом час сидел над switch, так-как не понимал почему после кейс ошибка. Загуглил, а это просто я даун, и надо было потом писать break. Задание лёгкое, также из-за того, что до этого писал калькулятор на питоне, поэтому знал систему. А дальше просто синтаксис надо было подставить

  • @qwerty-mi1vx
    @qwerty-mi1vx3 жыл бұрын

    Спасибо за видео!У меня есть небольшой вопрос: ты написал что secondValue если ==0, то будет выводить сообщение об ошибке.А что если пользователь введёт в firstValue 0, то получается произойдет ошибка. Разве не надо для firstValue написать так же как и для secondValue ?

  • @MacKorWoT

    @MacKorWoT

    3 жыл бұрын

    ноль можно делить на что угодно - будет ноль, а вот на ноль делить уже нельзя)

  • @user-tn5or4yy9e
    @user-tn5or4yy9e10 ай бұрын

    Хм , я сдела по другому , через вызов отдельных функций свитчем xD , а оказалось можно было проще.

  • @atomicboost
    @atomicboost5 жыл бұрын

    С какого урока будет ООП и формы?

  • @I-PixALbI4-I
    @I-PixALbI4-I3 жыл бұрын

    Сделал калькулятор работающий на Regex и Обратной Польской Записи ( RPN ). Если кому интересно будет посмотреть - пишите, скину ссылку на репу.

  • @drakatvmalishi
    @drakatvmalishi Жыл бұрын

    Для символов лучше использовать переменную с типом char а не string

  • @user-ox1jn2hd6r
    @user-ox1jn2hd6r Жыл бұрын

    у меня было так: using System; namespace calculator_switch { class Program { static void Main(string[] args) { string Oper; Console.WriteLine("введите число 1: "); double Num1 = double.Parse(Console.ReadLine()); Console.WriteLine("выберите действие: "); Oper = Console.ReadLine(); Console.WriteLine("введите число 2: "); double Num2 = Double.Parse(Console.ReadLine()); switch (Oper) { case "/": if (Num2 != 0) { Console.WriteLine(Num1 / Num2); } else { Console.WriteLine("УЧИ АРИФМЕТИКУ, НА 0 ДЕЛИТЬ НЕЛЬЗЯ"); } break; case "*": Console.WriteLine(Num1 * Num2); break; case "+": Console.WriteLine(Num1 + Num2); break; case "-": Console.WriteLine(Num1 - Num2); break; default: Console.WriteLine("ТЫ ТУПОЙ? СКАЗАНО ЖЕ ВЫБЕРИТЕ ДЕЙСТВИЕ, А НЕ " + Oper); break; } } } }

  • @mediafile9995
    @mediafile99953 жыл бұрын

    Спс за try catch... Это как в python: try except

  • @user-ix4cm7ch5z

    @user-ix4cm7ch5z

    2 жыл бұрын

    Через метод do while увы он не работает (

  • @arinaeu7403
    @arinaeu7403 Жыл бұрын

    спасибооо

  • @user-wb6lx8ep3t
    @user-wb6lx8ep3t3 жыл бұрын

    Все работало через свитч, а на if else какие то чудеса происходят))

  • @lyoshiy

    @lyoshiy

    3 жыл бұрын

    У меня так же

  • @user-wb6lx8ep3t

    @user-wb6lx8ep3t

    3 жыл бұрын

    @@lyoshiy присмотрись к коду получше где то что то пропустил)))

  • @SG-li3qv
    @SG-li3qv3 жыл бұрын

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

  • @user-cj1mt2lv3s

    @user-cj1mt2lv3s

    3 жыл бұрын

    по моему можно запомнить все с первого раза. Практикуйтесь больше.

  • @user-lo5xf6zi4u

    @user-lo5xf6zi4u

    3 жыл бұрын

    Если ты так продолжишь изучать программирование, то далеко не уедешь.

  • @di4k20
    @di4k204 жыл бұрын

    При делении на 0 программа выдает результат "бесконечность".

  • @Lebedev.D
    @Lebedev.D2 жыл бұрын

  • @dukalisreshaet4088
    @dukalisreshaet40883 жыл бұрын

    case "*": if(Sec == 0 || Fir == 0) Console.WriteLine(0); else{Console.WriteLine(Fir*Sec);} break; на умножение )) А как сделать что бы после ввода Первого Второго и Оператора, событие перескакивало само без нажатия Enter? ))

  • @short_aliexpress
    @short_aliexpress3 жыл бұрын

    Супер калькулятор

  • @DoctorHaider
    @DoctorHaider3 жыл бұрын

    При делении double на 0 креша не будет, будет результат Infinity или ? если русская локализация винды. Вещественные числа в сишарпе можно делить на ноль.

  • @ShyShya

    @ShyShya

    3 жыл бұрын

    кроме decimal

  • @tankist2277
    @tankist22773 жыл бұрын

    Сергей , я новичок учусь только по твоим видео.Этот код написал сам может кто-нибудь оценить

  • @user-mb6qs6sq3q
    @user-mb6qs6sq3q Жыл бұрын

    А я сделал проверку через TryParse Console.WriteLine("Перше число"); str = Console.ReadLine(); bool result1 = double.TryParse(str, out First); if (result1) { Ну и тут типо дальше код проверка второго и т.д }

  • @cordeliand
    @cordeliand2 жыл бұрын

    А я крч сам делал, сделал на if else а на case не догадался)

  • @Golden_Dragon_SO2
    @Golden_Dragon_SO2 Жыл бұрын

    А как вы держав курсор на верхней строчке удаляете нижнюю строчку в одно касание? Какая комбинация клавиш? 6:13

  • @indigo7671

    @indigo7671

    Жыл бұрын

    Если я правильно тебя понял, то отступы и пустые строки форматирует сам visual studio. Есть еще комбинация ctrl + l для удаления строки на котором стоит курсор

  • @Golden_Dragon_SO2

    @Golden_Dragon_SO2

    Жыл бұрын

    @@indigo7671 Огромное спасибо!

  • @user-et8cb7vu4c
    @user-et8cb7vu4c9 ай бұрын

    лучший способ сказать "спасибо" - поставить лайк и и поделиться уроком с друзьями. Это очень мотивирует создавать полезные уроки =)

  • @user-ol2en5gm5o

    @user-ol2en5gm5o

    7 ай бұрын

    Но он уже 2 года видео не выпускает...

  • @valrin
    @valrin Жыл бұрын

    Почему если в деление проверять равенство на ноль первое число и вторым числом выбрать ноль то в консоль показывает знак "?" А если проверять равенство на ноль второе число то показывает "0" при любом раскладе?

  • @user-qc8il5rf1y
    @user-qc8il5rf1y3 жыл бұрын

    А ничего, что переменные несколько раз объявляют я в цикле? Или они тоже очищаются? Можете объяснить, пожалуйста?

Келесі