Помощь - Поиск - Пользователи - Календарь
Полная версия: Стандартные средства
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
Poison
К задаче небольшое дополнение - программу написать без использования встроенных средств языка. Все вроде есть, вот только не знаю что с Assign, Read & Write делать. Можно их как-то заменить?
Помогите, plz
Altair
Ну дамаю, что замена Assign на аналогичную - это ищвращение,
ведь придется использовать прерывания.
А вот замена read и write -вещь реальная.
Только уточните, для чего вам эти процедуры (read - для ввода переменных в программу, или записи в файл, соответственно для чего write), тогда посмотрим, как их лучше заменить (К КАКОЙ задаче дополнение - не понятно !)
Poison
Спасибо за оперативность smile.gif и давай на ты

Цитата
Только уточните, для чего вам эти процедуры (read - для ввода переменных в программу, или записи в файл, соответственно для чего write)


Программа - словарь, соответственно меню выводится Writeln и запрос - введите слово, описание; Read - считать поле записи. Надеюсь, понятно, потомо что у меня проще объяснить не получается.
zx1024
Заменить на что?
Что не является "встроенным средством языка"?
Altair
Итак процедура READ - считать поле записи ( пользователь вводит строку)

Код

Uses CRT;

{...}
procedure READ(var s:string);
var
kodklav:integer;
i:byte;   { счетчик, byte -что-бы экономить память }
begin
repeat
inc(i); {увеличиваем i}
kodklav:=readkey;  {здесь readkey - НЕ ВСТРОЕННОЕ СРЕДСТВО ЯЗЫКА,
                               т.к доступно только после USES CRT; }
s[i]:=CHR(kodklav); {начинаем с 1 эл-та строки}
until kodklav=13; { прекращаем, когда нажата ENTER }
s[0]:=CHR(i); { если вдруг это не будет работать, замени на такую  конструкцию:
for kodklav:=1 to i do s:=s+s[kodklav]  }
end;


Дальше я подумаю, как остальные сделать, а ты пока эту процедуру проверяй,
если будут ошибки -сразу пиши, я эту процедуру в окне ответа писал, но думаю, чот ошибок быть не должно.

А команда s[0]:=CHR(i) -нужна для указания длинны строки
Atos
Насколько, я понял, нужны исходники Assign и т. п.? Вот часть файла system.pas (нашёл в файлах Virtual Pascal)
Altair
Atos, спасибо, исходник просто замечательный!
Poison, теперь осталось только вывод на экран сделать,
тогда в той процедуре, что выше я написал, можно добавить будет эхо на экран.
Poison
Спасибо огромное!!
Только сегодня все закончила.
Assign просто СУПЕР, а в read, если кому интересно, CHR от kodklav лишний, но не помешает в следующей строке, и String'и у меня не из Integer'ов состоят.
Хотя главное - идея. Я б не скоро сама додумалась, если бы вообще додумалась.
Спасибо еще раз.
Altair
Всегда рады помочь!
>>>Только сегодня все закончила
Ух, а я и не понял сначала!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.