Студопедия — ВВЕДИТЕ РАЗМЕР МАТРИЦЫ
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

ВВЕДИТЕ РАЗМЕР МАТРИЦЫ






0 1 1 5 2

1 0 2 4 2

1 2 0 1 2

5 4 1 0 3

2 2 2 3 0

ВВЕДИТЕ НОМЕР ГОРОДА, ИЗ КОТОРОГО

НАЧИНАЕТСЯ МАРШРУТ

COST = 8

2 1 3 4 5 2

Рис. 13.1. Результат работы программы PRG13_3

Задача 13.4 Дано множество из N чисел (1, 2,..., N). Постро­ить рекурсивную процедуру (генератор перестано­вок), которая порождает все возможные пере­становки без повторений из этих чисел (N < 11). Например, для N = 3 существует 6 перестановок:

123 1 32 23 1 2 1 3 3 1 2 32 1.

Определим параметры для рекурсивной процедуры:

PR - множество чисел, из которых выполняется перестановка;

К - позиция, которая заполняется в перестановке;

J - число, которое заполняет К-ю позицию.

В самой процедуре используется множество S1, которое умень­шается на каждом шагу перестановки.

PROGRAM PRG13_4;

{ГЕНЕРАТОР ПЕРЕСТАНОВОК}

CONST M=5;

TYPE SS=SET OF 1..M;

VAR

S:SS;

I,N:INTEGER;

MAS:ARRAY[1..M] OF INTEGER;

PROCEDURE PER(VAR PR:SS;K,J:INTEGER);

{Генерация перестановки в массиве MAS}

VAR I:INTEGER;

S1:SS;

BEGIN

MAS[K]:=J;

S1:=PR-[J];

FOR l:=1 TO N DO

IF I IN S1 THEN

PER(S1,K+1,I);

IF K=N THEN

BEGIN

FOR l:=1 TO N DO

WRITE(MAS[I]:5);

WRITELN

END;

END;

BEGIN

READLN(N);

S:=[1-N];

FOR I:= 1 TO N DO

PER(S,1,I);

END.

Для решения задачи:

- формируем тело программы и описьгеаем переменные;

- создаем описание процедуры IN_METR для формирование матрицы расстояний METR;

- создаем описание рекурсивной процедуры PER(PR, К, J) для порождения всех возможных перестановок и вывода их на экран;

- в основной программе считываем размер множества чисел;

- вызываем процедуру PER для порождения и вывода перестав новок на экран.

Переменные:

в процедуре PER:

I - переменная цикла;

S1 - множество чисел, которое может участвовать в перестановке;

в основной программе:

S - множество чисел для перестановки;

I - переменная цикла;

N-количество чисел;

MAS - очередная перестановка чисел.

 

1 2 3

1 3 2

2 1 3

2 3 1

3 1 2

3 2 1

Рис. 13.2. Результат работы программы PRG13_4

Задача 13.5 Дано множество из N городов (N < 11), между которыми проложены дороги, длина дорог из­вестна. В каком порядке должен посетить их коммивояжер, чтобы путь его был самым ко­ротким? Маршрут начинается в городе i и кончается в этом же городе. Для решения за­дачи использовать генератор перестановок.







Дата добавления: 2015-09-07; просмотров: 325. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Логические цифровые микросхемы Более сложные элементы цифровой схемотехники (триггеры, мультиплексоры, декодеры и т.д.) не имеют...

Дезинфекция предметов ухода, инструментов однократного и многократного использования   Дезинфекция изделий медицинского назначения проводится с целью уничтожения патогенных и условно-патогенных микроорганизмов - вирусов (в т...

Машины и механизмы для нарезки овощей В зависимости от назначения овощерезательные машины подразделяются на две группы: машины для нарезки сырых и вареных овощей...

Классификация и основные элементы конструкций теплового оборудования Многообразие способов тепловой обработки продуктов предопределяет широкую номенклатуру тепловых аппаратов...

Задержки и неисправности пистолета Макарова 1.Что может произойти при стрельбе из пистолета, если загрязнятся пазы на рамке...

Вопрос. Отличие деятельности человека от поведения животных главные отличия деятельности человека от активности животных сводятся к следующему: 1...

Расчет концентрации титрованных растворов с помощью поправочного коэффициента При выполнении серийных анализов ГОСТ или ведомственная инструкция обычно предусматривают применение раствора заданной концентрации или заданного титра...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия