Учеба и наука
Закрыт
Решение задач по Exel - вопрос №613315
В зале кинотеатра n рядов по m мест в каждом. Кинотеатр недавно открылся, и Вас попросили написать недостающую часть программного обеспечения для терминала продажи билетов. А именно, вам нужно написать программу для определения того, на какой ряд продать билет покупателю.
В начальный момент все места в зале свободны. Потом начинают подходить зрители. Зритель номер i хочет купить билет в ai-м ряду.
то он выберет ряд с наибольшим номером. Например, если покупатель хочет билет на полностью занятый третий ряд, а второй и четвёртый свободны, он возьмёт билет на четвёртый.
Для каждого покупателя нужно выдать ряд, на который ему будет продан билет.
Формат входных данных
В диалоге ввести целые числа n и m (1 ≤ n, m ≤ 100)— количество рядов и мест в ряду, соответственно. задано целое число k— количество покупателей,
пришедших за билетами (1 ≤ k ≤ n * m).
Далее, заполнить массив ai— номера желаемых рядов (1≤ ai ≤ n) генератором случайных чисел.
Результаты
Для каждого покупателя выведите номер ряда, на который ему будет продан билет. Если программа составлена на VBA, то вывести во второй столбец номера желаемых рядов и в третий столбец номера полученных рядов.
2. Технологии программирования (15 баллов)*
В банкомате есть купюры различных номиналов. После того, как человек отправляет запрос на выдачу ему некоторой суммы, программа, установленная в банкомате, определяет, сколько и каких купюр необходимо выдать этому человеку, чтобы выданная сумма была не больше запрошенной, но при этом максимально близка к ней. Происходит это следующим образом.
В первую очередь выдаются купюры самого большого номинала. Если эти купюры кончаются в банкомате, или если добавление еще одной купюры делает сумму больше запрашиваемой, то начинают выдаваться купюры номинала, второго по величине, и т. д. Так происходит до тех пор, пока выдаваемая сумма не будет в точности равна запрошенной, либо же пока не выяснится, что суммы не равны, но меньших купюр нет.
Вам необходимо разработать программу, обрабатывающую запросы к банкомату. Даны изначальные количества купюр каждого номинала и список запросов. Необходимо сообщить, какие суммы будут выданы по каждому запросу. При этом, естественно, нужно учитывать, что после каждого запроса число купюр в банкомате уменьшается.
Формат входных данных
Задать число n (1 ≤ n ≤ 10)— количество различных типов купюр.
Описать все возможные типы купюр: каждый тип характеризуются двумя числами ci и di (1 ≤ сi ≤ 5000, 1 ≤ di ≤ 100)— номинал купюры и количество купюр такого номинала. Типы купюр даны в порядке уменьшения номинала. Каждый следующий номинал является делителем предыдущего.
Далее задать число m (1 ≤m ≤ 100)— количество поступивших запросов. В следующих m строках описаны запросы в порядке их поступления. Каждый запрос характеризуется одним числом xi (1 ≤ xi ≤ 100000)— запрашиваемой суммой.
Результаты
вывести результаты обработки всех запросов в порядке поступления, по одному на строке. По каждому запросу выведите количество и номинал выданных купюр и сумму, выданную пользователю после обработки запроса.
*при оценке решения задач по программированию учитывается рациональное использование структур данных и алгоритмов. На тестовых примерах регистрируется время выполнения программ.
апрель 19, 2013 г.
-
Всего ответов: 0
Похожие вопросы
Доброе утро! В ячейки с помощью клавиш CTRL+Shift+4 перестали вноситься даты. Что сделать? Помогите!
март 24, 2024 г.
Составить расчет роста кроличьей семьи в течении 1 года, если известно, что крольчиха приносит в среднем 10 крольчат.
февраль 27, 2024 г.
Пользователь хочет считать арифметические выражения. Он вводит строку 2 + 2 * 2 и хочет получить в ответ 6. Но наши операции сложения и умножения
февраль 5, 2024 г.
Найдите срок поставки по договору для заказа на покупку PO11000063966. Перестановку столбцов при решении использовать не разрешается.
февраль 3, 2024 г.
Используя редактор баз данных, создайте базу данных «Чемпионат области по волейболу». Предусмотрите наличие 3 таблиц: команды, график игр,
Вопрос задан анонимно декабрь 16, 2023 г.