Switch. Что это. Пример. Синтаксис. Оператор множественного выбора. Урок #13.
Vložit
- čas přidán 6. 09. 2024
- Урок #13. Switch c++ что это. Пример. Синтаксис. Оператор множественного выбора.
Домашнее задание
Написать простой калькулятор. Пользователь вводит значение двух переменных. Описать меню в консоли для математических операций сложения, вычитания, умножения, деления. Через оператор switch реализовать математическую операцию соответствующую пункту меню.
• Switch. Калькулятор. ...
Если вам нравятся мои уроки, вы хотите поддержать меня и развитие канала, то можете сделать это тут! =)
www.donationale...
или тут
/ simplecode
Уроки по программированию
Наша группа ВК smplcode
Подписывайтесь на канал / @simplecodeit
*Я щас с 71-го видоса на секунду сюда вернулся, а тут задачка с калькулятором... Вроде пару месяцев интенсивной учёбы прошло, а уже осознаю на сколько это лёгкое задание в сравнении с тем что вас ждёт.. КРЕПИТЕСЬ РЕБЯТА! И главное, не паникуйте и не бросайте это дело если что-то не выходит. Просто сидите, и разбирайте каждую строчку кода, ищите описание в инете, и так пока не поймёте логику И ДА ПРИБУДЕТ С ВАМИ СИЛА!*
Спасибо и удачи вам!)
@@user-ox3zv3fo4b *Лол) Уже на ООП. Капец сложно если честно, теперь задачки по недельки решаю) Но интересно :з Ещё раз говорю, главное не сдаваться!*
@@kiritokun3092 Что делаешь, когда нет мотивации учиться?
@@user-ox3zv3fo4b *Как автор этих видео и говорил -"Мотивация это временная переменная, а дисциплина это const ;)"*
*Так что надо выработать дисциплину. Если нету постоянно желания, то надо переосмыслить всё, возможно программирование это не ваше, надо всегда пробовать себя в разных сферах! Никогда не знаешь где ты лучше.*
@@kiritokun3092 Спасибо большое за совет)
Насколько же у тебя талант объяснять все по-человечески...!
Новый год через 30 мин , смотрю гайды по с++ )
Красавчик! 👍
Сессия скоро?)
Новый год через 8 дней, а мы продолжаем смотреть :)
@@viktort9326 уже 3 дня а мы все учим c++
@@user-me2ij5ev4b уже 3 день после нг, а мы и не думаем останавливаться
Спустя столько лет ваши уроки продолжают приносить пользу )
как успехи?
депрессия ломает восприятие и интеллект. не сдавайтесь , лечите , пейте таблетки. кодинг не страшен и не тяжелый для изучения предмет
Урок #13. Switch. Что это. Пример. Синтаксис. Оператор множественного выбора.
Думаю, стоит упомянуть, что в тело оператора case нельзя заключать логические операции, например, a
Логикой занимается if)
Получается это примитивный оператор сравнения =)
@@pvp717 зато экономить много памяти
Эта видео мне помог писать контрольную на 100процентов!! Я узнал больше инфы тут, чем в школе за 3 месяца! Спасибо вам огромноее!!
Отличные уроки! Очень доступно объясняешь! Спасибо!
В общем как-то так получилось
void main()
{
setlocale(LC_ALL, "Russian");
int Num1, Num2, Operation, to;
start_position:
cout Operation;
switch (Operation)
{
case 1:
cout Num2;
cout
Чёта дохуя!!
Спасибо за уроки, даже за пару часов до нового года учился, настолько они информативные)
Комментарий для продвижения просветительской деятельности; Большое Спасибо, Сергей!
Чувак,спасибо тебе. Такой контент заслуживает 1 000 000 подписчиков как минимум.
Почему у людей которые снимают херню и треш очень много подписчиков
А у людей которые СТАРАЮТСЯ и снимают действительно качественный и полезный контент - всегда будет в разы меньше:(((
Ты хочешь большую конкуренцию ?
Спасибо большое за понятное, вполне полное объяснение уроков!!
Кейсы еще можно объединять, чтобы при нескольких условиях выполнять один блок кода. Например:
switch (a)
{
case 1:
case 2:
cout
как это может применяться?
@@i_h8_water155 например когда для нескольких значений нужно выполнить одинаковые действия
Отличный урок! Изучал одну книгу и свич там не так подробно и ясно был описан.
Книги это зло!) Я тоже купил дорогущую книженцию по программированию на С++ для начинающих, аха!... там так мозг засерают ненужной для новичка информацией, начинаешь чувствовать себя полным тупицей, хорошо, что наткнулся на эти уроки в ютюбе, а то , то есть else : бросил бы это дело)))
Да в чем то согласен. От автора зависит, как он подаст материал.
Ты не прав. Если действительно хочешь изучить этот язык-будь добр прочесть книгу. Видео данного автора очень хороши, но в них дается от силы 15% той инфо, что ты должен знать.
@@vs_gaming3013 подскажите, есть смысл сначала изучить эти уроки, а потом уже книгу?
@@user-gc5td9zq3b мне кажется самое збс это параллельно чтению книги смотреть видео курсы
Просматриваю уже по второму кругу как хорошую, старую (исключительно в хорошем смысле этого слова !), добрую и полезную классику !!! Спасибо Вам !!!
Здравствуйте, Сергей! Хочу поблагодарить вас за видео. Полезные и понятные.
Вы лучший учитель! Еще нигде на ютубе не встречал человека, который так подробно все объясняет. Я и раньше тоже пытался начинать программировать, но все никак не находил тех, кто может мне объяснить. Встретил ваш канал и теперь уже хоть чуть-чуть да разбираюсь. Спасибо вам.
Лучший учитель, отличный человек!
Домашнее задание, сенсей.
int main(int argc, const char * argv[])
{
setlocale(LC_CTYPE, "rus");
bool exit = false;
int num;
float x, y, result;
while (!exit) {
cout x >> y;
cout
Хы-хы-хы. Опыта программирования 0 (давным-давно, в универе проходили Borland Pascal). Занимаюсь, чтобы "отлипнуть" от проклятого MMO-гейминга =)
Спасибо за очень качественный курс лекций.
Развлекался со своей программой, и под конец она превратилась в такого "монстра":
//Выбор из 4х операций (+,-,*,/) с 2мя целыми числами
#include
using namespace std;
int main()
{
int x = 0, y = 0, op = 5;
setlocale(LC_CTYPE, "rus");
while ((op < 0) || (op>4))
{
cout
Спасибо, теперь мне почти все стало понятно)))))
Спасибо за уроки, это очень полезный материал и очень хорошая подача!
Очень полезный контент делаешь, довольно-таки детальное обучение. Спасибо!
однажды кто-то не понял д/з симплкода, и написал калькулятор для свича за 800рублей
Уроки идут классно мне программирование становиться все больше интереснее
Прогресс есть?
Дз сделал легко, не зря учил java :)
домашку сделал, так можна?
{//Switch. Что это. Пример. Синтаксис. Оператор множественного выбора.
setlocale(LC_ALL, "Rus");
int a, b;
char action;
cout a >> action >> b;
switch (action)
{
case '+':
cout
так же сделал
int a, b, op;
double result;
cout a;
cout b;
cout op;
switch (op)
{
case 1:
cout
приведение типа в делении забыл
op лучше сделать char
Завтра экзамен по СИ, но я буду делать на основе с++ :0
Отлично Объяснили!
Спасибо автору за его обьяснения!
Спасибо! Интересно учиться
вот моя чудная домашка...
Запутался со "\" что бы выводить кавычки..
можно было выполнять операции в самом "cout" но мне захотелось сделать именно так как я сделал...
#include
using namespace std;
int main()
{
setlocale(LC_ALL,"Russian");
int a,b,result =0;
char select;
cout >a;
cout b;
cout >select;
switch (select)
{
case 42:
result = a * b;
cout
Большое спасибо за урок!
Дз:
#include
using namespace std;
int main()
{
float a, b;
int c;
cout > a;
cout > b;
cout c;
switch (c)
{
case 1:
cout
не проще так?
int a;
cin>>введите число>>
cout
Так это для примера
* Самые понятные, видео уроки по c++, на всём (RU) youtube *
Было бы не лишним упомянуть о том, что switch в качестве аргумента принимает ТОЛЬКО int. Если бы switch работал с текстом, то его было бы удобно использовать при чтении и обработке различных блоков текстового файла. А так пользы от него почти что ничего. if else громоздкий, но хоть работает.
Чар вроде тоже принимает
@@arsIsv чар это и есть текст
@@polzovatel582 чар это чар, а текст это массив чаров
Стоило бы добавить, что оператор switch (в отличие от if) может работать только с целочисленными или символьными переменными.
Посмотрел урок.Захотелось по приколу создать маленький опрос,тест что ли.Правда так и не пришло в голову,как сделать так,что бы в конце ответ сам выводился,поэтому придется тому,кто это проходит,самому собирать все.Как-то так.Спасибо за уроки.Все просто отлично!
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "ru");
const char m = '
';
int a, b, c, d, e, f, g;
cout
Слаживай
Привет из 2024 года, захотел я значит после предыдущего видео сразу попробовать сделать свой калькулятор, можно ввести 2 числа и выбрать действие, написанное через if else, а тут уже в следующем видео разбор, как это сделать гораздо проще.
void main() у меня компилятор не хочет это читать только с int main () работает
return 0 пишешь ?
Тоже самое
Скачай DevC++
RomeO69 воид имеет в виду невозвратимость,то есть инт мейн значит какое значение вернёт функция мэйн,поэтому пишется ретурн 0.
RomeO69 возможно ты написал ещё в конце ретурн 0,я не знаю,но может это так-же зависит от среды,ну или ос
еще советую сделать проверку в домашнем задании, что число второе число при делении не равно нулю и выводить что на ноль делить нельзя)
Я решил попробовать сделать так, чтобы программа не закрывалась, в случае если введено не то число, и калькулятор давал второй шанс) когда-нибудь мы изучим циклы, и можно будет просто сделать, чтобы программа возвращала в начало) но пока вот так:
#include
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "ru");
double a, b; //Ввод чисел
int c;
cout a;
cout b;
cout c;
if (c > 4)
{
cout c;
switch (c) // кейсы с решениями
{
case 1:
cout
Почему бы и не закинуть это сюда))
Всегда удивляет то что вроде бы простое задание, но столько вариантов исполнения у разных людей)
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "rus");
int a, b, q;
cout > a;
cout > b;
cout q;
switch (q)
{
case 1:
cout
Вот такой вот калькулятор сделал
double n1, n2, res;
short znak;
cout > n1;
cout > n2;
cout > znak;
switch (znak) {
case 1:
res = n1 * n2;
break;
case 2:
res = n1 / n2;
case 3:
res = n1 + n2;
case 4:
res = n1 - n2;
default:
cout
Спасибо за урок!
Вобщем изначально была задумка зделать через char чтоб вводить соответствующий символ а не число для присвоения операции. но тех знаний что я имел мне не хватило, зделал как смог. вот сейчас посмотрел что другие делали, и понял что я не стал символ выделять кавычками ' / ' а я просто без кавычек в кейсе писал изза чего компилятор ругался, писец столько времени в пустую потратил.
Получился вроде неплохой весьма калькулятор))
#include
using namespace std;
int main()
{
setlocale(0, "");
cout
Cull
Я не стал вводить лишнюю переменную Sum, просто делал так: cout
ну что стали программистом ?
спасибо, вы мне очень помогли с лабораторкой
Спасибо большое, очень понятно!
Моя домашка:
#include "pch.h"
#include
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Rus");
int a, b, c, d, e, g, h; //Переменные
cout a;
cout b;
cout c; // C - действие
switch (c)
{
case 1:
{
d = a + b;
cout
можно было обойтись тремя переменными
Очень интересный урок! Лайк!
Д/З:
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "ru");
int n_1, n_2, n_3;
cout n_1;
cout n_2;
cout
За 10 минут вы объяснили тему 45 минут урока, при чём ОЧЕНЬ ПОНЯТНО
здесь должен быть 1М лайков :)
Тут уже множество кодов, но все же и я оставлю свой ^_^
#include "pch.h"
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Rus");
int a, b, c;
cout > a >> b;
cout
у меня вообще можно считать получилось мини-магазин
void main()
{
using namespace std;
int money = 264;
int a;
//axe - 1
int b = 12;
//smord - 2
int s = 34;
//knife - 3
int k = 23;
cout a;
switch (a)
{
case 1:
cout
int a, b, c;
cout a ;
cin >>b ;
cout
Ты лучший продолжай в таком духе
С помощью этого оператора можно написать игру квест.
O daaa
или текстовую новеллу
#include "pch.h"
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int a;
int b;
int c;
cout a;
cout > b;
cout
Хитро)
Круто!
Решил тоже скинуть свой код :D Естественно код можно улучшить во много раз.
Код:
#include
using namespace std;
void main()
{
setlocale(0, "rus");
cout
system("pause"); - забыл убрать т.к проводил эксперименты.
Подскажите, пожалуйста, как будет выглядеть код, если возле case должно быть указано условие ( к примеру a
спасибо за урок!
Спасибо за видео! Все абалденна)
Я пришел посмотреть гайд о том как написать ИИ Gabe Newell, а тут какие-то дз еще делать надо!
Забавно, что я уже на середине видоса решил сам попробовать создать калькулятор на этом, ещё до того как узнал само задание. Видеоуроки сподвигают заниматься и являются самыми приятными и понятными
Интересно, кто нибудь учел, что в математике на 0 - делить нельзя?)
#include
using namespace std;
int main()
{
setlocale(LC_ALL,"Rus");
int var1, var2;
char znak;
cout znak>> var2;
switch (znak)
{
case '+':
cout
А вот что я придумал)) Постарался оформить нормально меню)
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "ru");
double a, b;
cout a;
cout b;
cout
default:
cout
Я давно без switch это задание делал:
#include
using namespace std;
int main(){
int a, b;
char c;
cin>>a>>c>>b;
if(c=='+'){
cout
Тогда в принципе удобнее пользовать switch чем if , else в написании кода я правильно понимаю?)
нет
Немного поменял код.Очень хочу научиться делать так,что бы при вводе не правильного числа перебрасывало на начало.Но пока что получается только полный вылет
из игры.Пробывал с continue,но как-то не вышло(
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "ru");
const char m = '
';
int a, b, c, d, e, f, g, h;
h = 0;
cout
Сижу на работе в ночь, и делаю дз :D Никуда не подсматривал, были ошибки, но сделал сам. Но блин чувствую что что-то не так))
#include
using namespace std;
int main()
{
int chislo1;
int chislo2;
int result;
int count;
cout chislo1;
cout chislo2;
cout result;
switch (result)
{
case 1:
count = chislo1+chislo2;
cout
чего не так? все так, но ты немного усложнил(может и специально), можно было сразу объявить count1 = chislo1 + chislo2, count2 = chislo1 - chislo2 а в кейсах просто выводить
case 1:
cout
и я не досмотрел еще до конца, но после default break не нужен, если ide само тебе не написало, то можно не трудиться его писать
OkaNiD спс
при Int будут числа лишь целые а для точности используй double
😯 Вау!! Круто!!
Здравствуйте)) Подскажите пожалуйста может ли Switch проверять переменные символьного типа?
Прошло уже 2 года и никто так и не ответил ) Но я все равно отвечу xD
Можно, просто символ нужно писать в скобочках. Пример:
case 'a'
@@raon5635 Прошло еще 2 года но мне очень помог твой совет спасибо огромное)))
Не понял, что за дичь: в Паскале, насколько помню, "case" выполняется четко по условию, а тут без "break" не работает (валит все в кучу). Странно в "СИ++" этом. А в целом смысл схож с другими языками (Бейсиком, Паскалем), хотя к форме надо привыкнуть (постепенно привыкаю и даже простенькие программки уже на Си++ записал). Спасибо Вам - очень полезный и простой (пока, во всяком случае) курс, хотя язык, подозреваю, бездонный этот "СИ++"!
Около часа думал, как реализовать операцию сложения с помощью переменной, в которой будет выражение a+b, то есть plus = a+b; а в case просто добавить case plus: Но так и не понял, почему так нельзя реализовать, что то пишет про константу, а только через 1. 2. 3. 4. или A. B. C. D. Объясните кто нить а, почему так?
upd: Нашел причину.
В строке case знаки нужно выделять одиночными кавычками, а тип переменной задавать символьный char.
#include
using namespace std;
/*
калькулятор
*/
int main()
{
setlocale(LC_ALL, "Rus");
cout
#include
#include
#include
using namespace std;
int main() {
setlocale (LC_ALL, "ru");
int a,b,selection;
cout > a >> b;
cout
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "Rus");
int a, b, oper; //Переменные a и b отвечают за числа, oper - за действие
cout > a >> b; //Ввод чисел a и b
cout > oper; //Ввод действия от 1 до 5
switch (oper)
{
case 1:
cout
Лайк №10000!
Немного не понял, по сути case 1 это тоже самое, что и if (a == 1) ? А default тоже самое, что и else ?
Можете решить задачу:Дано два числа.Введите число n.Если n=1 то найдите из двух чисел минимум,если введено n=2,то из двух чисел максимум. Пожалуйста очень нужно,C++ оператор выбора
#include "stdafx.h"
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Russian");
int n;
int a;
int b;
cin >> n;
cin >> a;
cin >> b;
if(n == 1 && a != b) {
if(a > b) {
cout
#include
using namespace std;
int main() {
setlocale(LC_ALL, "rus"); //Локалтзация - русская
cout a; //Введение самого числа
switch (a) //Оператор "switch", который сегодня рассматривается
//Благодаря этому оператору, мы можем "выбрать что-то из меню"
//Всё это осуществляется, за счёт переменных и определённой цифры
//В этом операторе есть так называемые "кейсы"
//В каждом из кейсов пишется последовательность действий, если пишется некая цифра или выражение
//Рассмотрим:
{
case 1:
system("color 02"); //Команда, о том что цвет в консоли будет зелёный
system("pause>>Null"); //Комманда паузы без текста
break; // Говорит о том, что всё в данном кейсе выполнено
//Между прочим, если выберется один кейс, то другие выполняться не будут
// "switch" - выбор (анг.)
case 2:
system("color 03"); // Меняет цвет на голубой
system("pause>>Null"); //Комманда паузы без текста
break; //Моя остановочка
default: //Что будет если, указано не 1\2, а другое число
cout
ДЗ:
cout B;
cout S;
switch (S)
{
case '+':
cout
Большое спасибо
#include
using namespace std;
int main()
{
setlocale(0, "rus");
int a,b,c;
cout >b;
cout
Моё ДЗ:
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "Rus");
int a, b, c;
const char N = '
';
cout b;
cout
Думаю для a и b нужно взять float (особенно актуально для деления), а для с - int, т.к. switch работает с целочисленными значениями.
Это честно? Просто goto again мы ещё не изучали.
Моё решение ДЗ. Делал всё сам, как исключение - подглянул в гугле как управлять курсором. Всё остальное взял из своих знаний. (P.S. Работает прога только под виндой)
#include
#include
#include
using namespace std;
int main()
{
setlocale(0, "");
COORD coord;
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
HANDLE io = GetStdHandle(STD_OUTPUT_HANDLE);
double a, b;
char f;
cout
Вроде справился:D
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "Rus");
cout b;
cout
#include "pch.h"
#include
using namespace std;
int main()
{
setlocale(LC_ALL, "Rus");
int a, b, c;
char w;
cout a >> w >> b>> w >> c;
switch (w)
{
case '+':
cout
спасибо
Спасибо!
Кста , если написал default в конце , то break каждый раз можно не писать , ибо default всегда в конце кода пишется.
спасибо вам большое
здравствуйте, как развить алгоритм и решать проблему? пожалуйста сделайте видео на эту тему.
#include
using namespace std;
void main()
{
setlocale(LC_ALL, "RUS");
int a, b, c;
cout > a;
cout > b;
cout
ДЗ:
#include
using namespace std;
void main()
{
float a, b;
char c;
setlocale(LC_ALL, "Rus");
cout > a;
cout b;
cout c;
switch (c)
{
case '*':
cout
Ну да. У вас более детальнее)
говнокод
Зачем тебе b-a, если ты сам задаешь эти переменные?)
Пишешь 1 число, затем второе, и от тебя зависит, каким будет а, а каким b
дз
#include
using nament main()
{
setlocalint a, b, c;
cout a;
cout b;
cout c;
switch (c)
{
case 1:
cout
Вижу тут все выкладывают свой код, не знаю зачем но поступлю также
#include
using namespace std;
int main() {
setlocale(LC_ALL, "rus"); \
int a, b;
char w;
cout a >> w >> b;
switch (w)
{
case '+':
cout
% это остаток от деления
Фаак. Так можно было? Я абсолютно по другому сделал..
но тем не менее это работает)
setlocale(LC_ALL, "Rus");
int b;
double a, c;
cout > a; // первое число
cout