Реферат по предмету "Информатика, программирование"


Программа на языке Паскаль, реализующая операции над множествами

Лабораторная работа № 1.
Операции над множествами
 
Цель работы:
Закрепление теоретических знаний и получениепрактических навыков выполнения операций над множествами.
Программа работы:
1. Изучить теорию.
2. Разработать программу на алгоритмическом языке,реализующую операции над множествами.
3. Выполнить вычислительные эксперименты.
Используемые программно-технические средства:
1. Персональный компьютер типа IBM PC.
2. Turbo Pascal 7.0.
Краткая теория:
Множество — совокупность объектов одной природы.
Операции над множествами.
Предположим, существуют два множества А и В,принадлежащие какому-то универсальному множеству U.Тогда:
1. Объединение множеств.
Объединением или суммой множеств А и В называетсямножество С, состоящее из элементов, входящих в оба множества.
2. Пересечение множеств.
Пересечением множеств А и В называется множествоС, состоящее из элементов, принадлежащих обоим множествам.
3. Разность множеств.
Разностью множеств А и В называется множество С,содержащее те и только те элементы множества А, которые не принадлежатмножеству В.
4. Симметричная разность множеств.
Симметричной разностью множеств А и В называетсямножество С, содержащее элементы множества А, не входящие во множество В, иэлементы множества В, не входящие во множество А.
5. Декартовое произведение множеств.
Декартовым произведением множеств А и В называетсямножество С, содержащее упорядоченные пары элементов множеств, причем первыйэлемент пары принадлежит множеству А, второй — множеству В.
Математическая постановка задачи:
Реализовать на одном из языков программированияпрограмму, способную выполнять следующие операции над множествами: объединение,пересечение, разность, симметричная разность, декартовое произведение.

Описание метода решения задачи:
/>
/>/> /> /> /> /> /> /> /> />

Описание программы:
Данная программа, написанная на языке Паскаль,начинается с раздела переменных, полный список которых представлен в Таблице 1.В основе алгоритма программы лежат пять процедур, каждая из которых отвечает зазакрепленную за ней операцию над множеством. (см. Таблицу 2) Выбор требуемойоперации происходит путем использования оператора case.
Работа программы начинается с вывода сообщения онеобходимости ввести количество элементов первого и второго множеств. Далеепрограмма требует ввести элементы множеств, заканчивая ввод каждого элементанажатием клавиши Enter. После ввода элементов множествнеобходимо выбрать операцию, которая должна быть выполнена над ними. Результатвыполнения операции выводится на экран.
Таблица 1.
Список идентификаторов переменных:Идентификатор Тип Применение Zoopark1 Zoopark1: array [1..33] of string Хранит элементы первого зоопарка Zoopark2 Zoopark2: array [1..33] of string; Хранит элементы второго зоопарка Rezultat rezultat: array [1..75] of string; Хранит результат выполнения операции Zpark1 zpark1: array [1 ..33] of string; Для временного хранения первого зоопарка zpark2 zpark2: array [1..33] of string; Для временного хранения второго зоопарка x, y, i, j, d, t, k integer Для организации циклов V integer Размер первого множества w integer Размер второго множества wiborka char Хранит номер выбранной операции

Таблица 2.
Список процедур:Имя процедуры Формальные параметры Вызов процедуры Применение obedinenie нет obedinenie Операция объединения множеств peresechenie нет peresechenie Операция пересечения множеств Имя процедуры Формальные параметры Вызов процедуры Применение raznost нет raznost Операция разности множеств simmetrichnaya_raznost нет simmetrichnaya_raznost Операция симметричной разности множеств dekartovoe_proizvedenie нет dekartovoe_proizvedenie Операция декартового произведения множеств

Вывод:
В результате всей проделанной работы мы закрепилитеоретические знания и получили практические навыки выполнения операций надмножествами, также нами была разработана программа на языке Паскаль,реализующая операции над множествами: объединение, пересечение, разность,симметричная разность, декартовое произведение.

Приложение
 
Листинг программы:
program giwotnie_zooparka;
uses CRT;
label menu;
var
zoopark1: array [1..33] ofstring;
zoopark2: array [1..33] ofstring;
zpark1: array [1 ..33] of string;
zpark2: array [1..33] of string;
j, i:integer;
x, y:integer;
d, k, t:integer;
v, w:integer;
str: string;
rezultat: array [1..75] ofstring;
wiborka: char;
procedure peresechenie;
begin
for x:=1 to v do
for y:=1 to w do
begin
if zoopark1[x]=zoopark2[y] then
rezultat[x] :=zoopark2 [y] ;
end;
clrscr;
writeln ('Rezultat rawen->>');
for i:=1 to v+w do
begin
if rezultat[i] ' ' then
writeln (rezultat[i]);
end;
end;
procedure obedinenie;
begin
for x:=1 to v do
for y:=1 to w do
begin
if zoopark1[x]=zoopark2[y] then
zoopark1[x]:=' ';
end;
for j:=1 to v do
begin
rezultat[j]:=zoopark1[j];
end;
t:=0;
for d:=j+1 to v+w do
begin
t:=t+1;
rezultat[d] :=zoopark2[t];
end;
clrscr;
writeln ('Rezultatrawen->>');
for i:=1 to v+w do
begin
if rezultat[i] ' ' then
writeln (rezultat[i]);
end;
end;
procedure simmetrichnaya_raznost;
begin
for x:=1 to v do
for y:=1 to w do
begin
if zoopark1[x]=zoopark2[y] then
begin
zoopark1[x]:=' ';
zoopark2[y]:=' ';
end;
end;
for j:=1 to v do
begin
rezultat[j]:=zoopark1[j];
end;
t:=0;
for d:=j+1 to v+w do
begin
t:=t+1;
rezultat[d] :=zoopark2[t];
end;
clrscr;
writeln ('Rezultatrawen->>');
for i:=1 to v+w do
begin
if rezultat[i] ' ' then
writeln (rezultat[i]);
end;
end;
procedure raznost;
begin
for x:=1 to v do
begin
rezultat[x] :=zoopark1 [x] ;
for i:=1 to v do
for j:=1 to w do
begin
if rezultat[i]=zoopark2[j] then
rezultat[i]:=' ';
end;
clrscr;
writeln ('Rezultat rawen->>');
for i:=1 to w do
begin
if rezultat[i] ' ' then
writeln (rezultat[i]);
end;
end;
end;
proceduredekartovoe_proizvedenie;
begin
i:=0;
for x:=1 to v do
for y:=1 to w do
begin
inc (i);
str:=' ';
if zoopark1[x]zoopark2[y]then rezultat[i]:=zoopark1[x]+' * '+zoopark2[y];
end;
clrscr;
writeln ('Rezultatrawen->>');
for i:=1 to v*w do
begin
if rezultat[i] ' ' then
writeln (rezultat[i]);
end;
end;
begin
clrscr;
textbackground(white);
textcolor(black);
writeln ('Wwedite kolichestwogiwotnih 1 zooparka:');
readln(v);
writeln ('Wwedite kolichestwogiwotnih 2 zooparka:');
readln(w);
write('Wwedite giwotnih 1zooparka ');
writeln(',w konce nagat Enter:');
for k:=1 to v do
begin
readln (zoopark1[k]);
end;
write('Wwedite giwotnih 2zooparka ');
writeln(',w konce nagat Enter:');
for i:=1 to w do
begin
readln (zoopark2[i]);
end;
for i:=1 to v do
zpark1[i] :=zoopark1[i];
for i:=1 to w do
zpark2[i] :=zoopark2[i];
menu:
writeln ('Wwesti nomer operacii:');
writeln ('1->>Peresechenie');
writeln ('2->>Obedinenie');
writeln ('3->>Simmetricheskaraznost');
writeln ('4->>Raznost');
writeln ('5->>Dekartowoeproizwedenie');
writeln ('6->>Wihod');
writeln ('Wi Wibrali:');
readln (wiborka);
case wiborka of
'1': peresechenie;
'2': obedinenie;
'3': simmetrichnaya_raznost;
'4': raznost;
'5': dekartovoe_proizvedenie;
'6': exit;
end;
readln;
clrscr;
for i:=1 to v*w do
rezultat[i]:= ' ';
for i:=1 to v do
begin
zoopark1[i]:= zpark1[i];
end;
for i:=1 to w do
begin
zoopark2[i]:=zpark2[i];
end;
goto menu;
end.
/>


Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.

Сейчас смотрят :

Реферат Застосування флуренізиду в комплексному лікуванні виразкової хвороби вплив на клініко лабораторні
Реферат Господарство країн Східної Європи Північної і Центральної Азії
Реферат Communist Manifesto Theory Essay Research Paper Karl
Реферат содержание судебника 1497г.
Реферат COMPARISON OF WEST SIDE STORY AND ROMEO
Реферат Фильтр скользящего среднего
Реферат Шагинян М.С.
Реферат Повесть Н.В. Гоголя "Нос" и лубочная традиция
Реферат Работоспособность и ее определение. Выбор оптимальной тренировочной нагрузки.
Реферат Зарубежный опыт государственного регулирования рыночной экономики на примере Франции (Доклад)
Реферат Современные подходы к оценке качества сестринской помощи
Реферат Акционерное Общество «Минудобрения»
Реферат Обслуживание электроустановок
Реферат Вариантное проектирование балочной клетки рабочей площадки
Реферат Москва в произведении Пушкина "Евгений Онегин"