Задача:
Напишите программу, которая генерирует случайный набор из 5 имен и выводит их в виде списка. Java.
План:
- Алгоритм решения
- Код программы
- Примеры входных данных и ожидаемых результатов
- Объяснение кода программы
- Блок-схема
Алгоритм решения:
-
Создание списка имен:
- Инициализируется ArrayList
names
с заранее определенным набором имен.
- Инициализируется ArrayList
-
Перемешивание списка:
- Используется метод
Collections.shuffle(names)
для случайного перемешивания элементов списка.
- Используется метод
-
Выбор подмножества имен:
- С помощью метода
names.subList(0, 5)
выбираются первые 5 элементов из перемешанного списка. - Результат сохраняется в новый список
randomNames
.
- С помощью метода
-
Вывод результата:
- Выводится заголовок "Random list of 5 names:".
- Используется цикл for для итерации по списку
randomNames
. - Каждое имя выводится с порядковым номером, начиная с 1.
Код программы на языке Java:
Код Java
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class RandomNameGenerator {
public static void main(String[] args) {
List<String> names = new ArrayList<>(Arrays.asList(
"John", "Emma", "Michael", "Sophia", "William",
"Olivia", "James", "Ava", "Alexander", "Isabella"
));
Collections.shuffle(names);
List<String> randomNames = names.subList(0, 5);
System.out.println("Random list of 5 names:");
for (int i = 0; i < randomNames.size(); i++) {
System.out.println((i + 1) + ". " + randomNames.get(i));
}
}
}
Примеры входных данных и ожидаемых результатов:
Input:
(Программа не требует ввода данных)
Possible Output 1:
Random list of 5 names:
1. Emma
2. James
3. Sophia
4. William
5. Olivia
Possible Output 2:
Random list of 5 names:
1. Michael
2. Isabella
3. John
4. Ava
5. Alexander
Possible Output 3:
Random list of 5 names:
1. William
2. Sophia
3. Olivia
4. John
5. Emma
Объяснение кода программы:
-
Импорт необходимых классов:
Импортируются классы для работы со списками, массивами и коллекциями.import java.util.ArrayList; import java.util.Arrays; import java.util.Collections; import java.util.List;
-
Объявление класса:
Создается публичный классpublic class RandomNameGenerator {
RandomNameGenerator
. -
Объявление метода
main
:Определяется точка входа в программу - методpublic static void main(String[] args) {
main
. -
Создание списка имен:
Создается списокList<String> names = new ArrayList<>(Arrays.asList( "John", "Emma", "Michael", "Sophia", "William", "Olivia", "James", "Ava", "Alexander", "Isabella" ));
names
типаArrayList
, содержащий 10 имен. -
Перемешивание списка:
МетодCollections.shuffle(names);
shuffle
классаCollections
случайным образом перемешивает элементы спискаnames
. -
Выбор подсписка:
Создается новый списокList<String> randomNames = names.subList(0, 5);
randomNames
, содержащий первые 5 элементов перемешанного спискаnames
. -
Вывод заголовка:
Выводится заголовок списка.System.out.println("Random list of 5 names:");
-
Цикл для вывода имен:
Используется циклfor (int i = 0; i < randomNames.size(); i++) { System.out.println((i + 1) + ". " + randomNames.get(i)); }
for
для вывода каждого имени изrandomNames
с порядковым номером.