Перечислить все слова, которые состоят из тех же букв, что и первое слово - Free Pascal
Формулировка задачи:
Требуется перечислить все слова заданного предложения, которые состоят из тех же букв, что и первое слово предложения. Слова разделяются пробелами.
Решение задачи: «Перечислить все слова, которые состоят из тех же букв, что и первое слово»
textual
Листинг программы
Var s,s1,s2:string; i:byte; b:boolean; Begin write('Введите строку: ');readln(s); s:=s+' '; s1:=Copy(s,1,Pos(' ',s)-1); Delete(s,1,Pos(' ',s)); While Pos(' ',s)>0 do Begin b:=true; s2:=Copy(s,1,Pos(' ',s)-1); Delete(s,1,Pos(' ',s)); For i:=1 to Length(s2) do if Pos(s2[i],s1)=0 then b:=false; if b then writeln(s2); End; readln; End.
Объяснение кода листинга программы
- Переменная
s
используется для хранения введенной пользователем строки. - Переменная
s1
используется для хранения подстроки строкиs
, начиная с первого символа и заканчивая символом, предшествующим первому пробелу в строкеs
. - Переменная
s2
используется для хранения каждого слова из строкиs
, которое находится после первого слова. - Переменная
i
используется как счетчик для цикла while. - Переменная
b
используется для проверки, содержит ли текущее слово все буквы первого слова. - Цикл while используется для обработки всех слов в строке
s
, начиная со второго слова. - Внутри цикла while, значение переменной
b
устанавливается в true, что означает, что текущее слово содержит все буквы первого слова. - Копия строки
s
сохраняется в переменнойs2
. - Первое слово удаляется из строки
s
. - Для каждого символа в слове
s2
проверяется, содержится ли этот символ в первом слове. - Если все символы слова
s2
содержатся в первом слове, то значение переменнойb
остается true. - Если значение переменной
b
остается true после проверки всех символов словаs2
, то это слово выводится на экран. - Значение переменной
b
устанавливается в false, что означает, что текущее слово не содержит все буквы первого слова. - После завершения цикла while, программа ожидает ввода пользователя.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д