Лабораторная работа 1 1 Создание простого консольного приложения Delphi 1 Требования по выполнению лабораторной работы 1
Скачать 93.5 Kb.
|
ОглавлениеОглавление 1 ЛАБОРАТОРНАЯ РАБОТА 1 1 Создание простого консольного приложения Delphi 1 1.Требования по выполнению лабораторной работы 1 Контрольные вопросы 6 2. Теоретический материал 6 Структура консольного приложения 6 Идентификаторы 7 Определение переменных 7 Организация стандартного ввода-вывода 8 ЛАБОРАТОРНАЯ РАБОТА 1Создание простого консольного приложения DelphiТребуется выполнить пять заданий. Для каждого задания разработан отдельный сценарий. Задание 1. Настройка среды для выполнения лабораторных работ.
Задание 2. Создание, отладка и выполнение простой программы в среде Delphi. Разработать программу, демонстрирующую различие кодировок ASCII и ANSI.
Writeln (Редактор готовит русский текст в коде ANSI (страница Windows 1251), а при выполнении программы в консольном режиме он отобразиться он в коде ASCI I страница 866); Readln // ожидание нажатия клавиши Enter
Задание 3. Создание функции преобразования выводимого на монитор русского текста из кодировки Windows в кодировку DOS с именем RUS. Добавить в код созданного проекта функцию с именем RUS, которая позволит представлять выводимый на монитор текст в кодировке DOS(ASCII).
function RUS(s:string):string; //заголовок функции var i:longint; begin for i:=1 to length(s) do begin if ord(s[i]) in [192..239] then s[i]:=chr(ord(s[i])-64); if ord(s[i]) in [240..255] then s[i]:=chr(ord(s[i])-16); end; RUS:=s end;
Writeln(RUS(Редактор готовит текст в коде 1251, а отобразиться он в коде ASCI I));
Задание 4. Создание модуля Unit и его использование Примечание. Модуль Unit позволит подключать функцию преобразования к любому проекту ваших лабораторных работ.
Содержание модуля unit unit1; interface //интерфейсная часть function RUS(s:string):string; implementation //выполнимая часть function RUS(s:string):string; var i:longint; begin for i:=1 to length(s) do begin if ord(s[i]) in [192..239] then s[i]:=chr(ord(s[i])-64); if ord(s[i]) in [240..255] then s[i]:=chr(ord(s[i])-16); end; RUS:=s end; end.
Задание 5. Разработка программы по организации стандартного ввода-вывода средствами Delphi. Разработать программу, которая позволит:
Сценарий выполнения лабораторной работы
{Стандартный ввод-вывод}
var a:byte; b:integer; c:int64;
Лабораторная работа №1. Организация ввода и вывода в консольном режиме. Пропустить две строки Представление числовых данных в памяти. Ввод числовых данных Введите значение в переменную а из диапазона byte =
Организация вывода значений переменных
Вывод числовых данных в формате хранения в памяти Целые числа
Дробные числа Вывод вещественных значений в формате хранения
Вывод вещественных значений с заданной точностью.
Контрольные вопросы
2. Теоретический материалСтруктура консольного приложенияПриложение Delphi состоит из основной программы и подключаемых модулей1. В приложение можно включать стандартные модули или модули, разработанные пользователем. Простое консольное приложение состоит из основной программы с включенным модулем sysutils и директивой компилятора {$APPTYPE CONSOLE} Структура простого консольного приложения
ИдентификаторыДля доступа в программе к программному объекту используется идентификатор. Идентификатор определяет имя объекта Идентификатор программы Delphi – это последовательность букв и цифр языка программирования, начинающаяся обязательно с буквы. Идентификатор не может содержать символ пробела. Примеры идентификаторов X1, XYZ, X_Y, A153, a153 Идентификаторы A153, a153 определяют одно имя. Определение переменныхПеременная – это программный объект, предназначенный для хранения данных. Переменная имеет имя, ей при компиляции выделяется память, размер которой определяется типом переменной. Тип определяет размер памяти, внутреннее представление данных и набор операций над значением переменной. Тип определяется идентификатором. Формат объявления переменных var Список имен переменных : тип переменной; …………………………………………………. Список имен переменных : тип переменной; Пример объявления числовых переменных Var X:integer; Y, Z: byte; A, b, c: comp; В Delphi можно присваивать значение переменной при ее объявлении. Формат инициализации переменной при объявлении var Имя переменной : тип переменной=выражение; Пример инициализации переменной при объявлении Var X:byte=100; Организация стандартного ввода-выводаСтандартный ввод – это ввод данных память компьютера с помощью клавиатуры. Организацию стандартного ввода в Delphi обеспечивают процедуры ввода: Read и Readln. Форматы операторов организации стандартного ввода. Read(список переменных); Данный оператор читает значения, введенные пользователем с клавиатуры и записывает их в переменные, указанные в списке. Имена переменных в списке должны отделяться запятой. Пример записи операторов ввода данных с помощью процедуры Read. Read(x,y,z); Read(x); Readln(список переменных); Данный оператор читает введенные значения, записывает их в соответствующие переменные и читает ол Enter (освобождает буфер ввода). Пример записи операторов ввода данных с помощью процедуры Readln. Readln(x,y,z); Readln(x); Readln; Данный оператор обеспечивает чтение только символаEnter, т.е. освобождает буфер ввода. Пример использования процедуры Readln для освобождения буфера ввода и организации просмотра данных, выведенных на монитор. Read(x,y,z); Readln; Readln; Стандартный вывод – это отображение данных на монитор. Организацию стандартного вывода в Delphi обеспечивают процедуры вывода: Write и Writeln. Процедуры позволяют отображать данные на монитор в стандартном формате, а также применять специальные форматы для более наглядного отображения. Форматы операторов организации стандартного вывода без форматирования данных. Write(список выражений); Данный операторпоследовательно выводит значения выражений, представленных в списке, на монитор в текущую позицию. Под выражением понимаются: переменная, константа, выражение. Выражения в списке отделяются друг от друга запятой. Пример оператора вывода одного текстового значения. Write(‘Текст должен быть в апострофах’); Пример оператора вывода значений двух выражений: текстовой константы и переменной. Write(‘x=’,x); Writeln(список выражений); Данный оператор выводит значения выражений, представленных в списке, на монитор в текущую позицию и после вывода всех значений переводит каретку на новую строку. Пример операторов для вывода данных на три отдельных строки монитора. Writeln(‘Лабораторная работа №1’); Writeln(‘Задание. Вычисление значения функции Sin(x) в точке х’); Writeln(‘Результат работы программы:’,’X=’, X, ‘ Sin(X)=’, Sin(X)); Writeln; Данный оператор обеспечивает только перевод каретки на новую строку (вставка пустой строки). Пример операторов для вывода данных на три отдельных строки монитора и вставкой пустой строки. Writeln(‘Лабораторная работа №1’); Writeln(‘Задание. Вычисление значения функции Sin(x) в точке х’); Writeln; Writeln(‘Результат работы программы:’,’X=’, X, ‘ Sin(X)=’, Sin(X)); Форматы операторов организации стандартного вывода с форматированием данных. Форматирование отображаемой информации осуществляется с помощью параметров форматирования. Список выражений при форматированном выводе где: p – параметр, определяющий количество выводимых символов q – параметр, который используется только для отображения дробных чисел и определяет точность представления числа (число знаков в дробной части числа) знак(+/-) – означает, что выводимое значение при выводебудет прижато к левой границе области вывода, а знак + значение при выводе будет прижато правой границе области вывода. Пример форматированного вывода числовых значений. Var A,b:byte; X:real; Begin A:=2; b:=123; x:=12,333333333; Writeln(‘Вывод без форматирования’); Writeln(a,’ ‘,b,’ ‘, x); Writeln(‘Вывод c форматированием’); Writeln(a:4,b:5,x:7:2); readln End. Результат программы Вывод без форматирования 2 123 1.2333333333e+1 Вывод с форматированием 2 123 12.33 1 Отдельно компилируемая часть программы. |