Помогите с программой

Вопросы программирования на Free Pascal, использования компилятора и утилит.

Модератор: Модераторы

Ответить
artiommatvei
незнакомец
Сообщения: 2
Зарегистрирован: 26.12.2010 23:44:45

Помогите с программой

Сообщение artiommatvei »

вот код:

Код: Выделить всё

{ P_20_2.pas }
var S: string; k: integer;

procedure Scan(var arg : string);
var k: integer;
begin
     for k:=1 to Length(arg) do
         if arg[k]='A' then arg[k]:='B';
end;

begin
  for k:=1 to 3 do begin
    Write('Введите строку: '); Readln(S);
    Scan(S);
    Writeln(S);
  end;
end.


по идее она должна преобразовать буквы "а" в буквы "b" и повторятся 3 раза.
вот как она работает у меня:
Введите строку: abba
abba
Введите строку: qaaaw
qaaaw
Введите строку: manana
manana


копировал с учебника букву в букву исходный код, попробуйте у себя эту прорамму. Если тоже не работает подскажите что надо изменить, и желательно с объеснениями, чтоб потом не повторялось тоже самое.
Mr.Smart
долгожитель
Сообщения: 1796
Зарегистрирован: 29.03.2008 00:01:11
Откуда: из леса!

Сообщение Mr.Smart »

Вы вводите буквы в нижнем регистре, а проверяете и меняете в верхнем.
artiommatvei
незнакомец
Сообщения: 2
Зарегистрирован: 26.12.2010 23:44:45

Сообщение artiommatvei »

во блин, точно. никогда бы не догодался. Тем более говорилось что в виндусе нет разницы между верхнем и нижнем регстре. А самое интересное это то что в учебнике пример написан заглвными буквами...
Спасибо большое
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

artiommatvei писал(а):Тем более говорилось что в виндусе нет разницы между верхнем и нижнем регстре.

Это только в случае, если Вы читаете названия файлов. Для всех остальных случаев они различаются. И даже очень. ;)
Аватара пользователя
informat
новенький
Сообщения: 62
Зарегистрирован: 27.10.2010 09:44:20
Откуда: http://informat.name
Контактная информация:

Сообщение informat »

artiommatvei писал(а):во блин, точно. никогда бы не догодался. Тем более говорилось что в виндусе нет разницы между верхнем и нижнем регстре. А самое интересное это то что в учебнике пример написан заглвными буквами...
Спасибо большое


Видимо это говорилось про команды и зарезервированные слова языка. Компилятору всё равно как они написаны.
Сами же символы ВСЕГДА отличаются.

Примеры

Код: Выделить всё

begin
BEGIN
BeGiN

Одно и тоже - начало блока.
Но

Код: Выделить всё

'пример' 
'Пример'
'ПРИМЕР'

Это разные строковые константы

Почувствуйте разницу!
Ответить