Complete failed

Форум для изучающих FPC и их учителей.

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

Complete failed

Сообщение freepad » 18.10.2010 20:47:51

Почему программа не работает в fpc, но работает в tp?
fpc 2.2.4, tp 7.1, Intel/i386 ,WinXP
Код: Выделить всё
program Morse;
uses crt;
label ss;
var word:char;
Begin
  clrscr;
  ss:read(word);
case word of
     'A'..'a': Write('.- ');
     'B'..'b': Write('-... ');
     'C'..'c': Write('-.-. ');
     'D'..'d': Write('-.. ');
     'E'..'e': Write('. ');
     'F'..'f': Write('..-. ');
     'G'..'g': Write('--. ');
     'H'..'h': Write('.... ');
     'I'..'i': Write('.. ');
     'J'..'j': Write('.--- ');
     'K'..'k': Write('-.- ');
     'L'..'l': Write('.-.. ');
     'M'..'m': Write('-- ');
     'N'..'n': Write('-. ');
     'O'..'o': Write('--- ');
     'P'..'p': Write('.--. ');
     'Q'..'q': Write('--.- ');
     'R'..'r': Write('.-. ');
     'S'..'s': Write('... ');
     'T'..'t': Write('- ');
     'U'..'u': Write('..- ');
     'V'..'v': Write('...- ');
     'W'..'w': Write('.-- ');
     'X'..'x': Write('-..- ');
     'Y'..'y': Write('-.-- ');
     'Z'..'z': Write('--.. ');
end;
goto ss;
End.


Добавлено спустя 14 минут 12 секунд:
Почему она не работала в fpc я понял, но тепеь мне все еще интересней по чему она работает в tp. :idea:
freepad
незнакомец
 
Сообщения: 8
Зарегистрирован: 06.07.2010 17:39:02

Re: Complete failed

Сообщение Mr.Smart » 18.10.2010 22:30:10

Ухты метки :shock: я сто лет их не видел :)
А почему вы считаете, что он не должен работать?
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Complete failed

Сообщение *vmr » 18.10.2010 23:29:02

Код: Выделить всё
'A'..'a'

Т.е. программа скомпиленная TP работала правильно? :shock:
Интересный TP...

ЗЫ: название темы полностью провалено :)
Аватара пользователя
*vmr
постоялец
 
Сообщения: 168
Зарегистрирован: 08.01.2007 01:46:07
Откуда: Киев

Re: Complete failed

Сообщение Mr.Smart » 18.10.2010 23:42:27

а диапазон-то я и не приметил :oops:
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!

Re: Complete failed

Сообщение trius-strannik » 19.10.2010 16:14:33

безусловные перехды по умолчанию в fpc вроде как не включены - нужно хотябы поставить режим совместимости с tp - {$mode tp}.

хотя прога странная... :shock:
Аватара пользователя
trius-strannik
новенький
 
Сообщения: 23
Зарегистрирован: 11.06.2009 07:19:24
Откуда: Томск

Re: Complete failed

Сообщение and » 22.10.2010 20:45:52

Хммм... Всю жизнь думал, что варианты в case не должны перекрываться.
Аватара пользователя
and
постоялец
 
Сообщения: 124
Зарегистрирован: 16.09.2009 17:11:01
Откуда: г. Гомель, Беларусь

Re: Complete failed

Сообщение informat » 02.11.2010 07:00:14

По логике алгоритма, похоже, имелось ввиду
Не
'B'..'b':
а
'B','b':
Т.е. не все символы от 'B' до 'b', а только 'B','b'. Ведь их хотелось перевести в точки и тире?

И ещё.
Вместо метки
-------
SS:
...
if BB then goto SS
-------
Программисты пишут:
--------
repeat
..
until not BB
------
--------
Аватара пользователя
informat
новенький
 
Сообщения: 62
Зарегистрирован: 27.10.2010 09:44:20
Откуда: http://informat.name


Вернуться в Обучение Free Pascal

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 9

Рейтинг@Mail.ru