Сделать программу и блок схему ! на паскале. : определить сколько раз в тексте встречается слово "давши". исходный текст: не давши слово-крепись, а давши - держись
174
368
Ответы на вопрос:
Поставленную можно решать разными способами. можно озаботиться красотой алгоритма, можно - эффективностью выполнения программы, можно еще много чем. в связи с тем, что в настоящее время компьютеры большой вычислительной мощностью, а проста, выберем алгоритм, который имеет минимальную трудоемкость в написании и понятен внешне, хотя, быть может, в чем-то не совсем оптимален с точки зрения вычислительного процесса. речь идет об использовании встроенной функции языка паскаль - функции pos. конечно, использование функции posex, появившейся в pascal.abc, было бы эффективнее, но будем придерживаться классической версии. функция pos позволяет найти позицию первого от начала строки вхождения в эту строку подстроки. если вхождения нет - функция возвращает ноль. принимая оставшуюся после найденного вхождения часть строки за новую строку и повторяя поиск, можно найти все вхождения. не говорит, как организован ввод текста. дело в том, что в паскале строка не может содержать переход к новой строке, а текст задан двумя строками. можно организовать ввод двух строк, можно задать текст строковыми константами, можно организовать ввод из файла. считая, что смысл в поиске вхождений, принимаем способ текста несущественным и задаем текст двумя строковыми константами. это потребует выполнения алгоритма для каждой строки, следоватеьно, нам потребуется пользовательская функция, к которой мы будем обращаться. const c1='не давши слово-крепись,'; c2='а давши - держись'; cc='давши'; { искомый контекст } function kol(c,ci: string): integer; {количество вхождений ci а c } var p,k,l,li: integer; begin k: =0; li: =length(ci); l: =length(c); repeat p: =pos(ci,c); if p> 0 then begin l: =length(c); inc(k); if p+li< l then c: =copy(c,p+li,l-(p+li-1)) end until (p=0) or (p+li> =l); kol: =k end; begin writeln('количество вхождений равно ',kol(c1,cc)+kol(c2,cc)) end. вывод решения: количество вхождений равно 2
A) функция print не имеет () б) ошибка, нет српвнения, нет then в) нет if, ошибка г) ошибка в теле условия( ошибка в присваивании )
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
Maximys200112311.03.2022 23:14
-
Akosh1120.12.2021 00:07
-
vztositgicgc29.08.2021 09:49
-
Аврораttt378305.04.2022 09:36
-
masdud200130.10.2020 14:18
-
rayyana1422.10.2021 10:44
-
SmeliyAlan55611.07.2020 12:47
-
Tatynm04.06.2023 11:32
-
1LOSI106.01.2023 09:41
-
spartanash05.03.2022 10:22
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.