Решить на pascal abc (с подробным объяснением каждого шага в программе) дана строка. слова в предложении разделены пробелом. предложение заканчивается "." "! " "? ". определить слово с максимальным числом букв "а" и количество букв "а" в нем. заранее за написанные программы.
262
382
Ответы на вопрос:
Var st,stmax1,stmax: string; l,i,maxa,cola: integer; begin readln(st); { считываем строку} l: =length(st); { получаем длину строки} cola: =0; { количество букв а в слове} maxa: =0; { максимальное количество букв а в слов е} stmax1: =''; { то, куда мы будем записывать слово} for i: =1 to l do begin { проходим по строке l раз} if ((st[i]< > ' ') and (st[i]< > '.') and (st[i]< > '! ') and (st[i]< > '? ')) then { если символ не пробел, не точка, не воскл. знак и не вопрос. знак то записываем в строку одну букву} stmax1: =stmax1+st[i]; { буква+буква+буква} if (st[i]='а') then cola: =cola+1; { если считываемая буква-а то увеличиваем счётчик букв а в слове} if (st[i]=' ') or (st[i]='.') or (st[i]='! ') or (st[i]='? ') then begin{ если дошли до конца слова } if (maxa< cola) then begin maxa: =cola; stmax: =stmax1 end; { если количество 'а' в слове больше макс. кол-ва 'а' в одном из слов, то максимальное кол-во приравниваем к кол-ву, строку приравниваем к этому слову(stmax: =stmax1)} stmax1: =''; { обнуляем слово} cola: =0; { обнуляем счётчик 'а'} end; end; writeln(stmax); write(maxa); end.
Var s,s1,s2,smax: string; max,k,p,i: integer; begin writeln('введите предложение: '); readln(s); s1: =s; s1[length(s1)]: =' '; max: =0; smax: =''; while s1< > '' do begin p: =pos(' ',s1); s2: =copy(s1,1,p-1); k: =0; for i: =1 to p-1 do if s2[i]='а' then k: =k+1; if k> max then begin max: =k; smax: =s2; end else if k=max then smax: =smax+','+s2; delete(s1,1,p); end; writeln(smax); writeln('k = ',max); end. пример: введите предложение: макаронина и а также команда каска и палатка. макаронина,,палатка k = 3
Program z1; var a: array[1..10] of real; i,min,max,sr: integer; begin fo i: =1 to 10 do readln(a[i]); min: =a[1]; max: =a[1]; sr: =0; for i: =1 to 10 do begin if min> a[i] then min: =a[i]; if max< a[i] then max: =a[i]; sr: =sr+a[i]; end; sr: =sr/10; writeln(min,max,sr); end.
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
yanochka13kol28.09.2021 19:36
-
АлексейGrigorjew20.03.2023 04:37
-
marisina03.12.2020 09:58
-
polinaserdiuk417.07.2021 02:03
-
LEXSUS1803.11.2021 10:00
-
sofiika1727.05.2020 04:12
-
мика095516.02.2023 22:56
-
angelina2003po10.12.2021 03:10
-
Шпсхрчз01.04.2023 19:29
-
sivtsevavera200526.02.2020 05:13
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.