Помощь - Поиск - Пользователи - Календарь
Полная версия: Массивы в Borland Paskal
Форум «Всё о Паскале» > Pascal, Object Pascal > Теоретические вопросы
Chief
Как правильно в Borland Pascal 7 произвести чтение в массив.
Пишу следующий код:
Код

var
m: array [1..10] of byte;
i:byte;
begin
for i:=1 to 10 do
readln (m[i]);
for i:=10 downto 1 do
writeln (m[i]);
end.

При запуске вылетает run time error 104.
Как я понимаю проблема с чтением в массив
Код

for i:=1 to 10 do
readln (m[i]);

В Turbo Paskal 7 этот код работает без проблем.
volvo
Chief
Обычно RunTime Error 104 возникает при несоответствии типа переменной типу введенного значения. Убедись, что вводятся именно байтовые значения... + Попробуй изменить тип элементов на Integer...

Кстати, проверь, где именно возникает ошибка...
klem4
Код
uses crt;
var m:array[1..10] of byte;
   i:byte;

Begin
clrscr;
    for i:=1 to 10 do
     readln(m[i]);

    writeln;

    for i:=10 downto 1 do
     writeln(m[i]);
     readln;
     end.


у меня вот так пашет, а вообще странно, эта ошибка означает либо то, что
ожидантся переменная порядкового типа, либо вот :

Ошибки возникающие во время выполнения программ


Некоторые ошибки, обнаруженные во время выполнения программы, приводят к появлению на экране сообщения вида

Runtime error ппп at хххх:уууу

(Ошибка периода исполнения ппп по адресу хххх:уууу)

где ппп - номер ошибки; хххх:уууу - адрес (сегмент и смещение). После этого сообщения программа завершает свою работу.

Ошибки периода исполнения делятся на четыре категории: ошибки, обнаруживаемые ДОС (коды ошибок с 1 до 99), ошибки ввода-вывода (с 100 по 149), критические ошибки (с 150 по 199) и фатальные ошибки (коды ошибок с 200 до 255).
klem4
так как byte - порядкового типа, следовательно ошибка ввода-вывода, чо-то водишь не то :D
Chief
Большое спасибо всем за помощь - разобрался.
Дело вот в чем, при компиляции приложения под Windows, pascal выдает runtime error 104 если не подключен модуль uses wincrt;
А если компилировать в 'real mode application' работает все без всяких uses crt.
Outlos
unsure.gif
Ребят, если не сложно, опишите мне для чего нужен массив.

Сначала надо бы почитать ФАК: Массивы. Матрицы. Типичные задачи.
Altair
Цитата
Дело вот в чем, при компиляции приложения под Windows, pascal выдает runtime error 104 если не подключен модуль uses wincrt;

Попробуй так:
(кусок твоего кода)
Цитата
uses
{$ifdeg Win32}
crt;
{$else}
WinCrt;
{$ednif}
var m:array[1..10] of byte;
i:byte;

Begin
clrscr;
    for i:=1 to 10 do
Гость
Ребят напишите если знаете где можно взять 3D модунь???? Уже весь инет перерыл! mega_chok.gif
klem4
Гость , ты о чем ? Во первых зачем в чужой теме, во вторых о каком модуле идет речь ?
Гость
Ошибка изза того что невведён модуль Uses Wincrt
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.