В разделе 'А слабо?' нужно было написать функцию для
определения позиции символа в строке. Я написал её и протестировал в программе на английском слове dog. Искомая буква "о".
Программа вывела 2. Ввожу слово "собака". Искомая буква "о". Пишет 0. Причём такое во всех русских словах и при любых операциях
с ними, когда нужно вывести результат работы вместо букв выводится знак вопроса в ромбе, но при этом если написать просто writeln('Привет мир');,то
русские буквы выводятся нормально. Использую ubuntu 12.04 LTS.Вот исходный код:
- Код: Выделить всё
VAR WORD:STRING;
CHR:STRING;
FUNCTION FINDCAHR(STR:STRING;LETR:STRING):INTEGER;
VAR NUM:INTEGER;
BEGIN
FINDCAHR:=0;
FOR NUM:=1 TO LENGTH(STR)
DO BEGIN
IF STR[NUM] = LETR THEN FINDCAHR:=NUM;
END;
END;
BEGIN
WRITE('ВВЕДИТЕ ТЕКСТ>');
READLN(WORD);
WRITE('ВВЕДИТЕ ИСКОМЫЙ СИМВОЛ>');
READLN(CHR);
WRITELN(FINDCAHR(WORD,CHR));
END.
В чём может быть дело?