profile
Опубликовано 5 лет назад по предмету Информатика от tymoyalaka

множества.
Дана непустая последовательность слов из строчных русских букв:
между соседними словами-запятая,за последним словом-точка.Напечатать в алфавитном порядке все гласные буквы,которые не входят хотя бы в одно чётное слово.

  1. Ответ
    Ответ дан Аккаунт удален
    PascalABC.NET 3.4.0, сборка 1671 от 31.05.2018
    Внимание! Если программа не работает, обновите версию!

    begin
      var a:=ReadlnString.ToWords(Arr(',','.'));
      var (i,ssg):=(1,'аеёиоуыэюя');
      var sg:=['а','е','ё','и','о','у','ы','э','ю','я'];
      while i<=a.Length do begin
        foreach var c in a[i].ToCharArray do
          if c in sg then Exclude(sg,c);
        i+=2
        end;
      for var j:=ssg.Length downto 1 do
        if not (ssg[j] in sg) then Delete(ssg,j,1);
      ssg.ToCharArray.Println(',')
    end.

    1. Ответ
      Ответ дан Аккаунт удален
      Самая большая проблема была в том, что буква "ё" в кодовой таблице стоит вне прочих русских букв и нарушает порядок сортировки. Пришлось изворачиваться. А вообще множества, как они в Паскале реализованы, это пережиток прошлого и нужно применять их лишь там, где они совершенно необходимы.
Самые новые вопросы