Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lab02_2010

.pdf
Скачиваний:
30
Добавлен:
07.06.2015
Размер:
382.44 Кб
Скачать

неотрицательные элементы (того же) массива, перенумерованные в обратном порядке (с конца), а S = min(P, Q). Элементы массива – вещественые числа.

13.подсчитывает, с какой цифры чаще всего начинаются элементы массива, и сколько таких элементов (элементы массива – целые числа; желательно обойтись без вложенных циклов)

14.определяет границы количество элементов самой длинной последовательности идущих подряд (в смысле индексов массива) положительных чисел (постарайтесь обойтись без вложенных циклов). Элементы массива – целые числа

15.определяет количество «зеркальных» пар, в которых оба числа имеют одинаковый знак. «Зеркальной» парой назовем пару чисел с номерами j и (N– j–1), где j = 0, 1, 2, …, N/2. Если N – нечетное, то одно («серединное») число в массиве не имеет пары. (Элементы массива – вещественные числа)

16.будем считать, что N – четное число, а каждую пару элементов с номерами 2j и 2j+1, где j = 0, 1, 2, … N/2, будем интерпретировать как координаты начала и конца отрезка на числовой прямой. Если два отрезка пересекаются (хотя бы в одной точке), будем считать, что их можно объединить (и далее рассматривать как единый отрезок). Определите, сколько разных отрезков получится, если объединить все, какие только возможно

17.будем считать, что каждое из N (вещественных) чисел обозначает массу некоторой частицы. Необходимо запрограммировать процесс объединения частиц. На каждом шаге этого процесса объединяются две частицы, имеющие наименьшие массы, причем на это объединение затрачивается энергия, вычисляемая как k*(m1+m2), где k – коэффициент пропорциональности (0 < k < 1), m1 и m2 – массы объединяемых частиц. После объединения получается частица массой (m1 + m2) – k*(m1+m2). Будем также считать, что при объединении двух частиц меньшая из них по массе «исчезает», а новая (объединенная) частица замещает собой большую из них (т.е. индексом объединенной частицы становится индекс той частицы из двух, у которой масса больше, а при равных массах – меньший индекс). Нужно вывести на экран последовательно результаты всех объединений (индексы и массы объединяемых на каждом этапе точек), пока не останется одна точка.

18.будем считать, что каждое из N (вещественных положительных) чисел обозначает показания счетчика – количество кубометров газа. Хозяйка, желая узнать, сколько в среднем газа расходуется за месяц, каждые 30 дней записывала показания счетчика на отдельном листке. Однако так получилось, что листки перемешались. Задача состоит в том, чтобы ответить на вопрос хозяйки.

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

20.будем считать, что каждое из N (вещественных положительных) чисел обозначает размер каталога (папки) в мегабайтах. Студент, у которого имеется флешка, на которой свободно K мегабайт (гарантируется, что K не меньше размера самой большой папки; K вводится с клавиатуры, приветствуется контроль ввода), хочет перенести все эти папки с ноутбука своего товарища. Он действует следующим образом: копирует на флешку папки подряд, пока на ней хватает места. Когда же для очередной папки места не хватает, студент просматривает по порядку все еще не скопированные папки, и если какая-то из них может еще поместиться, она также попадает на флешку. После того, как на флешку оказывается невозможно положить более ни одну папку (все еще не скопированные имеют размер, превосходящий остаток на флешке, либо же студент скопировал все возможные папки), он отсоединяет флешку и переносит данные на свой компьютер. Затем описанный процесс начинается с первой папки, которую студент не смог поместить на флешку в предыдущий раз. Определите, сколько раз студенту придется подключать флешку к компьютеру товарища и сколько в среднем незаполненного места будет оставаться на флешке при переносе данных.

Контрольные вопросы

1.При каком условии два класса могут находиться в одном файле?

2.Какие области видимости Вы знаете и что они означают?

3.Что такое конструктор и какова его роль в классе?

4.Каково назначение класса Locale?

5.Опишите общую структуру метода

6.Если в одном методе объявлена переменная, можно ли обратиться к ней в другом методе? Поясните ответ.

7.Выполните прогонку вручную метода getMin(), приведенного на рис. 12., на примере небольшого (5–7 элементов) массива. Сопоставьте его с измененным методом getMin() (изменения описаны в параграфе 8)

8.Поясните работу фрагмента метода theFarthestPoints(), приведенного в строках 76 – 80 на рис. 15

9.Расскажите, как решалась часть б) общего задания

10.Расскажите, как решалась часть в) общего задания (прокомментируйте код на рис. 21 или аналогичный код в своей записи)

11.Продемонстрируйте работу с пунктом контекстного меню Introduce Variable

12.Сколько цифр после запятой (десятичной точки), по Вашему мнению, следовало бы оставить в выводе результатов общего задания? Поясните ответ.

При сдаче задания

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

2.Ответить на контрольные вопросы

3.Продемонстрировать индивидуальное задание – как при запуске в среде NetBeans, так и при запуске независимо от среды. Его работоспособность проверяется на Вашем комплекте тестов и на тестах, предложенных преподавателем.

4.Обосновать включение или невключение тестовых случаев в Ваш комплект тестов

5.Ответить на вопросы по фрагментам общего и индивидуального задания

6.Выполнить модификацию кода индивидуального или общего задания по заданию преподавателя

Соседние файлы в предмете Программирование на Java