Программирование 98 , паскаль/c++/в крайнем случае python 1.в постфиксной записи (или обратной польской записи) операция записывается после двух операндов. например, сумма двух чисел a и b записывается как a b +. запись b c + d * обозначает привычное нам (b + c) * d, а запись a b c + d * + означает a + (b + c) * d. достоинство постфиксной записи в том, что она не требует скобок и дополнительных соглашений о приоритете операторов для своего чтения. входные данные в единственной строке записано выражение в постфиксной записи, содержащее однозначные числа и операции +, -, *. выходные данные необходимо вывести значение записанного выражения. примеры входные данные 8 9 + 1 7 - * выходные данные -102 2.в одной компьютерной игре игрок выставляет в линию шарики разных цветов. когда образуется непрерывная цепочка из трех и более шариков одного цвета, она удаляется из линии. все шарики при этом сдвигаются друг к другу, и ситуация может повториться. напишите программу, которая по данной ситуации определяет, сколько шариков будет сейчас "уничтожено". естественно, непрерывных цепочек из трех и более одноцветных шаров в начальный момент может быть не более одной. входные данные сначала вводится количество шариков в цепочке (не более 1000) и цвета шариков (от 0 до 9, каждому цвету соответствует свое целое число). выходные данные требуется вывести количество шариков, которое будет "уничтожено". примеры входные данные 5 1 3 3 3 2 выходные данные 3 решить хоть 1 из двух
157
463
Ответы на вопрос:
1. решается с стека (алгоритм дейкстры для обработки обратной польской записи). предполагается, что во вводимой строке содержится корректное выражение, удовлетворяющее условиям . // pascalabc.net 3.3, сборка 1555 от 21.10.2017 // внимание! если программа не работает, обновите версию! begin var w: =readlnstring.towords; var st: =new stack < integer> ; var r: =0; foreach var t in w do if t[1].isdigit then st.push(t.tointeger) else begin var a: =st.pop; var b: =st.pop; case t[1] of '+': st.push(a+b); '-': st.push(b-a); '*': st.push(a*b) end; end; writeln(st.pop) end. контрольный пример 8 9 + 1 7 - * -102 2. крайне просто решается при регулярного выражения с рекурсией. фактически вводить количество шаров не нужно, поэтому после ввода оно отбрасывается. // pascalabc.net 3.3, сборка 1555 от 21.10.2017 // внимание! если программа не работает, обновите версию! begin writeln(readlnstring.towords.skip(1).joinintostring(''). matchvalue('{2,}').length); end. контрольный пример 5 2 3 3 3 1 3
Program ksushaa1999passwordrepeat; uses crt; var vvod,ok: string; const pass=' [email protected]& $45%$! #hfthugrug'; begin writeln('*** alphaeus is ***'); writeln('*** ok ***'); writeln(); repeat writeln('введите пароль '); readln (vvod); until vvod=pass; writeln('принято'); end. program ksushaa1999passwordwhile; uses crt; var vvod,ok: string; const pass=' [email protected]& $45%$! #hfthugrug'; begin writeln('*** alphaeus is ***'); writeln('*** ok ***'); writeln(); while vvod< > pass do begin writeln('введите пароль '); readln (vvod); end; writeln('принято'); end. program pksushaa1999passwordif; uses crt; var vvod,ok: string; const pass=' [email protected]& $45%$! #hfthugrug'; label metka; begin writeln('*** alphaeus is ***'); writeln('*** ok ***'); writeln(); metka: writeln('введите пароль '); readln (vvod); if vvod< > pass then goto metka; writeln('принято'); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
afkds24.10.2021 14:33
-
morfisleep10.06.2022 15:17
-
sumochkaaaaa19.05.2021 00:49
-
oiopiha05.02.2021 06:59
-
НЕВЕСОМАЯ6720.12.2020 16:41
-
anastasiyademy131.07.2021 02:14
-
kateadel0129.05.2022 05:47
-
Михаил68426.11.2020 09:58
-
aidargaliullin09.12.2022 18:56
-
guzel23129902.03.2022 04:29
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.