Есть ответ 👍

Нужна программа на pascal. определить, ли лексикографически слова данного предложения( предложение задается программистом с read).

291
494
Посмотреть ответы 2

Ответы на вопрос:

mushdal
4,6(27 оценок)

"типовой школьный" паскаль: // pascalabc.net 3.0, сборка 1064 const   k = 100; var   s, wd: string;   i, j, m, n, pt, step: integer;   words, wordssort: array[1..k] of string;   inorder: boolean; begin   write('введите строку: '); readln(s);   n : = length(s); pt : = 1; m : = 0;   repeat       // пропускаем все символы до первого непробельного       while pt < = n do           if ord(s[pt]) < = 32 then inc(pt) else break;       if pt < = n then begin           // выделяем очередное слово           wd : = '';           while pt < = n do               if ord(s[pt]) > 32 then begin wd : = wd + s[pt]; inc(pt) end               else break;           if wd < > '' then begin inc(m); words[m] : = wd end       end   until pt > n;   // теперь words содержит все m слов.   // отсортируем их в массиве wordssort методом шелла   for i : = 1 to m do wordssort[i] : = words[i];   step : = m div 2;   while step > 0 do begin       for j : = m - step downto 1 do begin           i : = j;           while i < = m - step do begin               if wordssort[i] > wordssort[i + step] then begin                   wd : = wordssort[i];                   wordssort[i] : = wordssort[i + 1];                   wordssort[i + 1] : = wd               end;               i : = i + step           end       end;       step : = step div 2   end;   // осталось поэлементно сравнить оба массива   inorder : = true; i : = 1;   while inorder and (i < = m) do   begin inorder : = (words[i] = wordssort[i]); inc(i) end;   if m = 0 then writeln('строка не содержит слов')   else       if inorder then writeln('cлова ')       else writeln('cлова не ') end. тестовое решение: введите строку: слово1      слово2      слово3      слово4 слово5 cлова введите строку: слово1      слово2      слово4      слово3 слово5 cлова не "современный" вариант решения на паскале: // pascalabc.net 3.0, сборка 1064 var   s: string; begin   write('введите строку: '); readln(s);   var delim: =range(0,32).select(x-> chr(;   var words: =s.split(delim).where(x-> x< > '');   var wordssort: =words.sorted;   if words.sequenceequal(wordssort) then writeln('cлова ')   else writeln('cлова не ') end. тестовое решение совпадает с .

влево, это же логично, надеюсь хоть чуточку

Реши свою проблему, спроси otvet5GPT

  • Быстро
    Мгновенный ответ на твой вопрос
  • Точно
    Бот обладает знаниями во всех сферах
  • Бесплатно
    Задай вопрос и получи ответ бесплатно

Популярно: Информатика

Caktus Image

Есть вопросы?

  • Как otvet5GPT работает?

    otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса.
  • Сколько это стоит?

    Проект находиться на стадии тестирования и все услуги бесплатны.
  • Могу ли я использовать otvet5GPT в школе?

    Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое!
  • В чем отличия от ChatGPT?

    otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.

Подпишись на наш телеграмм канал

GTP TOP NEWS