8«В» — Самостоятельная работа №2. Вариант B.
Задача 1.
Напишите функцию, которая извлекает из полного адреса файла название каталога.
Например, из адреса /programs/commonfiles/home/Kirill/file1.doc
нужно извлечь название каталога /programs/commonfiles/home/Kirill/
(И конечно же, напишите программу для проверки этой функции!)
Задача 2. «Сумма чисел»
Напишите программу, которая вычисляет сумму неизвестного количества натуральных чисел,
записанную в виде символьной строки, например, “1+25+56”. Не используйте готовую функцию.
Задача 3. «Степени двойки»
Заполните массив степенями числа 2, начиная с конца,
так чтобы последний элемент массива был равен 1,
а каждый предыдущий был в 2 раза больше следующего.
Задача 4. «Таблица умножения»
Выведите таблицу умножения в красивом виде.
Для простоты умножение на 10 можно не выводить.
Пример
Ввод |
Вывод |
|
1 * 1 = 1 1 * 2 = 2 .... 1 * 9 = 9
2 * 1 = 2 2 * 2 = 4 .... 2 * 9 = 18
.............................................
9 * 1 = 9 9 * 2 = 18 .... 9 * 9 = 81
10 * 1 = 10 10 * 2 = 20 .... 10 * 9 = 90 |
Задача 5. «Победители олимпиады»
Даны два списка: список участников олимпиады и список набранных ими баллов.
Победителем олимпиады считается школьник (или несколько школьников), набравший наибольший балл
среди участников.
Напишите программу, которая выведет фамилию победителя (или победителей, если их несколько).
В первой строке через пробел вводятся фамилии участников. Во второй строке через
пробел вводятся набранные ими баллы (целые неотрицательные числа).
Гарантируется, что количества элементов в первом и втором списках одинаковы.
Выведите фамилию победителя. Если победителей несколько, выведите их фамилии через пробел.
При этом фамилии должны быть выведены в том же порядке, в каком они идут в первой строке входных данных.
Примеры
Ввод |
Вывод |
Petrov Ivanov Sidorov
10 5 10 |
Petrov Sidorov |
Cheburashka Gena Shapoklyak Galya
20 2 3 7 |
Cheburashka |
Задача 6. «Кинотеатр»
В кинотеатре n рядов по m мест в каждом.
В двумерном массиве хранится информация о проданных билетах:
число 1 означает, что билет на данное место уже продан,
число 0 означает, что место свободно.
Поступил запрос на продажу k билетов на соседние места в одном ряду.
Определите, можно ли выполнить такой запрос.
Программа получает на вход числа n и m.
Далее идут n строк, содержащих по m чисел (0 или 1),
разделённых пробелами. Затем дано число k.
Программа должна вывести номер ряда, в котором есть k подряд идущих свободных мест.
Если таких рядов несколько, то выведите номер наименьшего подходящего ряда.
Если подходящего ряда нет, выведите число 0.
Пример
Ввод |
Вывод |
3 4 0 1 0 1 1 0 0 1 0 0 0 0 2 |
2 |