Прежде чем производить какие-либо действия с базой данных, её необходимо создать. Для этого создадим программу, которая позволит ввести с клавиатуры данные о 20 сотрудниках и сохранить эти данные в типизированный файл (файл записей).
- Program kontrrabota;
- uses crt;
- type lich_dan=record
- fam:string[15];
- imja:string[15];
- otch:string[15];
- godrog: integer;
- sem_pol:byte;
- kol_det:byte;
- end;
- type rab_dan=record
- nom_otd:byte;
- dolgnost:string[15];
- date_nach_rab:string[15];
- stag:byte;
- zar_plata:real;
- secret:byte;
- end;
- type anketa=record
- LD: lich_dan;
- RD: rab_dan;
- End;
- var
- sotrudn:array[1..20] of anketa;
- i:integer;
- base:file of anketa;
- procedure stag_rabot;
- var
- stroka1:string;
- st_rab,st:integer;
- begin
- stroka1:=copy(sotrudn[i].RD.date_nach_rab,7,4);
- val(stroka1,st);
- st_rab:=2012-st;
- sotrudn[i].RD.stag:=st_rab;
- end;
- procedure zar_pl;
- var dol_sotr:string[10];
- begin
- dol_sotr:=sotrudn[i].RD.dolgnost;
- if dol_sotr=’инженер’ then
- sotrudn[i].RD.zar_plata:=20000*(1+0.05*sotrudn[i].RD.stag);
- if dol_sotr=’начальник’ then
- sotrudn[i].RD.zar_plata:=40000*(1+0.05*sotrudn[i].RD.stag);
- if dol_sotr=’ассистент’ then
- sotrudn[i].RD.zar_plata:=10000*(1+0.05*sotrudn[i].RD.stag);
- end;
- begin
- clrscr;
- writeln(‘Введите данные о сотрудниках.’);
- writeln;
- for i:=1 to 20 do begin
- with sotrudn[i] do
- begin
- Writeln(‘Введите фамилию сотрудника.’);
- readln(LD.fam);
- Writeln(‘Введите имя сотрудника.’);
- readln(LD.imja);
- Writeln(‘Введите отчество сотрудника.’);
- readln(LD.otch);
- Writeln(‘Введите год рождения сотрудника.’);
- readln(LD.godrog);
- Writeln(‘Укажите семейное положение сотрудника:’);
- Writeln(‘1-если сотрудник женат/замужем, 2-если сотрудник холост/не замужем.’);
- readln(LD.sem_pol);
- Writeln(‘Укажите количество детей у сотрудника.’); readln(LD.kol_det);
- Writeln(‘Введите номер отдела, в котором работает сотрудник.’); readln(RD.nom_otd);
- Writeln(‘Укажите должность сотрудника’);
- readln(RD.dolgnost);
- Writeln(‘Укажите дату поступления сотрудника на службув формате «дд.мм.гг.’);
- readln(RD.date_nach_rab);
- Writeln(‘Укажите уровень доступа сотрудника к секретной информации.’);
- readln(RD.secret);
- stag_rabot;
- writeln (‘Стаж работы сотрудника ‘,RD.stag,’ лет.’);
- zar_pl;
- writeln (‘Заработная плата сотрудника-‘,RD.zar_plata:5:0);
- end;
- assign(base, ‘D:base_of_data.dat’);
- rewrite(base);
- for i:=1 to 20 do
- write(base, sotrudn[i]);
- close (base);
- end.
Строка №3-№10. Создаем тип записи «lich_dan». Сюда будем записывать личные данные о работниках организации. Запись имеет 6 полей:
Как сделать игру Теннис на Паскале
Простой калькулятор на Pascal /pascal programming lesson #1
Строка №4. Поле «fam» будем использовать для записи в него фамилии сотрудника. Поле имеет тип String[15], т.е. в него можно записать фамилию, длиной не более 15 символов.
Строка №5. Поле «imja» используется для хранения имени сотрудника. Длина имени не более 15 символов.
Строка №6. В поле «otch» будем записывать отчество сотрудника (также не более 15 символов).
Строка №7. В поле «godrog» будем записывать год рождения сотрудника.
Строка №8. В поле «sem_pol» будем записывать семейное положение сотрудника. Данное поле имеет тип Byte, т.е. оно может содержать число от 0 до 255. На деле на понадобится лишь 2 числа. Число 1 будет означать, что сотрудник женат/замужем, число 2 будет означать, что сотрудник холост/не замужем.
Перед вводом данных необходимо вывести на экран сообщение: «Нажмите 1, если сотрудник женат/замужем, нажмите 2, если сотрудник холост/не замужем».
Строка №9. В поле «kol_det» будем записывать количество детей у сотрудника.
Строка №11-№18. Создаем еще один тип записи «rab_dan». В компоненты этого типа будем записывать рабочие данные сотрудника. Здесь также есть 6 полей:
Строка 12. Поле «nom_otd». Здесь будем хранить информацию о номере отдела, в котором работает сотрудник. По условию, в организации есть 4 отдела.
Строка №13. Поле «dolgnost» будет содержать информацию о должности сотрудника в отделе. По условию, в организации есть 3 должности: «начальник», «инженер», «ассистент», причем в одном отделе может быть только один начальник.
Строка №14. Поле «date_nach_rab» будет содержать информацию о дате начала работы сотрудника в организации. Так как дата будет записываться в формате ДД.ММ.ГГ. (например, 12.09.1998) мы не можем использовать для данного поля числовой тип (Integer или Byte). В данном случае используется тип String.
Строка №15. Поле «stag» будем использовать для хранения данных о стаже работы сотрудника.
Строка №16. Поле «zar_plata» используется для хранения информации о заработной плате сотрудника.
Строка №17. В поле «secret» запишем уровень доступа сотрудника к секретной информации (всего в организации есть 3 уровня доступа).
Строка №19-22. Объеденим предыдущие типы записей в один тип с помощью вложенных записей.
Строка №19. Создаем новый тип записи «anketa». Запись имеет 2 поля:
Строка №20. Поле «LD» имеет тип «lich_dan» (теперь поле «LD» содержит все компоненты записи «lich_dan»).
Строка №20. Поле «RD» имеет тип «rab_dan» (теперь поле «RD» содержит все компоненты записи «rab_dan»).
Строка №23. Открываем раздель для описания переменных.
Строка №24. Создаем переменную «sotrudn» и указываем для нее тип — массив, состоящий из 20 записией типа «anketa». C помощью этой переменной мы можем получить доступ к любому полю записи и записывать в него информацию. Например, чтобы получить доступ к полю «fam» и записать в него фамилию сотрудника необходимо указать «sotrudn.LD.fam».
Строка №25. Переменная «i» будет использоваться в качестве индекса массива.
Строка №26. Создаем файловую переменную «base» для связи с типизированным файлом на жестком диске, куда будем записывать всю информацию о сотрудниках.
Источник: mojainformatika.ru
Создаём шаблон программы Pascal.
Давайте в этом уроке создадим шаблон программы, которым будем пользоваться в дальнейшем. Для этого создадим новый документ и в нём начнём создание шаблона.
Средства разработки программ на языке Free Pascal
Язык программирования Free Pascal является свободным ответвлением от классического языка Pascal, разработанного Никлаусом Виртом в конце 60-х годов. Н. Вирт разработал данный язык для обучения студентов навыкам процедурного программирования. Со временем язык Pascal был сильно развит, возникло множество диалектов данного языка (наиболее известный из них — Turbo Pascal фирмы Borland).
Free Pascal является свободной реализаций языка Pascal (если быть точнее, свободно распространяемый компилятор языка программирования Pascal), поддерживает объектно-ориентированное программирование и может быть использован для написания не только учебных программ, но и более серьезных приложений обработки данных.
Среда программирования Free Pascal
Рассмотрим процесс установки.
1) Для пользователей ОС Windows необходимо скачать инсталлятор с интернет-страницы http://www.freepascal.org/down/i386/win32.var и запустить его с правами администратора.
2) Для пользователей Linux можно скачать свежий инсталляционный пакет rpm или deb (например, Альт-Линукс использует пакеты rpm, а Ubuntu или Debian — пакеты deb).
Существуют варианты простой установки:
sudo apt-get install fpc
Fpc — это метапакет, включающий в себя собственно сам компилятор и среду разработки (IDE, «оболочка» для редактирования кода, отладки и запуска скомпилированного кода). Команда sudo запускает установку метапакета fpc в режиме администратора, не забудьте ввести правильно пароль.
2) с помощью пакетного менеджера Synaptic. Найдите пакет fpc, отметьте для установки и примените изменения:
Установка Free Pascal через пакетный менеджер Synaptic
Если же вы являетесь обладателем дистрибутива Альт-Линукс Школьный, то вам повезло, Free Pascal уже установлен.
Запуск IDE Free Pascal (IDE — интегрированная среда разработки)
Вызовите терминал и наберите: fp
IDE Free Pascal
Интерфейс очень похож на классический интерфейс среды Turbo Pascal 7.0
Среда разработки Geany
Чтобы упростить процесс создания программы и избавиться от проблемы отображения кириллицы, можно установить свободную среду разработки Geany. Данная оболочка обладает приятным графическим интерфейсом, поддерживает несколько языков программирования (Pascal, C, PHP и др.).
Установка среды разработки Geany
1) с помощью терминала:
sudo apt-get install geany
2) с помощью пакетного менеджера Synaptic. Процесс установки будет совершенно аналогичен процессу установки метапакета fp
3) можно скачать инсталляционный пакет с официального сайта разработчиков:http://www.geany.org/Download/Releases .
Приведем пример создания простейшей программы, выводящей квадраты целых чисел от 1 до 15.
1. После запуска среды Geany создадим шаблон файла Pascal:
Выбор шаблона Pascal
2. Сохраним текст программы в любой удобной для нас папке. После сохранения окно оболочки будет выглядеть примерно так:
Сохраненный текст с шаблоном pascal
3. Обязательно поменяйте имя программы (латиница, без пробелов), т.к. компилятор выдаст ошибку при компиляции текста в выполняемый код.
4. Напишем текст программы, выводящей квадраты чисел от 1 до 15 и скомпилируем. При компиляции файл текста программы автоматически сохраняется.
Компиляция текущего файла программы
5. Запустим программу нажатием по пиктограмме или с помощью главного меню Сборка→Выполнить:
Результат работы программы
6. В папке, где мы сохраняли текст программы, можно обнаружить файлы с расширением *.pas — текст программы; *.о — откомпилированный файл (объектный файл) и готовый исполняемый файл без расширения (для ОС GNULinux), который можно выполнить в терминале.
Среда визуального программирования Lazarus
Консольные приложения (работающие в терминале или командной строке) это конечно хорошо, а как же создать приложение с графическим интерфейсом в среде GNULinux?
Возможно, вы слышали о Delphi компании Borland — это среда быстрой разработки программ с графическим интерфейсом на языке Object Pascal (в дальнейшем стал называться просто язык Delphi). В чем достоинство такой среды (и других подобных визуальных сред разработки)? Достоинство в том, что программист не заботится о том, чтобы программным путем нарисовать окно приложения, разместить на нем кнопки, списки и другие графические элементы — заботу об этом берет сама среда Delphi; программист занимается непосредственно обработкой различных событий и собственно алгоритмом обработки данных.
Lazarus — свободная (а значит, совершенно бесплатная!) среда разработки программного обеспечения для компилятора языка Free Pascal. Интегрированная среда разработки предоставляет возможность разработки приложений в Delphi-подобном окружении. Причем, есть возможность создания кроссплатформенных приложений, работающих и в операционной системе Windows, и в операционной системе GNULinux.
Установка Lazarus
1) с помощью терминала:
sudo apt-get install lazarus
2) с помощью пакетного менеджера Synaptic. Ставим галочки напротив программ Lazarus, fp, fpc, fpc-ide
3) можно скачать инсталляционный пакет с официального сайта разработчиков:http://sourceforge.net/projects/lazarus/files/
После запуска мы увидим многооконный интерфейс Lazarus, схожий с интерфейсом среды Borland Delphi:
Многооконный интерфейс среды Lazarus
Источник: rassyhaev.ru