Проблема с задачей на паскале
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Проблема с задачей на паскале - 2010-06-11 18:19:44.290000
|
|
|
SpAcE MaN
Сообщений: 61
Оценки: 0
Присоединился: 2010-06-10 15:58:11.826666
|
Не могу понять, почему ошибка? Пишет ошибка числа! Ошибка отмечена. quote:
Program calc; Var a, b, c, d :integer; bb, cc, dd :real; i, o :text; begin assign (i,'input.txt'); assign (o,'output.txt'); reset (i); read (i,a,b,c); {Собственно здесь} if a=1 then begin d:=a+b; rewrite (o); write (o,d); end else; if a=1 then begin d:=a-b; rewrite (o); write (o,d); end else; if a=3 then begin dd:=bb/cc; rewrite (o); write (o,dd); end else; if a=4 then begin d:=b*c; rewrite (o); write (o,d); end else; close (i); close (o); end.
|
|
|
RE: Проблема с задачей на паскале - 2010-06-12 05:04:18.470000
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
содержимое файлов покажи
|
|
|
RE: Проблема с задачей на паскале - 2010-06-12 11:34:08.410000
|
|
|
SpAcE MaN
Сообщений: 61
Оценки: 0
Присоединился: 2010-06-10 15:58:11.826666
|
Ну в input.txt на пример 1 5 5 (1 это номер действия 5 и 5 слогаемые) после действий результат записывается в output.txt вот проблема с чтением input.txt на этом этапе пишит ошибка числа
|
|
|
RE: Проблема с задачей на паскале - 2010-06-14 09:07:21.983333
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
Почему у переменных i, o тип text, когда должен быть file of integer?
|
|
|
RE: Проблема с задачей на паскале - 2010-06-15 01:25:35.640000
|
|
|
Meliborn
Сообщений: 294
Оценки: 0
Присоединился: 2009-06-17 16:06:59.840000
|
Ну вы хоть отступы делайте…нереально читать.
|
|
|
RE: Проблема с задачей на паскале - 2010-06-15 12:53:46.813333
|
|
|
Zmaster
Сообщений: 930
Оценки: 0
Присоединился: 2007-02-09 19:02:43.500000
|
quote:
ORIGINAL: _SaZ_ Почему у переменных i, o тип text, когда должен быть file of integer? Может быть ты и прав, что в данном случае это так, но у меня к примеру, такой код спокойно компилируется и работает: var s:text
var i:integer
begin
assign(f, 'file.txt');
reset(f);
read(f, i);
close(f);
end. Так как по идее оператор read сам должен по возможности преобразовать число из файла под тип переменной. К примеру, если в файле запись типа "12 23", то данный оператор, видя, что тип переменной для чтения есть integer, ищет ближайшее значение этого типа. То есть при первом чтении он найдет число 12 и запишет его в переменную, каретка файла сдвигается на 2 символа. Далее он будет пропускать пробелы, пока не встретит еще число 23. SpAcE MaN, попробуй написать не read (i,a,b,c), а: read (i,a); read (i,b); read (i,c); И скажи получится или нет.
|
|
|
RE: Проблема с задачей на паскале - 2010-06-15 12:55:32.696666
|
|
|
_SaZ_
Сообщений: 4329
Оценки: 398
Присоединился: 2008-01-30 02:18:05.553333
|
Я действительно ошибся. File of integer - это не то.
|
|
|
|
|