Главная страница
Навигация по странице:

  • Типы вещественных чисел Типы целых чисел Start

  • 4.1. Активизация ИСР и выход из среды. 4.2. Назначение и содержание окна ИСР.

  • 4.3. Назначение пунктов меню File, Edit , Search .

  • Структура программы и типы в языке FreePascal


    Скачать 0.55 Mb.
    НазваниеСтруктура программы и типы в языке FreePascal
    Дата20.12.2022
    Размер0.55 Mb.
    Формат файлаdocx
    Имя файла3lab.docx
    ТипЛабораторная работа
    #855493
    страница1 из 5
      1   2   3   4   5

    Федеральное агентство связи
    Федеральное государственное бюджетное образовательное

    учреждение высшего образования
    Поволжский государственный университет

    телекоммуникаций и информатики
    Кафедра Информационных систем и технологий


    Лабораторная работа №3

    По дисциплине «Инструментальные средства информационных систем»

    Тема: «Структура программы и типы в языке FreePascal»

    Руководитель доцент к. т. н.

    __________________ Никитин К.А.


    Самара 2018

    Цель работы

    Изучение интегрированной среды разработки FreePascal.

    Получение практических навыков создания простых программ в среде FreePascal.
    1. Активизировать ИСР. Ознакомится с окнами ИСР.

    Пункты главного меню главного окна ИСР:

    Пункт

    Назначение

    File

    Работа с файлами

    Edit

    Правка

    Search

    Поиск фрагментов

    Run

    Прогон и отладка

    Compile

    Компиляция

    Debug

    Отладка

    Tools

    Инструментарий

    Options

    Опции

    Window

    Перечень окон для выбора фокуса

    Help

    Справка


    2. Создать проект Prg_1_1. Он должен в символьном режиме выводить на экран фразу «Hello World!».

    Листинг программы

    program prg_1_1; // имя программы

    uses // Используемый модуль – SysUtils

    SysUtils;

    begin

    writeln('Hello World!’); // для вывода на экран сообщения и перевода курсора на другую строчку;

    readln; // для ввода данных

    end.





    3. Создать программу взаимных преобразований численных данных в соответствии с вариантом. Нужно преобразовывать численные данные из типа Start в типы Fin1 и Fin2 для вещественных и целых чисел.



    Типы вещественных чисел

    Типы целых чисел

    Start

    Fin_1

    Fin_2

    Start

    Fin_1

    Fin_2

    5.

    Extended

    Real

    Double

    Shortint

    Cardinal

    LongInt

    Листинг программы

    program prg_1_2;

    uses // Используемый модуль – SysUtils

    SysUtils;

    const //не изменяющиеся значения

    real_0: extended =3.7145;

    int_0:shortint =113;

    var

    real_1:real;

    real_2:double;

    int_1:cardinal;

    int_2:longint;

    begin

    writeln('Вещественное число в разных типах');

    writeln;

    real_1:=real_0;

    real_2:=real_0;

    real_3:=real_0;

    writeln('Значения и размер в байтах в разных типах');

    writeln('real_0=',real_0:10:6,sizeof(real_0):4,' extended''); //10 – отведённое место для целых

    writeln('real_1=',real_1:10:6,sizeof(real_1):4,' real); //10 – отведённое место для дроби

    writeln('real_2=',real_2:10:6,sizeof(real_2):4,' double'); //SizeOf возвращает размер аргумента в байтах

    readln;

    writeln('Целое число в разных типах');

    int_1:=int_0;

    int_2:=int_0;

    writeln;

    writeln('Значения и размер в байтах в разных типах');

    writeln('int_0=',int_0:10,sizeof(int_0):4,' shortint');

    writeln('int_1=',int_1:10,sizeof(int_1):4,' cardinal');

    writeln('int_2=',int_2:10,sizeof(int_2):4,' longint');

    readln;

    end.





    4. Создать программу взаимных преобразований строковых и символьных типов. Она должна отображать фамилию студента строками разного типа и добавлять к строке символ.
    program prg_1_3;

    uses

    SysUtils;

    var

    Str_1:string;

    Str_2:string[15];

    ShortStr:ShortString;

    AnsiStr:AnsiString;

    WideStr:WideString;

    MyChar:char;

    begin

    Str_1:=’SmolStepanova';

    writeln('Строки в разных типах');

    writeln;

    Str_2:=Str_1;

    ShortStr:=Str_1;

    AnsiStr:=Str_1;

    WideStr:=Str_1;

    writeln('Значения и размер в байтах в разных типах');

    writeln;

    writeln('AnsiStr =',AnsiStr:15,SizeOf(AnsiStr):5,' AnsiString');

    writeln('Str_1 =',Str_1:17,SizeOf(Str_1):7,' String');

    writeln('WideStr =',WideStr:15,SizeOf(WideStr):5,' WideString');

    writeln('ShortStr =',ShortStr:14,SizeOf(ShortStr):7,' ShortString');

    writeln('Str_2 =',Str_2:17,SizeOf(Str_2):6,' String[..]');

    readln;

    writeln('Добавим к строке символ !');

    writeln;

    MyChar:='!';

    Str_2:=Str_2+MyChar; // Операция + выполняет конкатенацию (присоединение в конец)

    writeln('Str_2 =',Str_2:9,SizeOf(Str_2):5,' String[..]');

    readln;

    end.







    5. Создать программу работы с типом TDateTime. Она должна запрашивать дату и время рождения студента, выводить текущие дату/время, запрашивать желаемое время дальнейшего обучения, выводить дату/время и день недели конца обучения.

    Для работы с датой и временем определен тип TDateTime. Он в формате вещественного числа содержит и дату (целая часть - число суток, прошедших с 30.12.1899) и время (дробная часть - часть суток, прошедших с 0 часов). Тип позволяет выполнять с датой/временем операции, как с вещественными числами.

    program prg_1_4;

    uses

    SysUtils;

    var

    Date_1,Time_1,DateTime1:string;

    DateTime_1,DateTime_2:TDateTime; // тип TDateTime в формате вещественного числа содержит и дату (целая часть - число суток, прошедших с 30.12.1899) и время (дробная часть - часть суток, прошедших с 0 часов)

    Day,Time:integer;

    begin

    writeln('Введите дату рождения день.месяц.год');

    readln(Date_1);

    writeln;

    writeln('Введите время рождения часы.минуты.секунды');

    readln(Time_1);

    writeln;

    DateTime_2:=Now;

    writeln('Сегодня ',DateTimeToStr(Now)); // встроенная функция Now - получения текущей даты и времени и встроенная функция DateTimeToStr для преобразования данных в строку

    writeln;

    writeln('Сколько времени в часах вы ещё хотите учиться?');

    readln(Time);

    DateTime_2:=DateTime_2+(Time/24);

    Day:=DayOfWeek(DateTime_2);// встроенная функция DayOfWeek- получения дня недели

    writeln('Вы станете умным ', DateTimeToStr(DateTime_2)); // встроенная функция DateToStr для преобразования данных в строку

    writeln('Это будет день недели номер ',Day);

    readln;

    end.



    Результат программы:


     

    Type   TDateTime = Record
       Year, Month, Day : Word;
         Hour, Min, Sec : Word;
                        End;

    Допустимые диапазоны:

     Year  1980 .. 2099  { Год }
     Month    1 .. 12    { Месяц }
     Day      1 .. 31    { День }
     Hour     0 .. 23    { Часы }
     Min      0 .. 59    { Минуты }
     Sec      0 .. 59    { Секунды }
    Сколько времени в часах



    Сколько времени в минутах



    Сколько времени в секундах



    Сколько времени в часах и минутах


    Функция StrToTime (Const S: ShortString; сепаратор: Char): TDateTime;

    Преобразует строку времени



    К.В.

    4.1. Активизация ИСР и выход из среды.

    4.2. Назначение и содержание окна ИСР.

    Интегрированная среда разработки (ИСР) FreePascal предназначена для создания консольных приложений с использованием компилятора FPC (Free Pascal Compiller). Она включает редактор с синтаксическими выделениями, отладчик, браузер символов и др. Среда не поддерживает графику.

    При старте ИСР из Windows выводится окно ИСР. Оно содержит:

    • Строку заголовка с именем ИСР – Free Pascal.

    • Главное меню.

    • Рабочее поле.

    • Окно сообщений Messages.

    • Строка быстрого выбора часто используемых команд.

    4.3. Назначение пунктов меню File, Edit, Search.
      1   2   3   4   5


    написать администратору сайта