|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
||||||
Как перезапускать цикл?24.02.2024, 20:33. Показов 788. Ответов 13
Это функция создания нового персонажа, и если какая-то проверка не проходит, то цикл должен начинаться заного, но он продолжается. Как перезапускать цикл?
0
|
||||||
| 24.02.2024, 20:33 | |
|
Ответы с готовыми решениями:
13
Как перезапускать сервер, в случае ошибок? Как перезапускать дочерний процесс в случае его краха? |
|
фрилансер
6444 / 5639 / 1128
Регистрация: 11.10.2019
Сообщений: 15,007
|
|
| 24.02.2024, 20:56 | |
|
Tulsk1y2, вынеси этот цикл в функцию, возвращающую bool. Если что-то не так, делай return false, а в конце функции return true
снаружи можно решить - вызвать функцию заново или нет
0
|
|
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
|
| 24.02.2024, 21:01 [ТС] | |
|
это и есть функция.
0
|
|
|
фрилансер
6444 / 5639 / 1128
Регистрация: 11.10.2019
Сообщений: 15,007
|
|
| 24.02.2024, 21:04 | |
|
Tulsk1y2, ещё пока нет. Но надо сделать
Или в лямбду, чтобы не светить наружу
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,201
|
|||
| 24.02.2024, 21:11 | |||
|
И о каком именно цикле вообще?
0
|
|||
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
|
| 24.02.2024, 21:19 [ТС] | |
|
А как быть, если игрок допустит ошибку при вводе возраста? Он же будет заново переписывать имя.
Добавлено через 6 минут Ну вот игрок сделал одну ошибку, цикл должен начаться с начала.
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,201
|
||
| 24.02.2024, 21:23 | ||
|
Чем вас это не устраивает? О каком другом "с начала" вы ведете речь?
0
|
||
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
||||||
| 24.02.2024, 21:26 [ТС] | ||||||
|
У меня этот код просто продолжается, а на следующем цикле, где записывается age, за место него, записывается сама ошибка, и при этом всё записывается в файл.
P.S. Вот вывод:
0
|
||||||
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,201
|
||
| 24.02.2024, 21:55 | ||
|
У вас в программе имя персонажа должно состоять из одной буквы. Почему вы вводите "artem". Это пять букв. Если вы вводите "artem", то имя персонажа будет a, а rtem - это будет возраст персонажа. Разумеется, получается чушь.
0
|
||
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
|
| 24.02.2024, 21:57 [ТС] | |
|
Всмысле из одной буквы? Нужно с заглавной.
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,201
|
||||||||
| 24.02.2024, 21:59 | ||||||||
age - это переменная типа int. Какой смысл проверять ее на цифры, если в числе всегда присутствуют только цифры и больше ничего.
char - это один символ. Вы вводите один символ. Одну букву.
0
|
||||||||
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
|
| 24.02.2024, 22:01 [ТС] | |
|
Просто мне показалось , что с++ без разницы, число там или нет. Наверное ошибся. Через try сделать получается, чтоб ошибок не было?
Добавлено через 1 минуту namee нужно для проверки, что первая буква находится в верхнем регистре, т.к. там только char, нельзя использовать string.
0
|
|
|
Вездепух
12930 / 6798 / 1819
Регистрация: 18.10.2014
Сообщений: 17,201
|
|||||||||
| 24.02.2024, 22:06 | |||||||||
Сообщение было отмечено Tulsk1y2 как решение
Решениеint может хранить только целые числа и больше ничего. Проверять int не тему того, число это или не число, смысла нет. Это всегда гарантированно число.Еще раз: вы считываете из пользовательского ввода только одну-единственную букву. То есть вы вводите artem, но считываете только a, а остаток rtem остается непрочитанным. Затем в строке 9 вы запихиваете эту букву в name и далее делаете какие-то странные проверки вроде
name может быть больше 20, если вы в name только что запихали одну-единственную букву?Также, а что делать с остатком rtem, если вы считываете только первую букву a? Этот остаток остается сидеть в пользовательском вводе и далее ваша программа пытается его считать в качестве возраста персонажа. Происходит ошибка чтения, так как rtem - это не целое число.std::string.
0
|
|||||||||
|
2 / 2 / 0
Регистрация: 26.08.2023
Сообщений: 166
|
|
| 24.02.2024, 22:09 [ТС] | |
|
До меня дошло. Надо вписывать наоборот name, а потом в isupper проверять его нулевой индекс, т.е. его первую букву. Но на счёт этого не точно, может надо в namee записать нулевой индекс имени. Тогда все проверки должны проходить.
0
|
|
| 24.02.2024, 22:09 | |
|
Помогаю со студенческими работами здесь
14
Как из моего приложения перезапускать какую-либо программу с использованием таймера?
Приходится перезапускать проводник Диспетчер печати приходится перезапускать В LogCat ничего нет, приходится перезапускать Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов
На странице:
https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/
нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
|
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов.
. . .
|