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


Разработка программы формирования перестановок, сочетаний, размещений (Turbo Pascal 7.0.)

Лабораторная работа № 2. Комбинаторика
 
Цель работы:
Получение практических навыков решения комбинаторных задач.
Программа работы:
1. Изучить теорию.
2. Разработать программу формирования перестановок, сочетаний, размещений.
3. Выполнить вычислительные эксперименты.
Используемые программно-технические средства:
1. Персональный компьютер типа IBM PC.
2. Turbo Pascal 7.0.
Краткая теория:
Комбинаторикой называют раздел дискретной математики, в которомрассматриваются вопросы, связанные с формированием и подсчетом комбинаций изэлементов перестановок, сочетаний, размещений.
Перестановкой из /> элементов называют комбинацииотличающиеся порядком расположения элементов.
Количество перестановок определяется по формуле
/>
Сочетанием из /> элементов по /> элементам называютсякомбинации отличающиеся хотя бы одним элементом.
Количество сочетаний без повторений определяется по формуле:
/>

Размещением без повторений из /> элементов по /> называют комбинации,отличающиеся либо элементами, либо порядком расположения элементов.
Количество размещений без повторений определяется по формуле:
/>
Число размещений связано с числом перестановок и сочетаний соотношением:
/> 
 
Математическая постановка задачи:
Составить программу формирования перестановок, сочетаний, размещений свыводом результатов на экран дисплея.
Описание программы:
Данная программа, написанная на языке Паскаль, начинается с разделапеременных, полный список которых представлен в таблице 1. В основе алгоритмапрограммы лежат три процедуры, каждая из которых отвечает за закрепленную заней часть программы (см. таблицу 2). Выбор требуемой операции происходит путемиспользования оператора case.
Работа программы начинается с вывода сообщения о необходимости выбратьоперацию для выполнения. Далее требуется ввести из скольки и по сколькоэлементов будет осуществляться данная операция. Результат выполнения операциивыводится на экран.
Таблица 1 — Список идентификаторов переменныхИдентификатор Тип Применение massiwi1 massiwi1:massiwi; Для хранения промежуточных результатов massiwi2 massiwi2:massiwi; Для хранения промежуточных результатов iz_skolki integer Из скольки элементов po_skolko integer По сколько элементов i, j, integer Для организации циклов Nomer integer Хранит номер выбранной операции y integer Вспомогательная переменная
Таблица 2 — Список процедурИмя процедуры Формальные параметры Вызов процедуры Применение sochetanye m, y — целые числа; sochetanye(m,y:integer); Операция сочетания perestanovka
m, y — целые числа;
s — массив; perestanovka(m,y:integer; s:mas); Операция перестановки razmesheniye m, y — целые числа; razmesheniye(m,y:integer; s:mas); Операция размещения
Постановка отдельного примера:
Рассмотрим все возможные перестановки из 7-ми элементов, сочетания из 6по 3 элемента и размещения из 7 по 3 элемента.

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

Приложение
 
Листинг программы
uses crt;
label kombinatorika;
type
massiwi=array [1..20] of integer;
var
massiwi1:massiwi;
massiwi2:massiwi;
iz_skolki, po_skolko:integer;
i,j:integer;
nomer:integer;
y:integer;
procedure perestanovka(m,y:integer; s:massiwi);
var
j,i:integer;
s1:massiwi;
begin
for i:=1 to m do begin
massiwi1[y]:=s[i];
j:=1;
for y:=1 to m do begin
if s[y]s[i] then begin
s1[j]:=s[y];
j:=j+1;
end;
end;
if y=iz_skolki then begin
for j:=1 to iz_skolki do write(massiwi1[j]);
writeln;
end else
perestanovka(m-1,y+1,s1);
end;
end;
procedure sochetanye(m,y:integer);
var
j,i:integer;
begin
for i:=1 to m do begin
massiwi1[y]:=i;
if y=po_skolko then begin
for j:=1 to po_skolko do write(massiwi1[j]);
writeln;
end else
sochetanye(m,y+1);
end;
end;
procedure razmesheniye(m,y:integer; s:massiwi);
var
j,i:integer;
begin
for i:=1 to m do begin
massiwi1[y]:=i;
if y=po_skolko then begin
for j:=1 to po_skolko do write(massiwi1[j]);
writeln;
perestanovka(po_skolko,1,massiwi2);
end else begin
sochetanye(m,y+1);
perestanovka(po_skolko,1,massiwi2);
end;
end;
end;
Begin
kombinatorika:clrscr;
for i:=1 to 8 do
writeln;
writeln(' Wi dolgni wibrat neobhodimuy operaciyu:');
writeln('-->> 1. Razmeshenie;');
writeln('-->> 2. Perestanovka; ');
writeln('-->> 3. Sochetanie; ');
writeln('-->> 4. Vihod.');
writeln;
write('-->> Wi wibrali:');
readln(nomer);
case nomer of
1: begin
clrscr;
write('Sochetanye iz=');
readln(iz_skolki);
write(' po=');
readln(po_skolko);
writeln;
writeln('Sochetanye:');
sochetanye(iz_skolki,1);
readln;
goto kombinatorika;
end;
2: begin
clrscr;
write('Perestanovka iz=');
readln(iz_skolki);
for i:=1 to iz_skolki do massiwi2[i]:=i;
writeln;
writeln('Perestanovka:');
perestanovka(iz_skolki,1,massiwi2);
readln;
goto kombinatorika;
end;
3:begin
clrscr;
write('Razmeshenie iz=');
readln(iz_skolki);
write(' po=');
readln(po_skolko);
for i:=1 to iz_skolki do massiwi2[i]:=i;
writeln;
writeln('Razmeshenie:');
razmesheniye(iz_skolki,1,massiwi2);
readln;
goto kombinatorika;
end;
4: end;
end.


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

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

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

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

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

Реферат Структура задачи права и обязанности налоговых органов
Реферат Темпельгоф, Георг Фридрих
Реферат Особенности проведения работ по ликвидации пожаров и аварийных ситуаций на объектах с наличием радиационных веществ
Реферат По ухабам времени: интеллигенция и образование
Реферат Воздушное пространство Российской Федерации понятие и правовая хар
Реферат «Оттепель» в духовной жизни советского общества»
Реферат Предмет, метод, объкт управленческого учета
Реферат Дидактическая игра как средство воспитания любви к природе родного края
Реферат King Lear Assignment Essay Research Paper King
Реферат Учет заработной платы в бюджетных организациях (на примере Управления по образованию, культуре и молодежной политики)
Реферат Computers
Реферат The Great Depression Essay Research Paper Social
Реферат Предмет политэкономии
Реферат Moral Accountability Essay Research Paper Arthur WashburneIntroduction
Реферат Slovak Law Problem Tax Deductibility Of Expense