
Вопрос задан 01.01.2019 в 19:32.
Предмет Информатика.
Спрашивает Сатыбаев Нурдаулет.
Объясните, пожалуйста, почему у меня в этой программе выводится последняя буква первого слова, а не
второго, и что надо исправить, чтобы выводило последнюю букву второго слова предложения? Program vtor_bukva; Var S:String; Begin Writeln('введите исходное предложение: '); Readln(s); write('Последняя буква второго слова=',s[pos(' ',s)-1]); readln (s); end. Даю 20 баллов. Помогите, пожалуйста.

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

Отвечает Земских Алексей.
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)]). Если что-то не понятно, в лс.
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)]). Если что-то не понятно, в лс.


Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
Предметы
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili