Константин Филинов
Ученик
(103)
1 неделю назад
program SimpleDatabaseQueries;
type
Book = record
Title: string;
Author: string;
Year: integer;
City: string;
end;
var
Books: array[1..100] of Book;
NumBooks: integer;
// Пример заполнения базы данных книг
procedure FillDatabase;
begin
NumBooks := 5; // Предположим, что у нас есть 5 книг в базе данных
Books[1].Title := 'Анна Каренина';
Books[1].Author := 'Лев Толстой';
Books[1].Year := 1877;
Books[1].City := 'Москва';
Books[2].Title := 'Алиса в стране чудес';
Books[2].Author := 'Льюис Кэрролл';
Books[2].Year := 1865;
Books[2].City := 'Лондон';
Books[3].Title := 'Мастер и Маргарита';
Books[3].Author := 'Михаил Булгаков';
Books[3].Year := 1966;
Books[3].City := 'Москва';
Books[4].Title := '1984';
Books[4].Author := 'Джордж Оруэлл';
Books[4].Year := 1949;
Books[4].City := 'Лондон';
Books[5].Title := 'Преступление и наказание';
Books[5].Author := 'Фёдор Достоевский';
Books[5].Year := 1866;
Books[5].City := 'Санкт-Петербург';
end;
// Простой запрос: Вывод всех книг, название которых начинается с буквы "А"
procedure Query1;
var
i: integer;
begin
writeln('Простой запрос 1: Книги, название которых начинается с буквы "А":');
for i := 1 to NumBooks do
begin
if Books[i].Title[1] = 'А' then
writeln(' ', Books[i].Title, ' (', Books[i].Author, ')');
end;
end;
// Простой запрос: Вывод всех книг, изданных в Москве
procedure Query2;
var
i: integer;
begin
writeln('Простой запрос 2: Книги, изданные в Москве:');
for i := 1 to NumBooks do
begin
if Books[i].City = 'Москва' then
writeln(' ', Books[i].Title, ' (', Books[i].Author, ')');
end;
end;
// Сложный запрос: Вывод книг, изданных в Москве с 2010 года
procedure Query3;
var
i: integer;
begin
writeln('Сложный запрос: Книги, изданные в Москве с 2010 года:');
for i := 1 to NumBooks do
begin
if (Books[i].City = 'Москва') and (Books[i].Year >= 2010) then
writeln(' ', Books[i].Title, ' (', Books[i].Author, ')');
end;
end;
begin
FillDatabase;
Query1;
Query2;
Query3;
end.