Учебный курс Программирование на Delphi. Модуль 12: различия между версиями
Материал из Wiki Mininuniver
Перейти к навигацииПерейти к поискуСтрока 67: | Строка 67: | ||
*'''Форма с результатом работы программы''' | *'''Форма с результатом работы программы''' | ||
− | == | + | ==Задание1 == |
<CENTER>'''Таблица №12'''</CENTER> | <CENTER>'''Таблица №12'''</CENTER> | ||
Строка 118: | Строка 118: | ||
==Пример 2== | ==Пример 2== | ||
+ | |||
*'''Условие''' | *'''Условие''' | ||
+ | Сформировать файл FM.DAT, содержащий экзаменационную ведомость одной студенческой группы. Записи файла состоят из следующих элементов: фамилия, имя, отчество; номер зачетной книжки; оценка. После записи файла осуществить поиск студентов, сдавших экзамен на 4 или 5. | ||
+ | |||
*'''Использованные компоненты''' | *'''Использованные компоненты''' | ||
*'''Программный код''' | *'''Программный код''' | ||
+ | unit Unit1; | ||
+ | interface | ||
+ | uses | ||
+ | Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, | ||
+ | Dialogs, StdCtrls, Buttons; | ||
+ | type | ||
+ | TForm1 = class(TForm) | ||
+ | Label1: TLabel; | ||
+ | Label2: TLabel; | ||
+ | Label3: TLabel; | ||
+ | Edit1: TEdit; | ||
+ | Edit2: TEdit; | ||
+ | Edit3: TEdit; | ||
+ | Label4: TLabel; | ||
+ | Edit4: TEdit; | ||
+ | BitBtn1: TBitBtn; | ||
+ | BitBtn2: TBitBtn; | ||
+ | procedure BitBtn2Click(Sender: TObject); | ||
+ | procedure BitBtn1Click(Sender: TObject); | ||
+ | private | ||
+ | { Private declarations } | ||
+ | public | ||
+ | { Public declarations } | ||
+ | end; | ||
+ | var | ||
+ | Form1: TForm1; | ||
+ | implementation | ||
+ | {$R *.dfm} | ||
+ | procedure TForm1.BitBtn2Click(Sender: TObject); | ||
+ | begin | ||
+ | close; | ||
+ | end; | ||
+ | type stud=record | ||
+ | fio:string[30]; | ||
+ | nz:string[6]; | ||
+ | mark:2..5; | ||
+ | end; | ||
+ | var f:file of stud; | ||
+ | s:stud; n,i:integer; was:boolean; | ||
+ | procedure TForm1.BitBtn1Click(Sender: TObject); | ||
+ | begin | ||
+ | assignfile(f,'c:\fm.dat'); | ||
+ | rewrite(f); | ||
+ | n:= strtoint(edit4.Text); | ||
+ | for i:=1 to n do | ||
+ | begin | ||
+ | s.fio:=edit1.text; | ||
+ | s.nz:=edit2.text; | ||
+ | s.mark:=strtoint(edit3.Text); | ||
+ | write(f,s); | ||
+ | end; | ||
+ | closefile(f); | ||
+ | messagedlg('файл сформирован',mtinformation,[mbok],0); | ||
+ | reset(f); | ||
+ | was:=false; | ||
+ | while not eof(f) do | ||
+ | begin | ||
+ | read(f,s); | ||
+ | if s.mark >= 4 then | ||
+ | begin | ||
+ | write( s.fio); | ||
+ | was:=true | ||
+ | end | ||
+ | end; | ||
+ | if was = false then | ||
+ | messagedlg('Записи не найдены',mtinformation,[mbok],0) ; | ||
+ | closefile(f) | ||
+ | end; | ||
+ | end. | ||
+ | |||
+ | *'''Форма с результатом работы программы''' | ||
+ | |||
+ | ==Задание2 == | ||
==Литература == | ==Литература == |
Версия 09:58, 1 марта 2008
Содержание
Пример 1
- Условие
В текстовом файле Note.txt определить длину самой большой строки.
- Использованные компоненты
- Программный код
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; type TForm1 = class(TForm) BitBtn1: TBitBtn; BitBtn2: TBitBtn; Label1: TLabel; Memo1: TMemo; procedure BitBtn1Click(Sender: TObject); procedure BitBtn2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.BitBtn1Click(Sender: TObject); begin close; end; var note:text; max,k,i:integer; c:char; procedure TForm1.BitBtn2Click(Sender: TObject); begin assignfile(note,'c:\note.txt'); append(note); for i:=0 to memo1.Lines.Count do writeln(note,memo1.lines[i]); closefile(note); max:=0; while not eof(note) do begin k:=0; while not eoln (note) do begin read (note, c); k := k + 1; end; if k > max then max := k; readln (note) end; label1.Caption:='Наибольшая строка имеет '+ inttostr(max)+' знаков'; closefile (note); end; end.
- Форма с результатом работы программы
Задание1
Номер варианта | Условие | |
---|---|---|
Создать файл, содержащий сведения о пациентах поликлиники. Структура записи: ФИО пациента, год рождения, адрес, диагноз. Выбрать информацию о пациентах, обратившихся с диагнозом "грипп". | ||
Создать файл, содержащий сведения о книгах, находящихся в читальном зале библиотеки. Каждая запись должна содержать: фамилию и инициалы автора, название книги, место издания, наименование издательства, год издания, количество страниц. Выбрать записи о книгах издательства "Высшая школа", выпущенных после 2000 года. | ||
Создать файл, содержащий информацию о свободных местах в поездах. Запись содержит: дату выезда, номер поезда, конечный пункт назначения, время отправления, число свободных купейных мест, число свободных плацкартных мест. Выдать информацию об имеющихся свободных местах на определенное число. | ||
Разработать программу ("электронную сваху") для поиска женихов и невест. Создать два файла: список женихов и список невест. В каждом списке кандидат (жених или невеста) характеризуется записью, содержащей порядковый номер кандидата; данные о кандидате (возраст, рост, вес); требования к партнеру (минимальное и максимальное значение соответствующего параметра). Сформировать списки пар с учетом требований кандидата. | ||
Создать файл, содержащий сведения о студентах. Каждая запись должна содержать: номер по списку, фамилию, имя, отчество; год рождения; адрес. Выбрать сведения о студентах, проживающих в Нижнем Новгороде. | ||
Создать файл, содержащий сведения о предметах, изучаемых на первом курсе. Запись должна содержать: название предмета, общее количество часов в семестре, количество часов в неделю. Выбрать информацию о предметах, количество часов в неделю для которых не меньше 4. | ||
Создать файл, содержащий сведения о компьютерах. Структура записи: тип ПК, тактовая частота, объем ОП, объем винчестера, стоимость. Выбрать информацию о компьютерах, имеющих объем ОП более 128 Мбайт. | ||
Создать файл, содержащий сведения о рейсах самолетов. Для каждого рейса указаны: номер рейса, тип самолета, пункт назначения, время вылета, дни вылета. Выбрать информацию о рейсах на Санкт- Петербург. | ||
Создать файл, содержащий сведения об игрушках. Структура записи: название игрушки, ее стоимость, возрастные границы. Выбрать информацию об игрушках, цена которых не превышает 250 руб. и которые подходят детям 5 лет. | ||
Создать файл, содержащий номера телефонов сотрудников. Структура записи: ФИО, номер телефона. Найти номер телефона сотрудника по его фамилии и инициалам. | ||
Создать файл, содержащий сведения о результатах чемпионата по хоккею. Структура записи: название команды, результаты игры. Выбрать информацию о результатах игр команды "Торпедо". | ||
Протокол лыжных гонок записать в файл. Для каждого участника указывается фамилия, время старта (чч: мм: сс), время финиша. Выбрать сведения об участниках, выполнивших норму заданного (1, 2, 3) разряда. | ||
Сформировать файл, содержащий сведения о магазинах района. Структура записи: название магазина, адрес, фамилия директора. Выбрать информацию о магазинах, расположенных на проспекте Октября. | ||
Сформировать файл, содержащий сведения о владельцах автомобилей: фамилия владельца, марка автомобиля, номер. Выбрать информацию о владельцах автомобилей, имеющих заданную марку автомобиля. |
Пример 2
- Условие
Сформировать файл FM.DAT, содержащий экзаменационную ведомость одной студенческой группы. Записи файла состоят из следующих элементов: фамилия, имя, отчество; номер зачетной книжки; оценка. После записи файла осуществить поиск студентов, сдавших экзамен на 4 или 5.
- Использованные компоненты
- Программный код
unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Label4: TLabel; Edit4: TEdit; BitBtn1: TBitBtn; BitBtn2: TBitBtn; procedure BitBtn2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.BitBtn2Click(Sender: TObject); begin close; end; type stud=record fio:string[30]; nz:string[6]; mark:2..5; end; var f:file of stud; s:stud; n,i:integer; was:boolean; procedure TForm1.BitBtn1Click(Sender: TObject); begin assignfile(f,'c:\fm.dat'); rewrite(f); n:= strtoint(edit4.Text); for i:=1 to n do begin s.fio:=edit1.text; s.nz:=edit2.text; s.mark:=strtoint(edit3.Text); write(f,s); end; closefile(f); messagedlg('файл сформирован',mtinformation,[mbok],0); reset(f); was:=false; while not eof(f) do begin read(f,s); if s.mark >= 4 then begin write( s.fio); was:=true end end; if was = false then messagedlg('Записи не найдены',mtinformation,[mbok],0) ; closefile(f) end; end.
- Форма с результатом работы программы
Задание2
Литература
- Архангельский. Программирование на Delphi 6. – М: БИНОМ, 2002
- Бобровский С. Delphi 7. Учебный курс. – СПб: Питер, 2003
- Культин Н. Основы программирования в Delphi 7. СПб: БХВ-Петербург, 2005.