Найти слово, стоящее в тексте под определенным номером, и вывести его первую букву.
var str: string; len, count, flag, i, n: byte; begin writeln('String: '); readln(str); write('Word №: '); readln(n); len := length(str); count := 0; flag := 0; for i:=1 to len do begin if (str[i] ' ') and (flag = 0) then begin count := count + 1; flag := 1; if count = n then break; end; if str[i] = ' ' then flag := 0; end; writeln(str[i]); end.
Пример выполнения кода:
String: hello world big ban lala uuu vasy Word №: 5 l
Комментарии
Можно и так
if (str[i] ' ') and (flag
смысл этого? Первое слово сработает, дальше флаг станет 1 и цикл работать не будет
Неверно решена задача
Скопировал себе в паскаль, запустил программку, ввёл данные. Программа выводит неверное решение. Тестил несколько раз, в алгоритме косяк)
Проверяю в FreePascal в
Проверяю в FreePascal в Linux. Если вводить английские слова, то работает, если русские - то нет.