Форум «Всё о Паскале» _ Теоретические вопросы _ Подготовка к экзамену
Автор: -Мариша- 11.01.2008 22:44
Здравствуйте! Помогите со следуюшими вопросами: 1) Нужна инфо по трансляторам: интерпритаторы и компиляторы. 2) Оснвные операции в Pascal. Приоритет операций. Операции с битами информаций. 3) Как описывается константа-"запись". 4) Основные отличие процедур и функций. Буду рада любой информации.
Автор: Client 11.01.2008 23:22
Интерпретатором называется транслятор , производящий покомандную обработку и выполнение исходной программы.
Компилятор преобразует всю программу в машинный код, после этого программа записывается в память компьютера и лишь потом исполняется.
Отличия процедуры от функции: 1.В заголовке функции указывается имя типа описываемой функции 2.В теле функции должен быть хотя бы 1 оператор, который присваивает имени функции значение 3.Вызов функции может использоваться только в качестве операнда какого-либо выражения
Автор: volvo 11.01.2008 23:36
Цитата
3.Вызов функции может использоваться только в качестве операнда какого-либо выражения
Дезинформация... Функцию - как хочу, так и использую (Extended Syntax никто не отменял), а вот процедура - в любом случае НЕ может использоваться в выражениях
Автор: Client 11.01.2008 23:38
Цитата
Функцию - как хочу, так и использую
Можно пример? Ведь просто так нельзя написть, например
F(a);
F-имя функции
Автор: volvo 11.01.2008 23:44
Пример? Да пожалуйста:
{$X+} function example(var x: integer): boolean; begin example := (x > 100); inc(x); end;
var x: integer; begin x := 10; writeln(x); example(x); { <--- Вот здесь меня не интересует, произошло ли превышение значения } writeln(x);
x := 150; writeln(example(x)); { <--- А здесь - заинтересовало... } end.
Автор: Client 11.01.2008 23:56
Цитата
Пример? Да пожалуйста:
Спасибо, хороший пример Тока я запутался… Это получается что мы как бы записываем
writeln(x); true;
но при этом не вызывает ошибки… Буду разбираться
Автор: мисс_граффити 12.01.2008 1:33
в помощь...
Цитата
Включает или выключает расширенный синтаксис Turbo Pascal.
Синтаксис: {$X+} или {$X-} Значение по умолчанию: {$X+} Тип: Глобальная Команда меню: Options|Compiler|Extended syntax
Состояние $X+: В состоянии $X+, функции могут использоваться как простые операторы - результат функции может быть отброшен. Вообще, вычисления, выполняемые функцией представляются ее результатом, так что немного смысла его отбрасывать. Однако, в некоторых случаях, функция может выполнять несколько операций, основываясь на параметрах. В некоторых из этих случаев она может не производить результат. В таких случаях, $X+ позволяет обрабатывать функцию как процедуру. Директива $X+ не относится ко встроенным функциям (функциям, определенным в модуле System). Режим $X+ также включает поддержку строк с заверщающим нулем, активизируя специальные правила, относящиеся ко встроенному типу PChar и нуль-основанным символьным массивам. Смотри модуль Strings для подробной информации.
Состояние $X-: В заданном по умолчанию состоянии $X-, расширенный синтаксис выключен. Попытка использовать его вызовет ошибку.
Автор: -Мариша- 12.01.2008 16:21
Спасибо! А не подскажите, где найти информацию про модули. Особенно нужны назначения Strings и WinDos.
Автор: Гость 12.01.2008 16:40
Цитата(-Мариша- @ 12.01.2008 12:21)
Спасибо! А не подскажите, где найти информацию про модули. Особенно нужны назначения Strings и WinDos.
Более детальное описание Strings - здесь: http://zeus.sai.msu.ru:7000/programming/bp70_lr/lr18.shtml
Автор: -Мариша- 12.01.2008 23:34
Volvo, большое спосибо. Но у меня еще вопросы: Graph обеспечивает использование всех возможностей наиболее распрастроненных типов дисплейных адаптеров. А что такое адаптер?