Помощь - Поиск - Пользователи - Календарь
Полная версия: МНожества
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
vadim(b)
задание вывести все эти буквы ['q','w','e','r','t','y']которые НЕ входят более чем в одно слово,а я смог сделать чтобы выводил буквы которые входят хотябы в одно слово. Какие исправления необходимо внести??

var
str:string;
a:set of char;
i:integer;
l:char;
begin
 writeln('STR: ');
 readln(str);
 for i:=1 to length(str) do
  begin
    if str[i] in ['q','w','e','r','t','y'] then
    include(a,str[i]);
    end;
    for l:='a' to 'z' do
     if l in a then writeln(l);
     readln;

end.

volvo
Тогда я бы делал так:
type
  char_set = set of char;
const
  letter = ['q','w','e','r','t','y'];
  no_one_word: char_set = [];
  no_more_one: char_set = [];

var
  current: char_set;
  s: string;
  i: integer;

begin
  readln(s);
  { s := 'qwer wert erty rty tyui twwer'; }

  s := s + ' ';
  current := [];
  for i := 1 to length(s) do begin
    if s[i] = #32 then begin
      current := current * letter;
      no_more_one := no_more_one + no_one_word * (letter - current);
      no_one_word := no_one_word + (letter - current) - no_more_one;
      current := [];
    end
    else include(current, s[i]);

  end;

  for i := 0 to 255 do
    if chr(i) in no_more_one then write(chr(i));
  writeln;
end.
rolleyes.gif
Lapp
Извиняюсь что вмешиваюсь в разговор, я только хотел заметить vadim(b), что его программа совершенно не работает со словами (собственно, его постановка вопроса этого и не требует), даже не делит строку на слова, поэтому на вопрос:
Цитата(vadim(b) @ 14.12.2006 22:10) *

Какие исправления необходимо внести??

- ответить практически невозможно. Лучше написать программу заново (что volvo и сделал со свойственной ему легкостью smile.gif).
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.