Постановка задачи: даны достоинства пяти выданных из колоды карт. Карты должны быть упорядочены по их достоинству (туз - старший). Разместить их в упорядоченном
массиве и напечатать их отсортированные значения.
Выполните
анализ задачи. Завершите разработку определения структуры данных и
алгоритма, называемого sort_hand (сорт_расклад) и решающего данную задачу.
Анализ: Упорядоченности можно добиться путем выбора первой карты, ее последовательного сравнения с картами от второй до пятой по порядку и взаимного перекладывания карт, при необходимости. Затем берется вторая карта и сравнивается с картами от третьей до пятой, и т.д.
Структура данных:
- Массив из 5 элементов целого типа mas_card. Элементы массива могут принимать значения в следующем диапазоне: 1 - шестерка, 2 - семерка, 3 - восьмерка, 4 - девятка, 5 - валет, 6 - дама, 7 - король, 8 - туз.
- Переменные целого типа i и j - счетчики циклов.
- Вспомогательная переменная целого типа a .
Для решения задачи надо выполнить следующие действия:
- заполнить массив, например, случайным образом, и напечатать его ;
- отсортировать массив в порядке убывания;
- напечатать отсортированный массив
Эти действия будет реализовывать алгоритм sort_hand:
sort_hand
Выполнить
input
sorty
output
Выполнено
Более детально разрабатываются каждая из составных частей алгоритма sort_hand:
input
Цикл i от 1 до 5
Выполнить
Определить случайным образом i-ый элемент массива mas_card
Вывести этот элемент
Выполнено
sorty
Цикл i от 1 до 4
Выполнить
Цикл j от i+1 до 5
Выполнить
Если mas_card(i)<mas_card(j)
Выполнить
a=mas_card(i)
mas_card(i)=mas_card(j)
mas_card(j)=a
Выполнено
j=j+1
Выполнено
i=i+1
Выполнено
output
Цикл i от 1 до 5
Выполнить
Вывести i-ый элемент массива mas_card
Выполнено
Необходимо вручную проверить работу алгоритма, задав конкретные численные значения.