Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Zada4nik-Канель-Фрайман.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
1.8 Mб
Скачать

Задание 20.19*

Городское управление культуры предложило ученикам (10000 учеников во всех школах) приобрести билеты на любые из 10 спектаклей городского театра. Каждый ученик получил право приобрести по одному билету на каждый спектакль, но не обязан приобретать билет на все спектакли.

Напишите класс, который принимает с клавиатуры информацию о тех спектаклях, на которые решил приобрести билет каждый, и затем выводит на экран следующую информацию:

  • количество билетов, заказанных на каждый спектакль;

  • самый популярный спектакль (следует учесть вариант, что может быть несколько таких спектаклей);

  • спектакль (спектакли), на который решили приобрести билеты менее 100 учеников.

Задание 20.20*

На выборах представителя школы в городской ученический комитет выставили свои кандидатуры 12 человек. Представитель определяется по максимальному количеству полученных голосов, которое должно составлять не менее 10% от общего числа учащихся.

Напишите класс, который принимает с клавиатуры результаты голосования 300 учеников школы и затем определяет, удалось ли выбрать представителя школы в городской ученический комитет.

Задание 20.21*

Транспортная компания осуществляет работу 10 маршрутов городских автобусов. В конце каждого дня регистрируется выручка по каждому из маршрутов, а в конце недели составляется итоговый отчет.

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

Задание 20.22*

В аэропорту решено собрать данные о 10 рейсах, датируемых определенным днем. Для каждого рейса вводятся следующие данные о каждой улетающей этим рейсом семье: номер рейса (числа от 1 до 10) и число членов семьи.

Число пассажиров на каждый рейс неизвестно, поэтому ввод данных продолжается, пока число членов семьи не равно 0.

Напишите класс, который принимает с клавиатуры данные, подсчитывает и выводит на экран число пассажиров на каждом из 10 рейсов.

Задание 20.23*

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

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

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

Задание 20.24*

Напишите метод, который принимает в качестве параметра массив целых чисел.

Метод возвращает массив, который содержит только те значения, которые встречаются в массиве-параметре ровно один раз.

Задание 20.25*

Напишите метод, который принимает в качестве параметра массив целых чисел.

Метод возвращает массив, который содержит только те значения, которые встречаются в массиве-параметре более чем один раз.

Задание 20.26*

Напишите метод, который принимает в качестве параметра массив целых чисел.

Метод возвращает массив, который содержит номера ячеек, в которых записаны «уникальные», то есть встречающиеся только один(!) раз, значения.

Задание 20.27*

Массив целых чисел размером N называется полным, если он содержит все числа от 1 до N включительно. Напишите метод, который принимает в качестве параметра массив и проверяет, является ли он полным. Используйте массив счетчиков для проверки полноты массива.

Задание 20.28*

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

Раздел 21Работа со строковыми и символьными данными

Задание 21.1*

Дан метод:

static int bred (String s, char let)

{

int retValue=0;

if ( s.charAt(0) == let) retValue:= -1

else if ( s.charAt(s.length()-1)== let) retValue=1;

return retValue;

}

  1. Даны несколько вызовов метода:

    1. bred("KUKU",’K’)

    2. bred ("REKU",’P’)

    3. bred ("KUKUK"’,’k')

    4. bred ("KUPUK’,’K")

Для каждого из них укажите, какое значение будет возвращать метод. Обоснуйте свои ответы. По крайней мере для одного из случаев постройте таблицу трассировки (ручной прокрутки).

  1. Сформулируйте состояние входа и состояние выхода для этого метода.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]