Объясните, , почему у меня в этой программе выводится последняя буква первого слова, а не второго, и что надо исправить, чтобы выводило последнюю букву второго слова предложения? program vtor_bukva; var s: string; begin writeln('введите исходное предложение: '); readln(s); write('последняя буква второго слова=',s[pos(' ',s)-1]); readln (s); end. 20 . , .
287
442
Ответы на вопрос:
Program vtor_bukva; var s: string; begin writeln('введите исходное предложение: '); readln(s); delete(s, pos(' ', s), 1); write('последняя буква второго слова='); if pos(' ', s) < > 0 then write(s[pos(' ', s) - 1]) else write(s[length(s)]); readln(s); end. твоя программа выводит символ, стоящий перед первым пробелом. а нужно, чтобы выводила символ, стоящий перед вторым пробелом. не стоит забывать, что второго пробела может и не быть. так что, я удаляю первый пробел. а потом делаю проверку: есть ли ещё пробелы (if pos(' ', s) < > 0)? если пробелы есть, то программа выводит букву, следующую перед вторым пробелом (или последнюю букву второго слова). если пробелов нет (всего два слова в предложении было введено), то программа выводит последнюю букву (s[length(s)]). если что-то не понятно, в лс.
Популярно: Информатика
-
KiviPlayYT23.01.2021 19:53
-
nikysha0423.06.2020 08:09
-
Kirill123334131.01.2022 23:13
-
ASkrpt08.06.2022 13:37
-
arianadorofeva26.09.2022 05:04
-
юлеч200311.01.2020 07:55
-
Вапрос8613.03.2021 11:28
-
38097359929302.09.2020 06:33
-
kateadel0115.06.2020 12:20
-
nazyrovailnara26.12.2021 14:21