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

Часть 2

Необходимо ответить на 2 вопроса из вопросов 6–8. Каждый вопрос – 15 баллов.

6.

В школе организована благотворительная ярмарка в пользу нуждающихся пенсионеров. На ярмарке продаются три вида билетов:

  • лотерейный билет;

  • билет на представление;

  • входной билет в буфет.

Участник, купивший больше 10 лотерейных билетов, получает один дополнительный бесплатный лотерейный билет.

Напишите программу, которая для каждого участника ярмарки вводит число купленных им билетов (отдельно по каждому виду билета).

Программа подсчитает и выведет на экран: число участников ярмарки, число купленных билетов каждого вида, число бесплатных лотерейных билетов.

Программа закончит свою работу, когда в качестве числа лотерейных билетов будет введено число -1.

Примечание: Нет необходимости проверять правильность вводимых значений.

7.

А. Перед вами входные параметры и результат метода bigSums:

Входные параметры: метод принимает в качестве параметра двузначное положительное число a, цифры которого отличны друг от друга.

Результат: метод возвращает сумму всех однозначных чисел, которые находятся между меньшей и большей цифрами числа a (включая сами цифры).

Например, для а=25 и а=52 метод возвратит 2+3+4+5=14.

Напишите метод bigSums.

Б. Дан массив размером 23 ячейки. Каждое число в массиве – двузначное, положительное, с отличными друг от друга цифрами.

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

Например, для следующего массива размера 5 будет выведено число 2.

81

24

12

58

32

Примечание: Необходимо использовать метод, написанный в пункте А.

8.

Перед вами фрагмент программы, использующий два массива целочисленных значений:

a – массив размером n;

b – массив размером 2n;

count=0;

for(i=0; i< n; i++)

{

if(a[i]!=(b[i*2]+b[i*2+1]))

a[i]=-1;

else

count=count+1;

}

System.out.println(n-count);

А.

    1. Проследите с помощью таблицы трассировки за исполнением фрагмента программы для n=5 и следующих массивов:

a

2

17

3

6

20

b

0

2

4

4

5

2

8

8

10

10

и укажите, что будет выведено на экран

    1. Запишите содержимое массива a после окончания работы фрагмента.

Б. Для другого массива a после исполнения фрагмента программы на экране было получено значение 0.

Укажите содержимое массива a, если известно, что массив b остался тем же, что и в пункте А.

Часть 3 (20 баллов)

Необходимо ответить на 1 вопрос из вопросов 9–10.

9.

Дан двумерный массив целых чисел. Все элементы массива – 0 или 1.

Определим «цепочку» в массиве как группу смежных ячеек массива в определенной строке или столбце, значения которых равны 1.

Длина «цепочки» – число элементов массива в ней.

Если в какой-то строке или каком-то столбце есть единственный элемент со значением 1, длина «цепочки» равна 1.

Если в какой-то строке или каком-то столбце нет ни одного элемента со значением 1, длина «цепочки» равна 0.

Элемент массива называется «окруженным», если его значение равно 1 и длина цепочки в его строке равна длине «цепочки» в его столбце.

Например, в следующем массиве размером 45 есть два «окруженных» элемента:

0

0

0

1

0

0

1

1

1

0

0

0

0

1

0

0

0

0

0

1

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