
- •Учебное пособие Основы алгоритмизации и программирования
- •Содержание
- •Структура курса «Основы алгоритмизации и программирования»
- •Тема: Понятие алгоритма. Понятие системы программирования.
- •Линейные алгоритмы
- •Структура программы в Паскале
- •Описательная часть
- •Исполнительная часть
- •Основные команды управления выводом на экран.
- •Цветовая шкала
- •Контрольные вопросы по теме «Алгоритмы»
- •Задания для самостоятельной работы. «Линейные алгоритмы. Присваивание»
- •Задачи по теме «Графика»
- •Тема: Алгоритмы с ветвлением. Организация ветвления на Паскале.
- •Составные условия.
- •Контрольные вопросы по теме «Ветвление»
- •Задачи по теме «Ветвление»
- •Задачи по теме «Оператор выбора»
- •Тест по теме «Ветвление»
- •Тема: Циклические алгоритмы. Организация циклов в Паскале.
- •Правила организации циклических действий.
- •Контрольная работа
- •Вопросы к зачету:
- •Тест по теме «Циклы»
- •Тема: Процедуры и функции.
- •Процедуры в Паскале.
- •Тест по теме «Процедуры и функции»
- •Задачи по теме «Процедуры и функции»
- •Контрольная работа
- •Тема «Структурированные типы данных. Массивы»
- •Сортировка массива.
- •Двумерные массивы.
- •Контрольные вопросы по теме «Массивы»
- •Задачи на тему «Массивы»
- •Дан массив. Все его элементы увеличить в два раза.
- •Контрольная работа
- •Тест по теме «Структурированные типы данных. Массивы»
- •7. Удвоить положительные элементы массива
- •8. Найти сумму четных элементов массива
- •Тема «Структурированные типы данных. Строки»
- •Функции строковых переменных
- •Контрольные вопросы по теме «Строки»
- •Задачи на тему «Строки»
- •Контрольная работа
- •Тест по теме «Строки»
- •Тема «Структурированные типы данных. Запись»
- •Контрольные вопросы по теме «Запись»
- •Задачи по теме «Записи»
- •Контрольные вопросы по теме «Множества»
- •Задачи на тему «Множество»
- •Тест по теме «Множество. Запись»
- •Тема «Структурированные типы данных. Файлы»
- •Контрольные вопросы по теме «Файлы»
- •Задачи на тему «Файлы»
- •Тест по теме «Файлы»
- •Задания на модульное программирование
- •Олимпиадные задачи районного тура разных лет
- •Задача о тексте
- •Пример: Вход: 2
- •Сравнение строк
- •Римские цифры
- •Тетрагон
- •Проблема «2000»
- •Грузоперевозки
- •Тренировки барона Мюнхгаузена
- •Перевертыши
- •Четыре числа в двух ячейках
- •Площадь треугольника
- •Сумма чисел
- •Нужная дата
- •Дружные слова
- •Мы все такие разные
- •Считалка
- •Работаем с дробями
- •Новый порядок
- •И снова палиндром
- •Скамейка
- •Обращение числа
- •Код сейфа
- •Сообщения об ошибках компиляции (по кодам)
- •Список литературы
Олимпиадные задачи районного тура разных лет
1998 год
Задача о тексте
Вася набирал текст сочинения на компьютере и забыл, что предложения должны начинаться с прописной буквы. В результате весь текст сочинения набран маленькими буквами. Напишите программу, которая в первом слове каждого предложения маленькую букву заменяет на прописную. Всего в сочинении не более 100 предложений. Считаем, что в предложениях нет названий и имен. Даты Вася писал без пробелов после точки.
Входные данные: первая строка – количество строк в сочинении, далее последовательность строк, содержащих текст сочинения.
Выходные данные: та же последовательность строк с исправленным текстом.
Пример: Вход: 2
он приехал сюда 05.10.1999 года. был
солнечный день, звонко пели птички. хорошо! красиво.
Выход: Он приехал сюда 05.10.1999 года. Был
солнечный день, звонко пели птички. Хорошо! Красиво.
Пи или е?
Дан текстовый файл, содержащий только десятичные цифры. Требуется написать программу, которая определит, какая цепочка цифр встречается в этом файле раньше: 3141 или 2718. Внутри каждой цепочки могут встречаться другие цифры. В программе может быть использована только одна переменная.
Вход: 65324781404651853 Выход: Пи
1999 год
Сравнение строк
Вводятся две строки символов в кодировке ASCII. Символы находятся в диапазоне [32…126]. Требуется определить, какие символы встречаются в обеих строчках, а какие только в одной и вывести их в порядке возрастания номера.
Вход: Выход:
Information; в обеих: inot
Revolution. В одной: .;Iraeflmru
Римские цифры
Напишите программу, складывающую два числа, записанных римскими цифрами. Результат должен выводиться в римской нумерации. Сумма двух чисел не превышает 3000. Контроль корректности входных данных требуется. Если запись входного числа ошибочна, должно выводиться сообщение: «Ошибка ввода».
Правила римской нумерации: I=1, V=5,X=10, C=100,D=500, M=1000. Если меньшая цифра стоит перед большей, то она вычитается. Одна и та же цифра ставится не более трех раз подряд.
Вход: Выход:
CLXXIX CDXX
CCXLI
2000 год
Тетрагон
Козочка Маня любит пастись только в четырехугольных загонах. У пастуха Сени есть четыре жерди разной длины, из которых он собрался построить для Мани загон. Чтобы Мане было просторно, он не хочет укорачивать жерди, и будет скреплять их за самые концы.
Напишите программу, которая по заданным длинам жердей определяла бы, сумеет ли Сеня вообще построить из них загончик.
Вход: Выход:
2.5 2.5 3 10.6 нет
Проблема «2000»
В результате ошибки разработчиков в бухгалтерской программе возникли проблемы с некоторыми целыми числами, оканчивающимися на 2000. Окончание 2000 исчезло из записи тех чисел, которое делится нацело на число, полученного вычеркивание пресловутого окончания, т.е. вычеркиванием из десятичной записи последних четырех цифр. Найти диапазон чисел подверженных этой напасти.
Например: Если в числе 102000 вычеркнуть 2000, то получим 10. 102000:10=10200 (делится нацело).
Входных данных нет. Выходные данные: три числа – наименьшее число, наибольшее число, количество чисел.
Цикл
Если перемножить цифры произвольного двузначного числа, то получится либо снова двузначное, либо однозначное число. Продолжая этот процесс, рано или поздно, получим одну цифру. Напишите программу, которая для заданного двузначного числа определяла бы количество шагов, после которых получится одна цифра. Например: 64 -> 6*4=24-> 2*4=8 (2 шага)
Вход: Выход:
2
2001 год