Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
Программист по неволе
 Аватар для Alex_From_777
24 / 24 / 8
Регистрация: 22.04.2015
Сообщений: 476
Записей в блоге: 1

О том, почему нелюбим goto; как его правильно использовать; и чем в моем случае его можно заменить?

28.09.2015, 10:47. Показов 2873. Ответов 20
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот есть такой оператор всеми программистами нелюбимый. Goto называется.
Говорят, что его использование всегда можно обойти и использовать что-то другое.
Но я вот не вижу, чем его в этом моем коде можно заменить? Мне надо в случае если символ не опознан предложить ввести его еще раз. (А потом может еще раз и еще раз. И еще...)
И, пользуясь случаем, где здесь у меня синтаксическая ошибка у меня. А то компилятор сообщение выдает:
[C++ Error] Unit1.cpp(37): E2448 Undefined label 'SymIn'
А я вроде по примеру делал:
https://msdn.microsoft.com/ru-... dt9cd.aspx

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

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
double a, b, c;
string operation, New;
cout<<"Hello world! It's console calculation.";
cout<<"\n";
cout<<"Input a= ";
cin>> a;
cout<<"Input b= ";
cin>> b;
SynIn:
cout<<"Input operation symbol  ";
cin>> operation;
if (operation!="+" && operation!="-" && operation!="*" && operation!="/")
  {cout<<"Symbol is unknown or uncorrect! Tries again!";
  goto SymIn; }
else
  if (operation=="+") c=a+b;
  if (operation=="-") c=a-b;
  if (operation=="*") c=a*b;
  if (operation=="/") c=a/b;
cout<<"a"+operation+"b= ";
cout<< c;
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.09.2015, 10:47
Ответы с готовыми решениями:

Подскажите чем можно заменить этот "toLowerCase" и почему он его не принимает?
import static java.awt.SystemColor.text; import java.io.*; import java.util.Random; import java.util.Scanner; import java.util.Set;...

Если первое число отрицательно, то его значение заменить его модулем; в противном случае второе число заменить
Доброго времени суток. В университете задали эти задания по информатике (PascalABC). Сама полный ноль в этом, друзья посоветовали написать...

СВО для ПК и его достоинства, целесообразность в моем случае
Добрый вечер, уважаемые! Подскажите мне пожалуйста следующие несколько моментов. Сразу оговорюсь: проблем с местом в корпусе нету....

20
28.09.2015, 14:17
Студворк — интернет-сервис помощи студентам

Не по теме:

Странно... надо будет еще раз попробовать. У меня точно он выкидывал......

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
28.09.2015, 14:17

Как сделать, чтобы пункт меню создавался, только в том случае, если его еще нет?
Используя событие Workbook_Open() создаю дополнительный пункт в конце стандартного меню. При закрытии книги удаляю. Как сделать,...

PhoneGap. Как его использовать? В чем его недостатки по сравнению с Android SDK, Windows Phone SDK, iOS SDK?
В вики написано, что PhoneGap &lt;&lt;позволяет создать приложения для мобильных устройств используя JavaScript, HTML5 и CSS3, без необходимости...

В ListBox нет события OnChange. Чем его можно заменить?
Мне необходимо при добавлении/удалении строк в ListBox выводить кол-во строк в Edit. Подскажите как это реализовать.

Как правильно заполнить запись в моем случае?
Здравствуйте, подскажите, пожалуйста, как правильно заполнить запись в таком случае: моя бд охватывает раб область успеваемость и...

Подскажите как правильно поставить тег H1 в моем случае
Здравствуйте подскажите как поставить h1 у меня его вообще нет на странице в полной новости стоит &lt;h1&gt;{title}&lt;/h1&gt; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу (вариант №3)
Maks 15.11.2026
Обновленная версия предыдущей обработки. Изменения коснулись букв: Ъ, Ы, Ь, Э, отображения которых зависят от положения реквизита "Транслитерация имён". Изменено отображение буквы Й. Добавлена. . .
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru