Считываем N.
Цикл от 1 до N:
Считать строку.
Выделить последнее слово.
Цикл по нашему массиву (см. выше):
Если совпадают первые три буквы считанного слова и названия месяца из
массива - соответствующий count увеличить на 1, выйти из цикла.
Если вышли из цикла и ничего не нашли - сообщить об ошибке.
Массив заполнен. Сортируем чем-то простым, но устойчивым (stable),
чтоб не нарушать порядок месяцев. Можно ввести еще одно поле - номер месяца,
и сортировать по двум полям.
Вывести отсортированные данные, используя названием месяца из массива.
Задача из ЕГЭ по информатике. С2 и С4. Паскаль
Ребят, помогите. Я сейчас готовлюсь к ЕГЭ(без репетитора) разбираю вариант. Ответов на вариант нету. Свериться не с чем.
Цитата: nikaluga
Понял, не дурак. А на счет второй задачки можно подробнее?
Я с паскалем последний раз дело имел лет 15 назад минимум, так что код приводить не стану. Фрагменты даю на C, аналог на Pascal знающий его, напишет с полпинка...
Крупными мазками, так сказать.
СЧИТАЕМ, ЧТО ЗАЩИТА ОТ ДУРАКА (НЕВЕРНОГО ВВОДА) НЕ НУЖНА.
Создаем массив
Код:
struct {
int count;
char * month;
} stat[] = {
{ 0, "январь" },
{ 0, "февраль" },
...
{ 0, "декабрь" }
};
int count;
char * month;
} stat[] = {
{ 0, "январь" },
{ 0, "февраль" },
...
{ 0, "декабрь" }
};
Код:
Код:
j:= 0;
for i:= 1 to N do
if (a[i]%10 = 1) and (a[i]%3 = 0) then j:= j + 1;
writeln(j);
for i:= 1 to N do
if (a[i]%10 = 1) and (a[i]%3 = 0) then j:= j + 1;
writeln(j);
По второй задаче - массив из 12 счетчиков, из 12 строк месяцев в родительном падеже, 12 - в именительном.
Построчно ищем последнее слово, сравниваем, увеличиваем соответствующий счетчик. Сортируем чем-то простым, выводим...
Понял, не дурак. А на счет второй задачки можно подробнее?