Размер шрифта: A AA Изображения Выключить Включить Цвет сайта Ц Ц Ц Х
Бесплатный конструктор сайтов - uCoz
Четверг, 02.05.2024, 03:33
Приветствую Вас Гость | RSS

Сайт учителя информатики  и ИКТ Шинкаренко Евгения Александровича

Реклама
Оцените сайт
Оцените мой сайт
Всего ответов: 837
Программирование
Какой язык программирования выбрать для подготовки к ЕГЭ
Всего ответов: 804

Программирование и технология программирования. Решение задач части С4

Задача №1.

На автозаправочных станциях (АЗС) продается бензин с маркировкой 92, 95 и 98. В городе N был проведен мониторинг цены бензина на различных АЗС. Напиши­те эффективную по времени работы и по используемой памяти программу, которая будет определять для каждого вида бензина, сколько АЗС продают его дешевле всего. На вход программе в первой строке подается число АЗС, участвующих в мони­торинге стоимости бензина. В каждой из последующих N строк находится информа­ция в формате:

<Компания>
<Улица> <Марка> <Цена>

где

<Компания> — строка, состоящая не более чем из 20 символов без пробелов,

<Улица> — строка, состоящая не более чем из 20 символов без пробелов,

<Марка> — одно из чисел 92, 95 или 98,

<Цена> — целое число в диапазоне от 1000 до 3000, обозначающее стоимость одного литра бензина в копейках.

<Компания> и <Улица>, <Улица> и <Марка>, <Марка> и <Цена> разделены ровно одним пробелом.

Пример входной строки: Синойл Цветочная 95 2250

Программа должна выводить через пробел три числа — количество АЗС, прода­ющих дешевле всего 92-й, 95-й и 98-й бензин соответственно. Если бензин какой-то марки нигде не продавался, то следует вывести 0.

Пример
выходных данных: 12 1 0

Перейти к решению задачи



Задача №2.#
Дан список результатов сдачи экзамена учащимися школ некоторого района, с указанием фамилии и имени учащегося, номера школы и итогового балла.
Напишите эффективную по времени работы и по используемой памяти программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая определяет список школ, в которых средний балл на экзамене, набранный учащимися из данной школы выше, чем средний балл по всему району.
На вход программе в первой сроке подается количество учащихся во всех школах района N.
В каждой из последующих N строк находится информация в следующем формате:

<Фамилия> <Имя> <Номер школы> <Балл>


где <Фамилия> – строка, состоящая не более, чем из 20 символов без пробелов,
<Имя> – строка, состоящая не более, чем из 20 символов без пробелов,
<Номер школы> – число от 1 до 99,
<Балл> - число от 0 до 100.
Порядок следования строк – произвольный.

Пример входных данных:
6
Иванов Сергей 1 90
Сергеев Петр 21 80
Петров Кирилл 31 70
Кириллов Егор 1 80
Егоров Николай 21 90
Николаев Иван 31 70

Программа должна определить количество школ в районе, в которых средний балл на экзамене, набранный учащимися из данной школы выше, чем средний балл по всему району и вывести сначала количество таких школ, а в следующей строке – номера этих школ через пробел. Пример вывода для приведенного выше примера ввода:
2
1 21

При выполнении задания следует учитывать, что значение N может быть велико (до 10.000).
Перейти к решению задачи



Задача №3. #

На вход программе подается последовательность цифр. Ввод этих символов заканчивается точкой (другие символы, отличные от «.» и цифр 0 ... 9, во входных данных отсутствуют; в программе на языке Бейсик символы можно вводить по одному в строке, пока не будет введена точка). Требуется написать эф­фективную программу, которая будет печатать цифры, встречающиеся во входной последовательности, в порядке увеличения частоты их встречаемости. Каждая циф­ра при этом должна быть распечатана один раз. Если какие-то цифры встречаются одинаковое число раз, то они выводятся по возрастанию. Например, пусть на вход подаются следующие символы: 1232432. В данном случае программа должна выве­сти: 1 4 3 2.

Перейти к решению задачи


Задача №4. #

На вход программе подаются
сведения о сдаче экзаменов учениками 9-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат: < Фамилия > <Имя> < оценки >, где < Фамилия > — стро­ка, состоящая не более чем из 20 символов, <Имя> — строка, со­стоящая не более чем из 15 символов, < оценки > — через пробел три целых числа, соответствующие оценкам по пятибалльной систе­ме.

< Фамилия > и <Имя>, а также <Имя> и < оценки > разделены одним пробелом. Пример входной строки:

Иванов Петр 4 5 4

Требуется написать
программу, которая будет выводить на экран фа­милии и имена трех лучших по среднему баллу учеников. Если среди остальных есть ученики, набравшие тот же средний балл, что и один из трех лучших, то следует вывести и их фамилии и имена.
Требуемые имена и фамилии можно выводить в произвольном порядке.
Перейти к решению задачи


Задача №5. #
На вход программы подается текст заклинания, состоящего не более чем из 200 символов, заканчивающийся точкой (символ «точка» во входных данных единственный). Оно было зашифровано Гарри Поттером следующим образом. Сначала Гарри определил количество букв в самом длинном слове, обозначив полученное число K (словом называется непрерывная последовательность английских букв, слова друг от друга отделяются любыми другими символами, длина слова не превышает 20 символов). Затем он заменил каждую английскую букву в заклинании на букву, стоящую в алфавите на К букв ранее (алфавит считается циклическим, то есть перед буквой А стоит буква Z), оставив
другие символы неизменными. Строчные буквы при этом остались строчными, а рописные - прописными. Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран текст расшифрованного заклинания.
Например, если зашифрованный текст был таким:

Zb Ra Ca,Dab Ra.

то результат расшифровки должен быть следующим:

Се Ud Fd,Gdc Ud.

Перейти к решению задачи

Задача №6.#
На вход программы подается текст заклинания, состоящего не более чем из 200 символов, заканчивающийся точкой (символ «точка» во входных данных единственный). Оно было зашифровано Гарри Поттером следующим образом. Сначала Гарри определил количество букв в самом длинном слове, обозначив полученное число K (словом называется непрерывная последовательность английских букв, слова друг от друга отделяются любыми другими символами, длина слова не превышает 20 символов). Затем он заменил каждую английскую букву в заклинании на букву, стоящую в алфавите на К букв далее (алфавит считается циклическим, то есть перед буквой А стоит буква Z), оставив
другие символы неизменными. Строчные буквы при этом остались строчными, а рописные - прописными. Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран текст расшифрованного заклинания.

Например, если зашифрованный текст был таким:

Се Ud Fd Gde Ud.

то результат расшифровки должен быть следующим:

Zb Ra Ca Dab Ra.
Перейти к решению задачи


Задача №7.#

На вход программе подается текст на английском языке, заканчива­ющийся точкой (другие символы «.» в тексте отсутствуют). Требуется написать программу, которая будет определять и выводить на экран английскую букву, встречающуюся в этом тексте чаще всего, и количество там таких букв. Строчные и прописные буквы при этом считаются неразличимыми. Если искомых букв несколь­ко, то программа должна выводить на экран первую из них по алфавиту.

Например, пусть файл содержит следующую запись: It is not a simple task. Yes!

Чаще всего здесь встречаются буквы I, S и Т (слово Yes в подсчете не учитывает­ся, так как расположено после точки). Следовательно, в данном случае программа должна вывести два символа, разделенных пробелом: I 3.

Перейти к решению задачи


Задача №8.#

В канцелярских отделах магазинов города X продаются наборы, содержащие карандаши 12, 18 и 24 цветов. В городе X был проведен мониторинг цен на наборы цветных карандашей. Напишите эффективную по времени работы и по используемой памяти программу, которая будет определять для каждого вида наборов, сколько магазинов продают их дешевле всего. На вход программе сначала подается число магазинов N.
В каждой из следующих N строк находится информа­ция в формате:

<Фирма> <Улица> <Количество карандашей в наборе> <Цена>

где

<Фирма> — строка, состоящая не более чем из 20 символов без пробелов,

<Улица> — строка, состоящая не более чем из 20 символов без пробелов,

<Количество карандашей в наборе > — одно из чисел 12, 18 или 24,

<Цена> — целое число вдиапазоне от 2000 до 5000, обозначающее стоимость одного набора карандашей в копейках.

<Фирма> и <Улица>, <Улица> и <Количество карандашей в наборе >, <коли­чество карандашей в наборе> и <Цена> разделены ровно одним пробелом.

Пример входной строки: Пятерочка Комсомольская 24 4200

Программа должна выводить через пробел три числа — количество магазинов, продающих дешевле всего карандаши 12, 18 и 24 цветов. Если какой-то вид каран­дашей нигде не продавался, то следует вывести 0. Пример выходных данных: 14 0 9

Перейти к решению задачи


           
Реклама
Календарь
«  Май 2024  »
ПнВтСрЧтПтСбВс
  12345
6789101112
13141516171819
20212223242526
2728293031
Поиск
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Счетчик яндекс
Яндекс.Метрика