Полезно выпускнику
Запись от antonboom размещена 23.05.2013 в 22:56
Показов 4650
Комментарии 0
Метки antonboom, информатика, сc4
|
Задание C4 по информатике: знания / сюжеты / методы решения Не по теме: Используемый язык - Pascal Для большинства учеников самой сложной и нерешаемой задачей в ЕГЭ по информатике является задача C4. Проанализировав несколько десятков задач С4 ЕГЭ по информатике из демонстрационных вариантов, реальных вариантов, а также многочисленных сборников для подготовки к экзамену. Из всего многообразия можно выделить несколько «типовых сюжетов» и методов их решения, знаний, которыми должен обладать ученик. Знания: Для успешного решения задачи необходимым минимумом является:
Работа со строками Определение длины строки
Описание и формирование массива
Описание записей
все тоже самое, но в цикле
Сюжеты и методы: Ниже представлены одиннадцать различных вариантов задач С4, которые встречались демонстрационных, пробных и реальных экзаменах за последние три года. Для простоты обращения к каждой из задач им даны краткие названия, для каждой задачи приведен краткий метод ее решения. 1. «Результаты экзаменов» Из полученных строк формируется массив записей, с их последующей статистической обработкой. Текст задачи: На вход программе подаются сведения о сдаче экзаменов учениками 9-х классов некоторой средней школы. В первой строке сообщается количество учеников N, которое не меньше 10, но не превосходит 100, каждая из следующих N строк имеет следующий формат: <Фамилия> <Имя> <оценки>, где <Фамилия> – строка, состоящая не более чем из 20 символов, <Имя> – строка, состоящая не более чем из 15 символов, <оценки> – через пробел три целых числа, соответствующие оценкам по пятибалльной системе. <Фамилия> и <Имя>, а также <Имя> и <оценки> разделены одним пробелом. Пример входной строки: Иванов Петр 4 5 3 Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран фамилии и имена трех худших по среднему баллу учеников. Если среди остальных есть ученики, набравшие тот же средний балл, что и один из трех худших, то следует вывести и их фамилии и имена. Метод решения:
2. Участие в олимпиаде Из полученных строк формируется массив записей, с последующей статистической обработкой. Текст задачи: На вход программе подаются сведения о номерах школ учащихся, участвовавших в олимпиаде. В первой строке сообщается количество учащихся N, каждая из следующих N строк имеет формат: <Фамилия> <Инициалы> <номер школы>, где <Фамилия> – строка, состоящая не более чем из 20 символов, <Инициалы> – строка, состоящая из 4-х символов (буква, точка, буква, точка), <номер школы> – не более чем двузначный номер. <Фамилия> и <Инициалы>, а также <Инициалы> и <номер школы> разделены одним пробелом. Пример входной строки: Иванов П.С. 57 Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию, из каких школ было меньше всего участников олимпиады (но из этих школ был хотя бы один участник). Метод решения:
Кликните здесь для просмотра всего текста
3. «Ученики школы» Из списка учеников формируется массив записей, который подвергается статистической обработке. Текст задачи: На вход программе подаются сведения об учениках некоторой средней школы. В первой строке сообщается количество учеников N, каждая из следующих N строк имеет следующий формат: <Фамилия> <Имя> <класс>, где <Фамилия> – строка, состоящая не более, чем из 20 символов, <Имя> – строка, состоящая не более, чем из 15 символов, <класс> – год обучения (от 1 до 11) и заглавная буква (от “А” до “Я”) без пробела. <Фамилия> и <Имя>, а также <Имя> <класс> разделены одним пробелом. Пример входной строки: Иванов Петр 10Б Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию о параллелях (годе обучения) с наименьшим числом учеников. Программа должна выводить на экран в первой строке количество учеников в искомых параллелях, а во второй строке – в порядке возрастания номера этих параллелей через пробел. Например: 100 1 7 11 Метод решения: вариация предыдущих задач
4. «Среднесуточная температура» Из полученных строк с среднесуточной температурой формируется массив записей, произволится статистическая полученных данных. Текст задачи: На вход программе подаются 365 строк, которые содержат информацию о среднесуточной температуре всех дней 2007 года. Формат каждой из строк следующий: сначала записана дата в виде dd.mm (на запись номера дня и номера месяца в числовом формате отводится строго два символа, день от месяца отделен точкой), затем через пробел (для Бейсика – через запятую) записано значение температуры — число со знаком плюс или минус, с точностью до 1 цифры после десятичной точки. Данная информация отсортирована по значению температуры, то есть хронологический порядок нарушен. Требуется написать как можно более эффективную программу (укажите используемую версию языка программирования, например, Borland Pascal 7.0), которая будет выводить на экран информацию о месяцах с минимальной среднемесячной температурой. Найденные минимальные значения следует выводить в отдельной строке для каждого месяца в виде: номер месяца, значение среднемесячной температуры, округленное до одной цифры после десятичной точки. Метод решения:
Кликните здесь для просмотра всего текста
5. «Заклинание» Получить строку, выполнить преобразования с символами по заданным правилам, вывести полученную строку. Текст задачи: На вход программе подается текст заклинания, состоящего не более чем из 200 символов, за*канчивающийся точкой (символ «точка» во входных данных единственный). Оно было за*шифровано юным волшебником следующим об*разом. Сначала волшебник определил количест*во букв в самом коротком слове, обозначив по*лученное число К (словом называется непрерыв*ная последовательность латинских букв, слова друг от друга отделяются любыми другими сим*волами, длина слова не превышает 20 симво*лов). Затем он заменил каждую латинскую бук*ву в заклинании на букву, стоящую в алфавите на К букв ранее (алфавит считается цикличе*ским, то есть перед буквой А стоит буква Z), ос*тавив другие символы неизменными. Строчные буквы при этом остались строчными, а пропис*ные — прописными. Требуется написать про*грамму на языке Паскаль или Бейсик, которая будет выводить на экран текст расшифрованного заклинания. Например, если зашифрованный текст был таким: Zb Ra Са Dab Ra, то результат расшифровки должен быть сле*дующим: Вd Тс Ее Fed Тс. Метод решения:
6. «Контрольное значение» На основе полученной последовательности чисел вычислить контрольного значение, которое строится по заданным правилам, сравнить вычисленное значение с полученным на входе. Текст задачи: По каналу связи передается последовательность положительных целых чисел, все числа не превышают 1000, их количество заранее неизвестно. Каждое число передается отдельно. Признаком конца передаваемой последовательности является число 0. После числа 0 передается контрольное значение – наибольшее число R, удовлетворяющее следующим условиям: 1) R – произведение двух различных переданных элементов последовательности («различные» означает, что не рассматриваются квадраты переданных чисел, произведения различных, но равных по величине элементов допускаются); 2) R делится на 6 Напишите эффективную программу, которая получает последовательность чисел и следующие за ней признак конца и контрольное значение, а также проверяет правильность контрольного значения. Программа должна напечатать отчет по следующей форме: Получено .. чисел Полученное контрольное значение: …. Вычисленное контрольное значение:… Контроль пройден (или – контроль не пройден). Размер памяти, которую использует Ваша программа, не должен зависеть от длины переданной последовательности чисел. Перед текстом программы кратко опишите используемый вами алгоритм решения задачи. Пример входных данных: 60 17 3 7 9 60 0 3600 Пример выходных данных для приведенного выше примера входных данных: Получено 6 чисел Полученное контрольное значение: 3600 Вычисленное контрольное значение: 3600 Контроль пройден. Метод решения: В N полученных числах ищем:
7. «Последовательность чисел» Анализ последовательности чисел, выделение в ней участка с наибольшим «подъемом». Текст задачи: По каналу связи передается последовательность положительных целых чисел X1, X2 …, все числа не превышают 1000, их количество заранее неизвестно. Каждое число передается в виде отдельной текстовой строки, содержащей десятичную запись числа. Признаком конца передаваемой последовательности является число 0. Участок последовательности от элемента XT до элемента XT-N называется подъемом, если на этом участке каждое следующее число больше предыдущего. Высотой подъема называется разность XT-N - XT. Напишите эффективную программу, которая вычисляет наибольшую высоту среди всех подъемов последовательности. Если в последовательности нет ни одного подъема, программа выдает 0. Программа должна напечатать отчет по следующей форме: Получено ... чисел Наибольшая высота подъема: … Размер памяти, которую использует Ваша программа, не должен зависеть от длины переданной последовательности чисел. Метод решения:
Не по теме: Слизано и подредактировано с сайта http://www.titorov.ru/ | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Метки antonboom, информатика, сc4
Размещено в Без категории
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.


