Программа внеурочной деятельности "Основы программирования"
рабочая программа по информатике и икт (10 класс)
Программа расчина на один учебный год для систематизации знаний обучающихся в области программирования.
Скачать:
Вложение | Размер |
---|---|
vneurochnaya_deyatelnost_programmirovanie.docx | 139.29 КБ |
Предварительный просмотр:
Муниципальное общеобразовательное учреждение
средняя общеобразовательная школа №5
города Лыткарино Московской области
УТВЕРЖДАЮ
директор МОУ СОШ №5
____________ Е.И.Зятева
«01» сентября 2020 г.
Рабочая программа
внеурочной деятельности
«Основы программирования»
для 10 «А» класса
на 2020 – 2021 учебный год
(базовый уровень)
Составитель: Рогова Е.В.
учитель высшей квалификационной категории
2020
- Пояснительная записка.
Требования высших учебных заведений к выпускникам школ существенно возросли и расширились. Это обстоятельство вынуждает особенно тщательно согласовывать разработку программы преподавания предмета информатики в школе с дальнейшим изучением соответствующего материала в вузе.
Поэтому необходимо «Основы программирования» выделить как отдельный курс, изучение которого базируется на современных системах и языках программирования, решении практических задач. Значительное внимание уделяется фундаментальным вопросам технического и технологического обеспечения информатики, логическим и арифметическим основам компьютера.
Цель курса: систематизировать и расширить знания обучающихся в области программивания.
Содержание курса сочетает в себе три существенных сейчас основных подхода в обучении информатики в школе и отражает важнейшие аспекты ее образовательной значимости:
- «пользовательский» аспект, связанный с формированием компьютерной грамотности, информационной культуры, подготовкой школьников к практической деятельности в условиях широкого использования информационных технологий. Такое обучение целесообразно вводить как можно раньше, чтобы учащиеся могли использовать различные доступные их возрасту программные продукты, применяя компьютер в качестве инструмента для своих целей;
- алгоритмический (программистский) аспект, связанный в большей мере с развитием мышления учащихся;
- кибернетический аспект, связанный с формированием мировоззренческих представлений о роли информации в управлении, специфики самоуправляющих систем, общих закономерностях информационных процессов в системах разной природы.
Курс в целом охватывает следующие группы вопросов:
- Вопросы, связанные с пониманием сущности информационных процессов, информационных основ процессов управления в системах различной природы и представлением о передаче информации, канале передачи информации, количестве информации, способах представления информации для формального исполнителя (информационный аспект);
- Методы и средства формализованного описания действий исполнителя (алгоритмический аспект);
- Вопросы, связанные с выбором исполнителя для решения задачи, анализом его свойств, возможностей и эффективности его применения для решения данной задачи;
- Вопросы, связанные с адекватным описанием реальных объектов и явлений для их использования с помощью ЭВМ, проведение компьютерного эксперимента (моделирование).
В процессе обучения заложены следующие необходимые умения и навыки:
- умение планировать структуру действий, необходимых для достижения заданной цели при помощи фиксированного набора средств;
- умение организовывать поиск информации, необходимой для решения поставленной задачи;
- умение строить информационные структуры (модели) для описания объектов и систем;
- технические навыки работы с компьютером и его периферийными устройствами.
Именно при формировании таких навыков и умений можно будет говорить о высокой эффективности использования компьютеров и достижении учащихся не только уровня знаний и умений, заложенных в «Обязательный минимум содержания образования», но и достаточно более высокого уровня, необходимого в дальнейшем обучении.
Курс предлагается для изучения в 10 классе, рассчитан на 34 часа и предусматривает выполнение 7 практических работ по различным темам, а также самостоятельную работу учащихся над проектами.
При изучении языка программирования следует стремиться к использованию формального описания конструкций языка программирования (синтаксис и семантику), а при решении задач использовать только изученные элементы. Это способствует не только глубокому пониманию учебного материала, но и дает возможность использовать изученный материал в дальнейшем.
При обучении программированию следует добиваться определенного стиля оформления текстов программ.
«Программировать трудно. Программировать хорошо – очень трудно. И о том, как нужно правильно программировать пишут много. Но … сколько людей – столько и мнений…», - написал редактор перевода очередной книги «Практика программирования». (Цитата из книги «Программирование на Паскале для начинающих». Для студентов физического факультета /ГОУ ВПО «Кемеровский госуниверситет»; сост. Т. Ю. Павлова. Кемерово, 2007 г.). Однако из всех советов по стилю программирования можно все же выбрать, несомненно, полезные для начинающего программиста, которые можно рекомендовать детям на уроках.
Советы для учащихся.
При написании программы нужно руководствоваться принципом, что написать программу – это не только разработать ее текст, исправить ошибки и заставить ее выполняться достаточно быстро. Нужно написать ее так, чтобы в случае необходимости другой человек или вы сами через некоторое время, могли легко разобраться в этой программе, чтобы модернизировать ее. А программу, написанную хорошо, куда проще понять, чем написанную плохо. Кроме того, культура написания текста позволит создавать программы с меньшим числом ошибок.
Текст программы должен быть прост и понятен, для этого придерживайтесь правил:
- имя переменной или функции должно содержать информацию о ней. Это не просто, так как используется латинский алфавит, но латинскими буквами можно написать русское имя или использовать знакомые английские слова; используйте одни и те же имена для счетчиков цикла (например: i, j).
- форматируйте текст программы. Для этого сдвигайте начало написания части операторов вправо на несколько позиций. Сдвигайте операторы, находящиеся внутри составного оператора begin – end (для языка программирования Pascal), пишите ветвь else под ветвью then в условном операторе и т.п.
- При работе с составными типами данных необходимо их предварительно описывать в разделе type.
- В хорошо написанной программе каждая константа может встречаться только один раз: или в разделе констант, или в начале программы (подпрограммы) для присваивания значения соответствующей переменной.
- Планируемые результаты изучения предмета, курса
Основные понятия о языках программирования
В результате изучения темы выпускник научится:
- отличать компилятор от интерпретатора;
- распознавать основные средства, алфавит языка программирования, служебные слова, структуру программы;
- использовать команду присваивания;
- использовать типы данных, переменные и константы;
- составлять общую характеристику системы программирования.
- составлять простейшие программы с использованием команды присваивания;
- компилировать и отлаживать программу.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Встроенные функции в языки программирования.
В результате изучения темы выпускник научится:
- записывать встроенные функции;
- использовать оператор ввода;
- использовать оператор вывода;
-использовать оператор присваивания;
-использовать оператор комментария;
- использовать блок-схему конструкции «Следование»
В результате изучения темы выпускник получит возможность научится:
Составлять простейшие программы с использованием операторов присваивания, ввода-вывода информации.
Условный оператор.
В результате изучения темы выпускник научится:
- использовать блок-схему полной формы условного оператора, блок-схему сокращенной формы условного оператора, блок-схему вложенного условного оператора, оператора варианта;
- использовать запись условного оператора с помощью языка программирования;
- использовать запись оператора варианта с помощью языка программирования.
- составлять программы с использованием полной и сокращенной формы условного оператора;
- составлять программы с использованием вложенных условных операторов;
- составлять программы, содержащие сложные условия;
- составлять программы с использованием оператора варианта.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Циклы.
В результате изучения темы выпускник научится:- использовать блок-схему цикла с параметром, блок-схему цикла с предусловием, блок-схему цикла с постусловием;
- использовать запись циклов с логическим условием;
- использовать запись циклов с помощью языка программирования.
- программировать задачи с использованием циклов с параметром, с предусловием, с постусловием;
- программировать задачи с использованием циклов с логическим условием;
- программировать задачи с использованием вложенных циклов.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Массивы.
В результате изучения темы выпускник научится:
- применять понятие массива, переменной с индексом, простой переменной;
- применять понятие одномерного массива;
-понимать, как происходит присвоение значений элементам одномерного массива;
-понимать работу датчика случайных чисел;
- применять понятие двумерного массива;
-понимать, как происходит присвоение значений элементам двумерного массива;
- организовывать задание одномерного и двумерного массива;
- подсчитывать сумму, произведение и количество элементов одномерного и двумерного массивов, отвечающих заданным условиям;
- находить максимальный и минимальный элемент одномерного и двумерного массивов;
-осуществлять перестановку элементов одномерного и двумерного массивов;
- осуществлять слияние и отбор данных в одномерных и двумерных массивах;
- осуществлять поиск, подбор и группировку данных;
- осуществлять сортировку элементов массива.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Строковый, символьный типы данных.
В результате изучения темы выпускник научится:
- использовать основные сведения о символьных величинах;
- использовать реализацию символьных величин с помощью языков программирования;
- использовать стандартные функции для работы с символьными величинами: сравнение, конкатенацию, копирование, удаление, замену (вставку), длину строки, подстроку.
- программировать алгоритмы обработки текста;
- программировать задачи на поиск и подсчет (лингвистическая статистика).
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью процедур и функций.
В результате изучения темы выпускник научится:
- использовать понятие подпрограммы;
- использовать понятие процедуры;
- использовать оператор процедуры;
- использовать понятие функции;
-использовать оператор задания функции;
- понимать, как осуществляется обмен между основной программой и подпрограммой;
- использовать понятие глобальной и локальной переменной;
- использовать механизм реализации подпрограммы с помощью процедур и функций.
- уметь программировать задачи с использованием процедур и функций.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Работа с файлами
В результате изучения темы выпускник научится:
-использовать понятие файла: имя, расширение;
- использовать типы файлов;
- использовать операции над файлами;
- использовать файлы с произвольным доступом.
-решать задачи на программирование с использованием файлов.
В результате изучения темы выпускник получит возможность научится:
-программировать простейшие задачи и задачи повышенного уровня сложности .
Содержание учебного предмета, курса.
Основные понятия о языках программирования (2ч).
История появления языков QBASIC и TURBO PASCAL. Языки программирования интерпретирующего и компилирующего типа. Основные средства языка. Алфавит языка. Служебные слова. Структура программы. Переменные и константы. Типы данных. Присваивание. Технология разработки программного обеспечения. Система и языки программирования. Общая характеристика системы программирования. Система оперативной подсказки. Редактор исходного текста. Пример простой программы. Компиляция и отладка программы.
Встроенные функции в языки программирования (4 ч).
Запись на языке QBASIC функций |X|, sin x, Cos x, tg x, целая часть x, x2 и т. д.Операторы INPUT, PRINT. Работа оператора присваивания. Выражение вида N=N+1. Блок-схема конструкции «Следование». Оператор комментария. Набор, отладка и запуск программы в среде программирования QBASIC.
Условный оператор (5 ч).
Блок-схема конструкции «Ветвление». Условный оператор. Служебные слова IF, THEN, ELSE. Работа полного условного оператора. Работа сокращенного условного оператора. Вложенные условные операторы. Блок – схема вложенных условных операторов. Конструкция вложенного условного оператора. Служебные слова IF, THEN, ELSE, END IF. Логические связки AND, OR, NOT. Программирование задач с использованием вложенных условных операторов и сложных условий. Блок-схема оператора варианта. Структура оператора варианта. Служебные слова SELECT, CASE, END SELECT.
Циклы (5 ч).
Блок-схема цикла с предусловием. Тело цикла. Оператор цикла с предусловием. Служебные слова WHILE, WEND. Работа оператора цикла с предусловием. Блок-схема цикла с постусловием. Тело цикла. Оператор цикла с постусловием. Служебные слова DO, LOOP, WHILE, UNTIL. Работа оператора цикла с постусловием. Блок-схема цикла с параметром. Тело цикла. Параметр цикла. Начальное и конечное значение параметра цикла. Шаг цикла. Оператор цикла с параметром. Служебные слова FOR, TO, NEXT. Работа оператора цикла с параметром. Конструкция вложенных циклов. Конструкция сочетания цикла и условного оператора.
Массивы (7 ч).
Понятие массива. Понятие индекса. Переменная с индексом. Простая переменная. Одномерные массивы. Описание массива: DIM имя массива (n1 TO n2) AS тип элементов. Присвоение значений элементам массива. Способы задания одномерных массивов. Понятие матрицы. Двумерные массивы. Нумерация элементов двумерного массива. Способы описания двумерного массива. Способы задания двумерных массивов. Проверка на четность. Подсчет количества элементов, отвечающих заданным условиям. Нахождение суммы, произведения и количества элементов массива, отвечающих заданным условиям. Максимальный и минимальный элементы. Сортировка элементов массива. Метод «пузырька». Оператор SWAP. Перестановка элементов массива. Поиск, подбор и группировка данных. Слияние и отбор данных в одномерных и двумерных массивах.
Строковый, символьный типы данных (4 ч).
Основные сведения о символьных величинах. Стандартные функции, процедуры для работы с символьными величинами: сравнение, конкатенация, копирование, удаление, замена (вставка), длина строки, подстрока числа и строки. Понятие шифровки, дешифровки текста. Способы шифровки текста.
Процедуры и функции. Понятие подпрограмм. Механизм реализации подпрограмм с помощью процедур и функций (3 ч).
Понятие рекурсии. Рекурсивные алгоритмы. Задачи, сводимые к рекурсивным. Понятие подпрограммы, процедуры, функции, Описание процедуры. Оператор SUB. Описание функции. Оператор FUNCTION. Механизм реализации подпрограмм с помощью процедур и функций. Обмен информацией между основной программой и подпрограммой. Глобальные и локальные переменные.
Работа с файлами (3 ч).
Понятие файла. Классификация файлов. Операции над файлами: открытие файла, чтение и запись обрабатываемых данных, закрытие файлов. Файл произвольного доступа. Операторы и функции работы с файлом произвольного доступа.
Повторение. Решение задач. (1 ч).
Календарно - тематическое планирование.
№ урока | Дата проведения | Содержание учебного материала | Кол-во часов |
1-2 | 07.09, 14.09 | Основные понятия о языках программирования (2 ч).
Цели: дать основные сведения о языках программирования, средствах языков, структуре программ. Краткий обзор теоретического материала. История создания языков программирования Бейсик и Паскаль. Система и языки программирования. Технология разработки программного обеспечения. Общая характеристика системы программирования. Основные средства языка программирования. Алфавит языка. Служебные слова. Структура программы. Система оперативной подсказки. Редактор исходного текста. Пример простой программы. Компиляция и отладка программы. Примеры возможных заданий. Подготовить ответы на вопросы:
Цели: дать основные сведения о константах, переменных; познакомить учащихся с различными типами данных. Краткий обзор теоретического материала. Понятие переменной. Переменные числового типа: целые, длинные целые, обычной точности, двойной точности; переменные символьного типа: строка переменной длины, строка фиксированной длины; переменные пользовательского типа. Понятие константы. Примеры возможных заданий. Подготовить ответы на вопросы:
| 1 1 |
3-6 | 21.09 28.09 05.10 12.10 | Встроенные функции в языки программирования. Простейшие операторы языка (4 ч)
Цели: дать представления о встроенных функциях; научить учащихся использовать встроенные функции при записи математических выражений на языке программирования QBASIC. Краткий обзор теоретического материала. Запись на языке QBASIC функций |X|, sin x, Cos x, tg x, целая часть x, x2 и т. д. Примеры возможных заданий. Записать на языке QBASIC следующие выражения:
Сделать математическую запись следующих выражений:
Цели: познакомить учащихся с операторами ввода – вывода информации, оператором присваивания; программировать простейшие задачи с использованием операторов ввода – вывода и присваивания. Краткий обзор теоретического материала. Операторы INPUT, PRINT. Работа оператора присваивания. Выражение вида N=N+1. Блок-схема конструкции «Следование» Примеры возможных заданий.
Цели: отрабатывать навыки написания программ в среде программирования QBASIC, навыки работы с функциональными клавишами среды QBASIC. Краткий обзор теоретического материала. Оператор комментария. Набор, отладка и запуск программы в среде программирования QBASIC. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 1 |
7-11 | 19.10 02.11 09.11 16.11 23.11 | Условный оператор (5 ч).
Цели: познакомить учащихся с полной и сокращенной формой условного оператора. Рассмотреть типы задач, для которых лучше использовать полную и для которых – неполную форму ветвления. Краткий обзор теоретического материала. Блок-схема конструкции «Ветвление». Условный оператор. Служебные слова IF, THEN, ELSE. Работа полного условного оператора. Работа сокращенного условного оператора. Примеры возможных заданий.
F = 5 : D = 7 IF F>=D THEN X = F ELSE X = D
Цели: познакомить учащихся с использованием вложенных условных операторов и сложных (логических) условий при программировании различных задач. Краткий обзор теоретического материала. Вложенные условные операторы. Блок – схема вложенных условных операторов. Конструкция вложенного условного оператора. Служебные слова IF, THEN, ELSE, END IF. Логические связки AND, OR, NOT. Программирование задач с использованием вложенных условных операторов и сложных условий. Примеры возможных заданий.
A = 53 : B = 14 : C = 2 IF A>=B THEN IF A>=C THEN X = A-B-C ELSE X=C-A-B END IF ELSE X=B-A END IF
y -2 I 0 x -3
I
Цели: познакомить учащихся с использованием оператора выбора (варианта) при программировании различных задач. Краткий обзор теоретического материала. Блок-схема оператора варианта. Структура оператора варианта. Служебные слова SELECT, CASE, END SELECT. Примеры возможных заданий.
Цели: программировать различные задачи с использованием условного оператора. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 1 1 |
12-16 | 30.11 07.12 14.12 21.12 28.12 | Циклы (5 ч).
Цели: познакомить учащихся с циклом с предусловием, алгоритмом его работы; программировать задачи с использованием цикла с предусловием. Краткий обзор теоретического материала. Блок-схема цикла с предусловием. Тело цикла. Оператор цикла с предусловием. Служебные слова WHILE, WEND. Работа оператора цикла с предусловием. Примеры возможных заданий.
Цели: познакомить учащихся с циклом с постусловием, алгоритмом его работы; программировать задачи с использованием цикла с постусловием. Краткий обзор теоретического материала. Блок-схема цикла с постусловием. Тело цикла. Оператор цикла с постусловием. Служебные слова DO, LOOP, WHILE, UNTIL. Работа оператора цикла с постусловием. Примеры возможных заданий.
Цели: познакомить учащихся с циклом с параметром, алгоритмом его работы; программировать задачи с использованием цикла с параметром. Краткий обзор теоретического материала. Блок-схема цикла с параметром. Тело цикла. Параметр цикла. Начальное и конечное значение параметра цикла. Шаг цикла. Оператор цикла с параметром. Служебные слова FOR, TO, NEXT. Работа оператора цикла с параметром. Примеры возможных заданий. Вычислить:
Цели: дать понятие о вложенных циклах и особенностях их выполнения, научить программировать задачи с использованием вложенных циклов, задачи на сочетание цикла и условного оператора. Краткий обзор теоретического материала. Конструкция вложенных циклов. Конструкция сочетания цикла и условного оператора. Примеры возможных заданий.
1k + 2k + … + nk.
Смотрите приложение. | 1 1 1 1 1 |
17-23 | 11.01 18.01 25.01 01.02 08.02 15.02 22.02 | Массивы (7 ч).
Цели: познакомить учащихся с понятием одномерного массива, рассмотреть способы задания одномерных массивов; учить программировать задачи с использованием одномерных массивов. Краткий обзор теоретического материала. Понятие массива. Понятие индекса. Переменная с индексом. Простая переменная. Одномерные массивы. Описание массива: DIM имя массива (n1 TO n2) AS тип элементов. Присвоение значений элементам массива. Способы задания одномерных массивов. Примеры возможных заданий.
Двумерные массивы. Цели: познакомить учащихся с понятием двумерного массива, рассмотреть способы задания двумерных массивов; учить программировать задачи с использованием двумерных массивов. Краткий обзор теоретического материала. Понятие матрицы. Двумерные массивы. Нумерация элементов двумерного массива. Способы описания двумерного массива. Способы задания двумерных массивов. Примеры возможных заданий.
1 2 3 4 5 10 9 8 7 6 11 12 13 14 15 20 19 18 17 16 21 22 23 24 25 ).
Цели: программировать задачи на поиск экстремальных значений величин в одномерных и двумерных массивах чисел. Краткий обзор теоретического материала. Проверка на четность. Подсчет количества элементов, отвечающих заданным условиям. Нахождение суммы, произведения и количества элементов массива, отвечающих заданным условиям. Максимальный и минимальный элементы. Примеры возможных заданий.
Цели: программировать задачи, на перестановку и сортировку элементов массива. Краткий обзор теоретического материала. Сортировка элементов массива. Метод «пузырька». Оператор SWAP. Перестановка элементов массива. Примеры возможных заданий.
Цели: программировать задачи на слияние и отбор данных (по определенному условию) в одномерных и двумерных массивах чисел. Краткий обзор теоретического материала. Слияние и отбор данных в одномерных и двумерных массивах. Примеры возможных заданий.
Цели: программировать задачи на поиск, подбор и группировку данных (по определенному условию) в одномерных и двумерных массивах чисел. Краткий обзор теоретического материала. Поиск, подбор и группировка данных. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 1 1 1 1 |
24-27 | 01.03 08.03 15.03 22.03 | Строковый, символьный тип данных (4 ч).
Цели: познакомить учащихся с основными сведениями о строковом, символьном типе данных, с операциями над символьными величинами. Краткий обзор теоретического материала. Основные сведения о символьных величинах. Стандартные функции, процедуры для работы с символьными величинами: сравнение, конкатенация, копирование, удаление, замена (вставка), длина строки, подстрока числа и строки. Примеры возможных заданий.
Цели: программировать задачи на поиск и замену элементов в символьных строках и массивах. Краткий обзор теоретического материала. Удаление, замена (вставка), длина строки, подстрока числа и строки. Примеры возможных заданий.
Цели: программировать задачи на обработку, шифровку и дешифровку текста. Краткий обзор теоретического материала. Понятие шифровки, дешифровки текста. Способы шифровки текста. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 1 |
28-30 | 05.04 12.04 19.04 | Подпрограммы (3 ч).
Цели: дать учащимся представление о подпрограммах и возможностях их использования. Показать на примерах механизм реализации подпрограмм с помощью процедур и функций. Краткий обзор теоретического материала. Понятие подпрограммы, процедуры, функции, Описание процедуры. Оператор SUB. Описание функции. Оператор FUNCTION. Механизм реализации подпрограмм с помощью процедур и функций. Обмен информацией между основной программой и подпрограммой. Глобальные и локальные переменные. Примеры возможных заданий.
Цели: дать учащимся представление о рекурсии и возможностях ее использования. Краткий обзор теоретического материала. Понятие рекурсии. Рекурсивные алгоритмы. Задачи, сводимые к рекурсивным. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 |
31-33 | 26.04 03.05 10.05 | Работа с файлами (3 ч).
Цели: дать учащимся основные сведения о файлах и их классификации; познакомить с операциями над файлами; программировать задачи с использованием файлов. Краткий обзор теоретического материала. Понятие файла. Классификация файлов. Операции над файлами: открытие файла, чтение и запись обрабатываемых данных, закрытие файлов. Примеры возможных заданий.
Цели: дать учащимся основные сведения о процедурах и функциях работы с файлами; программировать задачи с использованием файлов. Краткий обзор теоретического материала. Файл произвольного доступа. Операторы и функции работы с файлом произвольного доступа. Примеры возможных заданий.
Смотрите приложение. | 1 1 1 |
34 | 17.05 | Повторение, решение задач (1 ч). Цели: повторить основные разделы программирования; решать задачи. Примечание. На данном уроке можно разобрать олимпиадные задачи по программированию. Примеры возможных заданий.
Составить программу зашифровки и расшифровки русского текста шифром Цезаря.
Пусть заданы два различных члена этой последовательности f i и fj с соответствующими номерами i и j, а также некое целое число n. Необходимо восстановить элемент этой последовательности fn, соответствующий номеру n.
Определить, существует ли хотя бы одна ломанная, соответствующая данным, записанным мальчиком 1<=n<=15 3<=m<=20 | 1 |
ИТОГО | 34 |
Организация текущего и промежуточного контроля знаний.
Творческие проекты (отчеты).
№ | Название |
1 | Творческий проект (отчет) по теме «История языков программирования». |
2 | Творческий проект (отчет) «Угадай пословицу». Цель. С помощью известных алгоритмических конструкций и изученных операторов языка закодировать русские народные пословицы. |
3 | Творческий проект (отчет) одной задачи. Например, творческий проект (отчет) «Нахождение наибольшей из трех величин». Цель. Привести несколько способов решения одной задачи (используя последовательные условные операторы, используя логические условные операторы, используя оператор безусловного перехода и др.) |
Практические работы.
№ | Название |
1 | Практическая работа №1 «Составление простейших программ». |
2 | Практическая работа №2 «Ветвление». |
3 | Практическая работа №3 «Циклы». |
4 | Практическая работа №4 «Массивы». |
5 | Практическая работа №5 «Обработка текста» |
6 | Практическая работа №6 «Подпрограммы» |
7 | Практическая работа №7 «Работа с файлами». |
Рекомендации для проведения практической работы.
Каждая практическая работа состоит из двух частей: теоретической и практической.
Теоретическая часть включает в себя пример разобранной задачи в изучаемом языке программирования и вопросы по данной теме, на которые ученик должен ответить, тем самым повторив основные моменты темы.
При выполнении практической части учащимся предлагается решить одну или несколько (по желанию) разноуровневых задач. Уровень 1 соответствует оценке «3», уровень 2 соответствует оценке «4», уровень 3 соответствует оценке «5».
Список рекомендуемой литературы
- Чернов А.А. Информатика. Конспекты уроков. 9-11 классы. Практикум по программированию. Волгоград: Учитель, 2006г.
- В.С.Новичков, А.Н.Пылькин. Начала программирования на языке QBASIC.М.: Горячая линия-Телеком, 2007 год.
- Златопольский Д.М. Я иду на урок информатики. Задачи по программированию. 7-11 классы. Москва «1сентября», 2001 год.
- Босова Л.Л., Розова В.М., Семенова Е.Е. Разноуровневые дидактические материалы по информатике. Москва «Образование и информатика», 2001 год.
- Житкова О.А., Кудрявцева Е.К. Тематический контроль по информатике. Бейсик и Паскаль в вопросах и задачах. Рабочая тетрадь 1, 2. «Интеллект – центр» Москва, 2002 г.
- Турчак Л.И. Основы численных методов: Учеб. пособие.- М.: Наука; Гл. ред. физ.-мат. лит., 1987.- 320 с.
- Мудров А.Е. Численные методы для ПЭВМ на языках Бейсик, Фортран и Паскаль.- Томск: МП “Раско”, 1991.- 272 с.
- Тынкевич М.А. Численные методы анализа: Учеб. пособие.- Кемерово, 1997.- 123 с.
- Абрамов С.А. Гнездилов Г.Г. и др. «Задачи по программированию». М.: НАУКА,1988г.
- Филиппов С.В. «Занимательный Бейсик», М.: Издательство ЭКОНОМ, 1998 г.
- Мельникова О.И. Бенюшкина А.Ю. «Начала программирования на языке «Бейсик» для персональных ЭВМ»
- Зельдер Г.А. «Программируем на языке QUICK BASIC 4.5», М.: ABF, 1997г.
Приложение.
Практическая работа №1.
Составление простейших программ.
Цель. Программировать задачи с использованием операторов ввода, вывода и присваивания.
1. Пример. Составить программу вычисления площади круга по известному радиусу.
QBASIC PASCAL
INPUT «Ведите радиус круга R»; R program pl;
S=3.14*R^2 const k=3.14;
PRINT «Площадь круга равна»; S var r,s:real;
begin
readln(r);
s:=k*sqr(r);
writeln(s);
end.
2.Вопросы.
- Как оформляется оператор вывода на экран?
- Что можно указать в качестве элементов списка вывода? Какой символ используется для разделения элементов списка вывода?
- Что будет выведено на экран, если в списке вывода записано:
- Число;
- Имя величины;
- Текст в кавычках;
- Арифметическое выражение?
- Как оформляется оператор ввода?
- Что можно указать в качестве элементов списка ввода?
- Как работает оператор ввода (что происходит при его выполнении)?
- Как оформляется оператор присваивания? Как он работает (что происходит при его выполнении)?
- Указать значения величин A и B после выполнения следующих операторов присваивания:
A=0
B=-9.99
B=A
A=b
- Записать по правилам изучаемого языка программирования:
- 5cosy
- -5+
- sinαcosβ+cosαsinβ
- mv2+ex
3.Выполните индивидуальное задание.
Индивидуальные задания.
Уровень 1.
- Длины сторон прямоугольника равны А и В. Найдите его площадь, периметр, длину диагонали.
- Градусная мера угла равна G, найдите его радианную меру R.
- Вычислить и напечатать дискриминант квадратного уравнения.
- Найти площадь кольца, если его толщина Т - см, а диаметр внутреннего круга – R см.
- Даны радиус основания цилиндра и высота цилиндра. Написать программу вычисления площади боковой поверхности и площади полной поверхности цилиндра.
- Написать программу вычисления площади трапеции, если известны длины ее оснований и высота.
- Составить программу вычисления значения функции y=7x2 - 3x + 6 при любом значении x.
- Составить программу вычисления значения функции x=12a2 + 7a - 16 при любом значении a.
- Даны катеты прямоугольного треугольника. Найти его периметр.
- Даны основания и высота равнобедренной трапеции. Найти ее периметр.
- Дан радиус окружности. Найти длину окружности и площадь круга.
- Дана длина ребра куба. Найти объем куба и площадь его боковой поверхности.
Уровень 2.
- По известному периметру равностороннего треугольника определить его площадь.
- По известным диагоналям ромба вычислить и напечатать его периметр.
- Даны периметр основания правильной пирамиды, и высота ее боковой грани. Написать программу вычисления площади боковой поверхности правильной пирамиды.
- Вычислить значение выражения, предварительно задав значения x, y. (sinx)-3y2
- Вычислить значение выражения, предварительно задав значения переменных:
- Вычислить значение выражения, предварительно задав значения переменных:
- Вычислить значение выражения, предварительно задав значение x: y=2sin3x + 4cos().
- Известны объем и масса тела. Определить плотность материала этого тела.
- Даны два целых числа. Найдите их среднее арифметическое и среднее геометрическое.
- Даны два числа. Найти среднее арифметическое и среднее геометрическое их модулей.
- Даны длины сторон прямоугольника. Найти его периметр и длину диагонали.
Уровень 3.
- Дано расстояние в сантиметрах. Найти число полных метров в нем.
- Дана масса в килограммах. Найти число полных центнеров в нем.
- Дана масса в килограммах. Найти число полных тонн в ней.
- Дано расстояние в метрах. Найти число полных километров в нем.
- Даны два числа. Найти их сумму, разность, произведение, а также частное от деления первого числа на второе.
- Даны длины сторон прямоугольного параллелепипеда. Найти его объем и площадь боковой поверхности.
- Известны координаты двух точек на плоскости. Составить программу вычисления расстояния между ними.
- Даны основания трапеции и угол при большем основании. Найти площадь трапеции.
- Составить программу обмена значениями двух переменных величин.
- Составить программу обмена значениями трех переменных величин a,b,c по следующей схеме:
- B присвоить значение c, a присвоить значение b, c присвоить значение a.
- Составить программу обмена значениями трех переменных величин a,b,c по следующей схеме:
- B присвоить значение a, c присвоить значение b, a присвоить значение c.
Практическая работа №2.
Ветвление.
Цель. Программировать задачи с использованием операторов условного и безусловного перехода.
1.Пример. Составить программу вычисления значения функции по формуле
, если х≥0
Y= х2, если х<0
QBASIC PASCAL
INPUT “Введите численное значение Х”; X program fn;
IF X>=0 THEN Y=SQR(X) ELSE Y=X^2 var x,y: real;
PRINT “Значение функции равно”;Y begin
readln(x);
if x>0 then begin
y:=sqrt(x);
write(y);
end;
else begin
y:=sqr(x);
write(y);
end;
end.
2.Вопросы.
- Какие виды операторов условного перехода вы знаете?
- В каких случаях в программе используется полный оператор условного перехода? Как он оформляется? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- В каких случаях используют неполный оператор условного перехода? Как он оформляется? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- В каких случаях в программе используется вложенный условный оператор? Как он оформляется?
- В каких случаях в программе используется оператор варианта (выбора)? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- Исправить ошибки.
QBASIC PASCAL
INPUT A,B,C
D:=A+B+C program fn;
IF D>0 THEN PRINT : GOTO 50
PRINT “√D= ”;D begin
d=a+b+c
if d>0 then
writeln(√d);
else
write(“d=”);d
end.
3. Выполните индивидуальное задание.
Индивидуальные задания.
Уровень 1.
- Увеличить число Х на 10, если оно положительное, во всех остальных случаях уменьшить его на 10.
- Увеличить число Х на 5, если оно положительное.
- Написать программу, определяющую, является ли произвольное целое число Х четным.
- Написать программу, определяющую, является ли целое число N делителем целого числа Х.
Написать программу, вычисляющую значение функции Y = .для произвольных значений аргументов.
- Написать программу, определяющую, как соотносятся между собой два произвольных числа А и В.
- Написать программу, определяющую по длинам сторон А,В и С, является ли треугольник равнобедренным.
- Группу детей, приехавших в лагерь отдыха, распределяют по отрядам в соответствии с возрастом:
С 6 до 7 лет – 1 отряд;
С 7 до 9 лет – 2 отряд;
С 9 до 11 лет – 3 отряд;
С 11 до 13 лет - 4 отряд;
С 13 до 15 лет – 5 отряд.
Написать программу, которая позволяет каждому приехавшему самому определить свой отряд. Продумать сообщение в случае, когда приехавшие по возрасту не подходят ни в один из отрядов: малыши (< 6 лет) и взрослые (> 15 лет).
- Решить квадратное уравнение ax2+bx+c=0.
Уровень 2.
- Даны радиус круга и сторона квадрата. У какой фигуры площадь больше?
- Даны две точки в прямоугольной системе координат. Написать программу, определяющую, которая из точек находится ближе к началу координат.
- Даны два различных вещественных числа А и В. Написать программу возведения наименьшего из чисел в квадрат, наибольшего - в куб и нахождения среднего арифметического полученных значений.
- Ракета запускается из точки на экваторе Земли в космос со скоростью v км/ч в направлении движения Земли. Каков будет результат этого запуска в зависимости от скорости v?
- Даны три вещественные переменные А, В, С. Написать программу, определяющую среднее геометрическое этих переменных, если все они отличны от нуля, и их среднее арифметическое в противном случае.
- Дана окружность радиуса R с центром в начале координат. Написать программу, определяющую, лежит ли точка с координатами (X,Y) внутри окружности, на окружности или вне окружности.
- Написать программу, определяющую положение точки относительно прямой y=ax+b.
- За весну Обломов похудел на p1 %, за лето поправился на p2%, за осень похудел на p3%, за зиму поправился на p4%. Написать программу, определяющую, похудел или поправился за год Обломов.
- Для произвольного числа А написать программу, возводящую его в квадрат, если число отрицательное; извлекающую из числа А квадратный корень, если положительное; оставляющую А без изменения, если А=0.
- Фирма осуществляет набор сотрудников. Условия приема требуют не менее 3 лет рабочего стажа и возраст не более 35 лет. Написать программу, проверяющую, удовлетворяет ли кандидат этим требованиям.
- Написать программу, выводящую на экран компьютера сообщение «Да», если точка Х принадлежит отрезку [А; В], и «Нет» в противном случае.
- Решить квадратное уравнение ax2+bx+c=0.
Уровень 3.
- Составить программу для вычисления значения функции
-1, если х< -1,
Y= x, если х<1,
1, если х=1.
- Составить программу для вычисления значения функции Z(a)
1, если a> 0,
Z= 0, если a=0,
-1, если a<0.
- Составить программу для вычисления значения функции f(x)
0, если х≤0,
f= x, если 0<х≤1,
x2, в остальных случаях.
- Составить программу для вычисления значения функции f(y)
2, если y>2,
f= 0, если 0
-3y, в остальных случаях.
- Написать программу нахождения максимального из трех величин.
- Написать программу нахождения минимального их трех величин.
- Составить программу нахождения суммы двух наибольших из трех различных чисел.
- Составить программу нахождения произведения двух наименьших из трех различных чисел.
- Даны три тройки вещественных чисел. В каждой тройке все числа различные. Найти среднее арифметическое средних чисел каждой тройки (средним назовем такое число в тройке, которое больше наименьшего из чисел данной тройки, но меньше наибольшего).
- Даны четыре целых числа. Определить, сколько из них четных.
- Даны четыре вещественных числа. Определить, сумму тех чисел, которые больше пяти.
- Даны четыре вещественных числа. Определить, сколько из них отрицательных.
- Даны четыре целых числа. Найти произведение чисел, отличных от нуля.
Практическая работа №3.
Циклы.
Цели. Программировать задачи с использованием повторений (циклов).
1.Пример. Составить программу вычисления суммы натуральных четных чисел от 2 до 30.
QBASIC PASCAL
S=0 program summa;
FOR I=2 TO 30 STEP 2 var s,i: integer;
S=S+I begin
NEXT I s:=0;
PRINT S for i:=2 to 30 step 2 do
s:=s+i;
writeln(‘s=’,s);
end.
2.Вопросы.
- В каких случаях используется оператор цикла с параметром? Как он оформляется? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- Что такое тело цикла?
- Может ли тело цикла с параметром не выполняться ни разу?
- Как должен быть оформлен оператор цикла с параметром, чтобы тело цикла выполнялось при уменьшающихся значениях параметра цикла? Как он будет работать (что будет происходить при его выполнении)? Нарисовать графическую схему выполнения.
- Можно ли в теле цикла с параметром не использовать величину – параметр цикла?
- В программировании существует правило: нельзя изменять параметр цикла в теле цикла. Приведите примеры, когда изменение параметра цикла приводит к его бесконечному выполнению.
- В каких случаях используются операторы цикла с условием?
- В каких случаях используется оператор цикла с предусловием? Как он оформляется? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- Может ли тело оператора цикла с предусловием:
А) не выполняться ни разу;
Б) выполняться бесконечное число раз (или до тех пор, когда пользователь прервет его выполнение)?
- В каких случаях используется оператор цикла с постусловием? Как он оформляется? Как он работает (что происходит при его выполнении)? Нарисовать графическую схему выполнения.
- Может ли тело оператора цикла с постусловием:
А) не выполняться ни разу;
Б) выполняться бесконечное число раз (или до тех пор, когда пользователь прервет его выполнение)?
- Всегда ли можно вместо оператора цикла с параметром использовать оператор цикла с предусловием? А наоборот?
- Всегда ли можно вместо оператора цикла с параметром использовать оператор цикла с постусловием? А наоборот?
- В программе написан бесконечный цикл с условием (с предусловием или постусловием).
Индивидуальные задания.
Циклы.
1 уровень.
- Составить программу для вычисления суммы квадратов первых 100 членов натурального ряда.
- Составить программу, вычисляющую факториал числа.
- Составить программу, которая вычисляет сумму N членов арифметической прогрессии по первому члену прогрессии и ее разности (знаменателю);
- Население города N увеличивается на 3% ежегодно. В текущем году оно составляет 40000 человек. Вывести предполагаемую численность населения города в каждый из ближайших 5 лет.
- Составить программу, которая вычисляет сумму N членов арифметической прогрессии по любым двум последовательным членам прогрессии, номера которых известны.
- Каждый будний день недели рыбак ходил ловить рыбу. Сколько он поймал в среднем рыб, если известен ежедневный улов?
- Напечатать ряд из повторяющихся чисел 20 в виде: 2020202020202020202020202020.
- Напечатать «столбиком» все целые числа от 20 до 35.
- Напечатать «столбиком» квадраты всех целых чисел от 10 до с (значение с вводится с клавиатуры; с≥10).
- Напечатать «столбиком» третьи степени всех целых чисел от с до 50 (значение с вводится с клавиатуры; с≤50).
- Напечатать «столбиком» все целые числа от а до с (значение а и с вводится с клавиатуры; с≥а).
- Напечатать числа следующим образом
- 10.4
- 11.4
- 12.4
…
25 25.4
Уровень 2.
- Написать программу, которая распечатывает любой из столбиков таблицы умножения.
- Составить программу, вычисляющую сумму N членов арифметической прогрессии по любым двум ее членам, номера которых известны.
- Составить программу, вычисляющую сумму N членов арифметической прогрессии по любому члену прогрессии, номер которого известен, и разности (знаменателю) прогрессии.
- Каждая бактерия делится на две в течение 1 минуты. В начальный момент имеется 1 бактерия. Сколько их станет через 10 минут?
- Одна штука некоторого товара стоит 20,4 руб. Напечатать таблицу стоимости 2, 3, …, 20 штук этого товара.
- Напечатать таблицу соответствия между весом в фунтах и весом в килограммах для значений 1, 2, …,10 фунтов (1фунт = 453 г).
- Напечатать таблицу соответствия расстояний в дюймах расстояниям в сантиметрах для значений 10, 11, …, 22 дюйма (1дюйм =25,4 мм).
- Считая, что Земля - идеальная сфера с радиусом 6350 км, определить расстояние до линии горизонта от точки с высотой над Землей, равной 1, 2, …, 10км.
- Напечатать таблицу перевода 1, 2, …, 20 долларов США в рубли по текущему курсу (значение курса вводится с клавиатуры).
- Вывести «столбиком» значения sin0,1, sin0,2, …, sin1,1.
- Вывести «столбиком» значения , , …, .
- Напечатать таблицу стоимости 50, 100, 150, …, 1000 г сыра (стоимость 1кг сыра вводится с клавиатуры).
- Напечатать таблицу стоимости 100, 200, …, 1000 г конфет (стоимость 1кг конфет вводится с клавиатуры).
- Вывести «столбиком» следующие числа: 2,1, 2,2, 2,3, …, 2,8.
Уровень 3.
- В течение двух недель человек заключает пари на скачках. В первый день он делает ставку в 1 фунт и проигрывает. Во второй день, чтобы возместить свой проигрыш, он делает ставку в 2 фунта, однако снова проигрывает. На третий день он ставит 3 фунта, но опять проигрывает. Он упрямо продолжает увеличивать на 1 фунт свою ставку, но продолжает проигрывать. Написать программу, выводящую на экран сумму денег, проигранную этим человеком к концу второй недели.
- В текущем месяце бригада в каждый последующий день работы выпускала на три изделия больше, чем в предыдущий. В первый день было выпущено 42 изделия, что составляло 67% дневной нормы. В месяце 26 рабочих дней. Сумеет ли бригада выполнить месячную норму?
- Приближенно можно считать, что скорость охлаждения горячего чая, налитого в стакан, пропорциональна разности между его температурой и температурой воздуха – за 1 минуту температура снижается на 3% от разности этих температур. Составить программу, реализующую эти вычисления и выводящую на экран температуру чая по истечении каждого из N промежутков времени по 1 минуте каждый. Начальная температура воздуха – 200С, начальная температура чая – 1000С.
- Резервуар наполнен 100л водного раствора, содержащего 5 кг растворенного сахара. Приток воды в сосуд составляет 6 л в минуту, а расход смеси из сосуда – 5л в минуту. Концентрация поддерживается равномерной по средствам помешивания. Написать программу, определяющую количество сахара, которое будет содержаться в резервуаре через 10 минут.
- В некотором году (назовем его условно первым) на участке в 100 гектаров средняя урожайность ячменя составила 20 центнеров с гектара. После этого каждый год площадь участка увеличивалась на 5%, а средняя урожайность - на 2%. Определить:
- урожайность за второй , третий, …, восьмой год;
- площадь участка в четвертый, пятый, …, седьмой год;
- какой урожай будет собран за первые шесть лет.
- Определить суммарный объем в литрах 12 вложенных друг в друга шаров со стенками толщиной 5 мм. Внутренний диаметр внутреннего шара равен 10 см. Принять, что шары вкладываются друг в друга без зазоров.
- Гражданин 1 марта открыл счет в банке, вложив 1000 руб. Через каждый месяц размер вклада увеличивается на 2% от имеющейся суммы. Определить:
- Прирост суммы вклада за первый, второй, …, десятый месяц;
- Сумму вклада через три, четыре, …, двенадцать месяцев.
- Одноклеточная амеба каждые три часа делится на 2 клетки. Определить, сколько клеток будет через 3, 6, 9, …, 24 часа, если первоначально бала одна амеба.
- Вычислить сумму ++…+ (n слагаемых).
- Вычислить сумму ++…+ +
- Известен возраст (количество лет, например, 14,5 лет) каждого ученика двух классов. Определить средний возраст учеников каждого класса. В каждом классе учатся 20 человек.
- Известно количество осадков, выпавших за каждый день января и марта. Определить среднее количество осадков за каждый месяц.
- В области 10 районов. Заданы площади, засеваемые пшеницей (в гектарах), и средняя урожайность (в центнерах с гектара) в каждом районе. Определить количество пшеницы, собранное в области, и среднюю урожайность по области.
- Известны оценки по физике каждого из 20 учеников класса. Определить среднюю оценку по классу.
- Известны оценки ученика по 10 предметам. Определить среднюю оценку.
- Последовательность чисел Фибоначчи образуется так: первый и второй члены последовательности равны 1, каждый следующий равен сумме двух предыдущих (1, 1, 2, 3, 5, 8, 13, …). Дано натуральное число n (n≥3).
- найти k-й член последовательности Фибоначчи.
- получить первые n членов последовательности Фибоначчи.
Практическая работа №4.
Массивы.
Цели. Программировать задачи с использованием одномерных и двумерных массивов.
1.Пример 1. Найти сумму элементов одномерного массива.
QBASIC PASCAL
INPUT N,K progpam summa;
DIM A(N) var c:=array [1:1000] of integer;
FOR I=1 TO N i,n : integer;
A(I)=INT(2*K*RND(1) – K) s : integer;
PRINT A(I); begin
NEXT I write(‘Введите размер массива’);
S=0 readln(n);
FOR I=1 TO N for i:=1 to n do
S=S+A(I) c[i]:=random(100);
NEXT I s:=0
PRINT “Сумма элементов =”; S for i:=1 to n do
s:=s+c[i];
writeln(‘’,s);
repeat until keypressed;
end.
Пример 2. Найти минимальный элемент двумерного массива.
QBASIC PASCAL
INPUT N,K,M program minimum;
DIM A(N,M) var a:array [1:50;1:50] of integer;
FOR I=1 TO N i, j, n1, n2: integer;
FOR J=1 TO M min: integer;
A(I,J)=INT(2*K*RND(1)-K) begin
PRINT A(I,J); write(‘Сколько строк в массиве?’);
NEXT J read(n1);
PRINT write(‘Сколько столбцов в массиве?’);
NEXT I read(n2);
MIN=A(1,1) randomize;
FOR I=1 TO N for i:=1 to n1 do
FOR J=1 TO M for j:=1 to n2 do
IF A(I,J)
NEXT J a[i,j]:=random(100);
NEXT I clrscr;
PRINT “Минимальный элемент =”; MIN end;
min:=a[1,1];
for i:=1 to n1 do
for j:=1 to n2 do
if a[i,j]
min:=a[i,j[;
writeln;
writeln (‘Минимальный элемент =’);
repeat until keypressed;
end.
2.Вопросы.
- Что такое одномерный массив? Для чего используются одномерные массивы? Как они описываются?
- Как в программе использовать значение конкретного элемента одномерного массива?
- Как называется номер элемента одномерного массива?
- Как можно заполнить одномерный массив?
- Для чего в программах используются двумерные массивы? Как они описываются?
- Сколько индексов характеризуют конкретный элемент двумерного массива?
- Как можно заполнить двумерный массив?
- Какую структуру данных описывает двумерный массив?
- Какой индекс двумерного массива изменяется быстрее при последовательном размещении массива в оперативной памяти?
3.Выполните индивидуальное задание.
Индивидуальные задания.
Уровень 1.
- Найти все элементы массива целых чисел А(20), меньшие 0.
- Найти все элементы массива целых чисел В(к), удовлетворяющие условию: остаток от деления на 5 равен 3.
- Найти все элементы массива целых чисел А(к), большие заданного числа.
- Найти номера элементов массива целых чисел А(50), меньшие заданного числа.
- Найти количество элементов массива целых чисел С(к), меньше заданного числа.
- Найти количество элементов массива целых чисел С(40), больших квадрата первого элемента этого массива. Если таких элементов нет, выдать сообщение «поиск неудачен».
- Найти и выдать на печать номера элементов массива целых чисел В(к), которые больше первого, но меньше 4-го элементов массива. (Если таких элементов нет, выдать сообщение «таких элементов нет»).
- Найти и выдать на печать все элементы линейного массива целых чисел С(к), которые больше среднего арифметического элементов массива и их номера.
- Найти все элементы линейного массива целых чисел В(к), которые делятся на 5 (кратны 5).
- Найти все нечетные элементы массива целых чисел В(к).
- Найти элементы массива целых чисел С(к), которые делятся на 5 и на 8 (одновременно).
- Найти сумму четных элементов массива целых чисел.
- Найти произведение элементов массива целых чисел, которые кратны 9.
- Найти сумму элементов массива вещественных чисел, имеющие нечетные номера.
- Найти сумму наибольшего и наименьшего элементов массива вещественных чисел В(к).
- Найти сумму всех элементов массива целых чисел, удовлетворяющих условию: остаток от деления на 2 равен 3.
Уровень 2.
- В линейном массиве целых чисел В(25) заменить все элементы, меньшие 0, на квадрат этих элементов.
- В линейном массиве вещественных чисел А(к) заменить все элементы, большие 10, на число С.
- В линейном массиве целых чисел В(к) заменить все элементы кратные 5, на их удвоенное значение.
- В линейном массиве целых чисел В(50) заменить все элементы, кратные введенному числу С, на их квадраты.
- В линейном массиве целых чисел В(40) заменить первые 10 элементов по формуле В(к)=В(к)*3.
- В линейном массиве целых чисел А(к) заменить все элементы, большие второго и меньшие пятого, на сумму второго и пятого.
- Переписать линейный массив вещественных чисел В(30) в обратном порядке.
- В линейном массиве целых чисел В(к) поменять местами все четные по номеру элементы с нечетными по номеру элементами.
- Задан массив. Создать два массива, в одном из которых находятся все четные по номеру элементы, в другом нечетные по номеру элементы массива.
- Заданы два массива. Создать один массив, в котором вначале идут четные элементы, затем нечетные.
- Из заданного массива создать три массива, в одном из которых содержатся элементы кратные 2, в другом кратные 5, в третьем оставшиеся элементы.
- Заданы два массива. Создать один массив, в котором все элементы расположены в порядке возрастания.
- В массиве хранится информация о количестве страниц в каждой их 100 книг. Все страницы имеют одинаковую толщину. Определить количество страниц в самой толстой книге.
- В массиве хранится информация о стоимости каждой их 50 марок легковых автомобилей. Определить, сколько стоит самый дорогой автомобиль.
- В массиве хранится информация о стоимости 1 кг 20 видов конфет. Определить, сколько стоят самые дешевые конфеты.
- В массиве хранится информация о росте 25 человек. Определить, на сколько рост самого высокого человека превышает рост самого низкого.
Уровень 3.
- Составить программу, заменяющую значение любого элемента двумерного массива на число А.
- Дан двумерный массив. Вывести на экран элемент, расположенный в правом верхнем и левом нижнем углу массива.
- Дан двумерный массив. Составить программу вывода на экран любого элемента массива, если пользователь задает в какой строке и в каком столбце этот элемент находится.
- Заменить значения всех элементов главной диагонали массива на нулевые.
- Определить сумму элементов главной диагонали массива.
- Дан двумерный массив. Составить программу расчета сумы двух любых элементов третьего столбца массива.
- В двумерном массиве хранится информация о количестве студентов в той или иной группе каждого курса института с первого по пятый (в первой строке – информация о группах первого курса, во второй – второго и т.д.) На каждом курсе имеется 8 групп. Составить программу для расчета общего числа студентов на любом курсе.
- В двумерном массиве хранится информация о зарплате 20 человек за каждый месяц года (первого человека – в первой строке, второго – во второй и т.д.) Составить программу для расчета общей зарплаты, полученной за год любым человеком, информация о зарплате которого представлена в массиве.
- Фирма имеет 10 магазинов. Информация о доходе каждого магазина за каждый месяц года находится в двумерном массиве (первого магазина – в первой строке, второго – во второй и т. д.). Составить программу для расчета среднемесячного дохода любого магазина.
- В зрительном зале 23 ряда, в каждом из них 40 мест (кресел). Информация о проданных билетах хранится в двумерном массиве, номера строк которых соответствуют номерам рядов, а номера столбцов – номерам мест. Если биле6т на то или иное место продан, то соответствующий элемент массива имеет значение 1, в противном случае – 0. Определить имеются ли свободные места в первом ряду.
- Три группы студентов, в каждой из которых 20 человек, в сессию сдавали по 3 экзамена. Сведения об оценках каждой группы хранятся в двумерных массивах. Определить лучшую по средней оценке группу.
Практическая работа №5.
Символьные переменные.
Цель. Работать с текстом в языке программирования.
1.Пример 1. Определить, сколько раз в данном тексте встречается буква «А»
QBASIC PASCAL
INPUT W$ program zadacha;
S=0 var s: string[20];
FOR I=1 TO LEN(W$) i,k: integer;
IF MID$(W$,I,1)=”A” THEN S=S+1 begin
NEXT I writeln(‘Введите слово. Количество символов
PRINT S в нем не должно превышать 20’);
read(s);
k:=0:
for i:=1 to 20 do
if s[i]=’A’ then k:=k+1;
writeln (‘буква А встречается’, k, ‘раз’)
end.
Пример 2. В тексте заменить букву «А» на букву «Я».
QBASIC PASCAL
INPUT W$ program zadacha;
FOR I=1 TO LEN(W$) var s: string[20];
k: string[1];
g: string[1];
IF MID$(W$,I,1)=”A” THEN W$=MID$(W$,1,I-1)+ i:integer;
“Я”+MID$(W$,I+1,LEN(W$)-I) begin
NEXT I writeln(‘Введите слово. Количество
PRINT “НОВОЕ СЛОВО”; W$ символов в нем не должно
превышать 20’);
read(s);
k:=’A’
g:=’Я’
for i:=1 to 20 do
if s[i]=k then s[i]:=g
for i:=1 to 20 do write(s[i])
end.
2.Вопросы.
- Что такое символьная (или строковая) переменная?
- Что собой представляет символьное выражение?
- Какие способы задания текста вы знаете?
- При помощи каких операторов можно задать значения символьных переменных?
- Какие операции определены для символьных переменных?
- Как определить длину строки?
- Какие стандартные функции определены для символьных переменных?
- Что напечатается в результате выполнения программы?
QBASIC PASCAL
A$=”ФУНКЦИЯ” a:=’функция’;
L=LEN(A$)+4 m:=length(a)+4;
PRINT L writeln(m);
3.Выполните индивидуальное задание.
Индивидуальные задания.
Обработка текста.
Уровень 1.
- Составьте программу замены буквы «А» на букву «Б» и наоборот.
- Составьте программу подсчета суммарного числа букв «А» и «Б» в данном тексте.
- Используя функции символьных переменных, написать программу, которая из слова ИНФОРМАТИКА составит слово КИНО.
- Используя функции символьных переменных, написать программу, которая из текста «Я очень хорошая вычислительная машина», получила бы текст «Я хорошая машина».
- Используя функции символьных переменных, написать программу получения из слова ЖЕЛЕЗНОДОРОЖНИК слов ДОНОР, ЖЕЗЛ, КОЛЕНО, КРОКОДИЛ.
- Используя функции символьных переменных, написать программу составления из слов ТЕРРИКОН, ОПЕРА, СЛАЙД слова ТРИОД.
- Используя функции символьных переменных, написать слова, которые можно получить из слова ИНДУСТРИАЛИЗАЦИЯ.
- Используя функции символьных переменных, определить, с какой позиции слово ФОРМА входит в слово ИНФОРМАЦИЯ.
- Дано слово с ошибками: «малако». Исправить в нем ошибки, используя операцию склеивания, вывести на печать правильный вариант.
- Определить, какое из двух исходных слов длиннее и насколько. Полученные результаты вывести на печать.
- Написать программу, подсчитывающую число повторений произвольного символа в заданном предложении.
Уровень 2.
- Составьте программу для замены в данном слове всюду части ДЕТЕКТИВ на часть РОМАН.
- Составьте программу, вычеркивающую все пробелы из данного текста.
- Составьте программу для замены в данном слове всюду части ДОМ на часть РОД.
- Составьте программу, определяющую имеется ли в данном слове часть, равная заданному слову.
- Составьте программу, проверяющую, является ли частью данного слова слово «СОК», ответ должен быть «да» или «нет».
- Написать программу, которая выдает номер позиции заданной строки, в которой первый раз встречается буква Л. Если такой буквы нет, то выдать об этом сообщение.
- Из заданной строки получить новую, выбросив из нее все точки.
- Посчитать все согласные буквы в заданной строке.
- В заданной фразе после каждой буквы «О» вставить сочетание «ОК».
- Написать программу, печатающую количество слов в заданном предложении. Слова разделены одним пробелом.
- Написать программу, определяющую длину самого короткого слова в заданной строке. Слова разделены одним пробелом.
- Написать программу, убирающую все гласные буквы в заданном предложении.
- Написать программу, сравнивающую количество букв «а» с количеством букв «о» в заданном предложении и выводящую соответствующее сообщение на экран.
- Определить, какое из трех исходных слов длиннее. Результат сравнения вывести на печать.
- Задана строка символов. Если ее длина превышает 20, то вывести первые 10 символов в одной строке, а все оставшиеся – в другой. Если длина строки не более 20, то вывести ее без изменения.
- Определить, какое из трех исходных слов больше (идет позже по алфавиту). Результат сравнения вывести на печать.
Уровень 3.
- Составьте программу для определения, является ли данное слово «перевертышем».
- Составьте программу для определения, сколько раз в данном слове встречается часть, равная заданному слову.
- Составьте программу обращения слова.
- Составьте программу для определения, является ли данная буква гласной, согласной или одной из букв Й, Ъ, Ь.
- Составьте программу для замены в данном слове всюду части РОМАН на ДЕТЕКТИВ.
- Составьте программу, определяющую, сколько раз в тексте встречается слово «СО».
- Составьте программу для проверки правописания приставок из- и ис- в словах русского языка.
- Задана строка, содержащая буквы и числа. Найти произведение всех чисел заданной строки.
- Составить алгоритм, подсчитывающий для заданного текста частоты вхождения всех букв русского алфавита.
- Задана фраза. Распечатать все слова этой фразы (в столбик) в алфавитном порядке.
- Определить, сколько цифр содержится в записи произвольного вещественного числа.
- По правилам набора машинописного текста после знаков препинания обязательно ставится один и только один пробел. Не должно быть «лишних» пробелов. Написать программу, редактирующую текст согласно этим правилам.
- В строке записано полное имя (имя, отчество, фамилия). Написать программу, которая на основании этой информации определяет пол человека.
- Дан зашифрованный текст. Известно, что он зашифрован следующим образом: каждые четыре его символа записаны в обратном порядке. Если число символов в тексте не кратно четырем, то последняя группа символов не изменяется. Написать программу расшифровки текста.
- Написать программу, обеспечивающую эффект движущейся строки: введенный с клавиатуры текст движется и постепенно исчезает за левым краем экрана.
Практическая работа №6.
Подпрограммы (процедуры, функции).
Цель. Программировать задачи с использованием подпрограмм, процедур и функций.
- Пример 1. Составить процедуру нахождения максимального из двух действительных чисел, вводимых с клавиатуры. Используйте процедуру для нахождения максимального значения из четырех чисел.
QBASIC PASCAL
DIM A, B, C, D, AS SINGLE uses crt;
SUB maxim (X, Y, S) var a, b, s, c, d: real;
procedure maxim (x, y: real; var s: real);
IF X
END SUB if x
end;
CLS begin
INPUT “a=, b=”; A, B clrscr
INPUT “c=, d=”; C, D writeln(‘a=b=’); readln(a,b);
CALL maxim (A, B, S) writeln(‘c=d=’); readln(c,d);
CALL maxim (C, S, S) maxim(a, b, s);
CALL maxim (D, S, S) maxim(c, s, s);
PRINT “max=”; S maxim(d, s, s);
END writeln (‘max=’, s:3:1);
readln;
end.
- Вопросы.
- Что такое процедура?
- В чем различие между процедурой и функцией?
- Какие виды процедур и функций используются в программах?
- Перечислить несколько стандартных функций и процедур.
- В каких случаях целесообразно использовать нестандартные (определенные в программе) функции и процедуры?
- Что такое формальные параметры функции или процедуры?
- Как в программе выполнить функцию или процедуру?
- Что такое фактические параметры функции или процедуры? Каковы правила их использования?
- Какие преимущества дает использование нестандартных (определенных в программе) функций или процедур?
- Что такое рекурсия?
- Как оформляется рекурсивная процедура или функция?
- Могут ли рекурсивные вызовы функции или процедуры продолжаться бесконечно? Как должна быть оформлена рекурсивная функция или процедура, чтобы количество рекурсивных вызовов было конечным?
- Могут ли в одной программе процедура и функция иметь одинаковые имена?
- Может ли программист дать функции имя sin?
- Выполните индивидуальное задание.
Индивидуальные задания.
Подпрограммы (процедуры, функции).
Уровень 2.
- Рассчитать значение x, определив и использовав необходимую функцию. + +
- Рассчитать значение x, определив и использовав необходимую функцию. + +
- Рассчитать значение x, определив и использовав необходимую функцию. + +
- Рассчитать значение Y, однотипные действия выполняя с использованием соответствующей функции:
Y = +
- Определить значение z = max(a, 2b)*max(2a-b, b), где max(x,y) есть максимальное из чисел x, y. При решении задачи не использовать функцию max.
- Определить значение z = max(a, 2b)*max(2a-b, b), где max(x,y) есть максимальное из чисел x, y. При решении задачи определить и использовать функцию max.
- Составить программу, в результате которой величина А меняется значением с величиной B, а величина C – с величиной D. (Определить процедуру, осуществляющую обмен значениями двух переменных величин).
- Даны стороны двух треугольников. Найти сумму их периметров и сумму их площадей. (Определить процедуру для расчета периметра и площади треугольника по его сторонам).
- Даны основания и высоты двух равнобедренных трапеций. Найти сумму их периметров и сумму их площадей. (Определить процедуру для расчета периметра и площади равнобедренной трапеции по ее основаниям и высоте).
- Найти рекурсивную функцию для вычисления факториала натурального числа n.
- Написать рекурсивную функцию для расчета степени n вещественного числа a (n- натуральное число).
- Написать рекурсивную функцию вычисления суммы цифр натурального числа.
- Написать рекурсивную функцию вычисления количества цифр натурального числа.
- Даны первый член и разность арифметической прогрессии. Написать рекурсивную функцию для нахождения n-го члена прогрессии.
- Даны первый член и разность арифметической прогрессии. Написать рекурсивную функцию для нахождения суммы n первых членов прогрессии.
- Даны первый член и знаменатель геометрической прогрессии. Написать рекурсивную функцию нахождения ее n-го члена.
- Даны первый член и знаменатель геометрической прогрессии. Написать рекурсивную функцию нахождения суммы n первых членов прогрессии.
Уровень 3.
- Найти периметр фигуры ABCD по заданным сторонам AB, AC, DC. (Определить функцию для расчета гипотенузы прямоугольного треугольника по его катетам. ∟BAC = 900, ∟BCD = 900.
- Даны основания и высоты двух равнобедренных трапеций. Найти сумму их периметров. (определить функцию для расчета периметра равнобедренной трапеции по ее основаниям и высоте.)
- Даны три квадратных уравнения
Ax2+Bx+C=0
Bx2+Ax+C=0
Cx2+Ax+B=0.
Сколько из них имеют вещественные корни? (Определить функцию, позволяющую распознавать наличие вещественных корней в квадратном уравнении).
- Найти периметр треугольника, заданного координатами своих вершин. (Определить функцию для расчета длины отрезка по координатам его вершин).
- Даны вещественные числа a, b, c, d, e, f, g. Найти площадь пятиугольника, изображенного на рисунке. (определить функцию для расчета площади треугольника по трем его сторонам).
e d
g
a f
b c
- Даны два предложения. Найти общее количество букв «н» в них. (Определить функцию для расчета количества букв «н» в предложении.
- Составить программу для нахождения общего количества вхождений заданной буквы в трех заданных предложениях. (Определить функцию для расчета количества вхождений некоторой буквы в предложение).
- Даны два предложения. В каком из них доля (в %) вхождений букв «б» больше? (Определить функцию для расчета доли вхождений некоторой буквы в предложение).
- Даны три слова. Выяснить, является ли хоть одно из них палиндромом («перевертышем»), т.е. таким, которое читается одинаково слева направо и справа налево. (Определить функцию, позволяющую распознавать слова-палиндромы).
- Написать рекурсивную процедуру для вывода на экран цифр натурального числа в обратном порядке.
- Написать рекурсивную процедуру для ввода с клавиатуры последовательности чисел и вывода ее на экран в обратном порядке (окончание последовательности – при вводе 0).
- *Написать рекурсивную процедуру перевода натурального числа из десятичной системы счисления в двоичную.
- *Написать рекурсивную процедуру перевода натурального числа из десятичной системы счисления в N - ичную. Значение N в основной программе вводится с клавиатуры (2 ≤ N ≤ 16).
- *Написать рекурсивную функцию, определяющую, является ли заданное натуральное число простым.
- *Написать рекурсивную функцию, определяющую, является ли симметричной часть строки S, начиная с i-го элемента и кончая j-м.
Практическая работа №6.
Работа с файлами.
Цель. Программировать задачи с использованием файлов.
- Пример 1. Создайте файл прямого доступа, элементами которого являются целые случайные числа в диапазоне от -35 до 30. Число элементов в файле нечетно. Установив указатель на первый, средний и последний элемент, считайте данные из файла и найдите их сумму.
QBASIC PASCAL
DEFINT I, M-N, S program fil97;
DEFSTR A uses crt;
CLS var f: file of integer;
A=”d:\fil97.txt” s, n, m, i:integer;
OPEN A FOR RANDOM AS#1 a:string;
LEN=2 begin
RANDOMIZE TIMER clrscr;
INPUT”N=”; N a:=’d:\fil97.txt’;
FOR I=1 TO N assign(f,a); rewrite(f);
M=RND*65-35 randomize;
PRINT M; “ ‘; write(‘n=”); readln(n);
PUT #1, I, M for i:=1 to n do begin
NEXT m:=trunc(random(65))-35;
CLOSE #1 write(m,’ ‘);
PRINT write(f,m);
FOR A FOR RANDOM AS #1 end;
LEN=2 close(f);
MAX=LOF(1)\2 writeln;
PRINT”ЧИСЛО ЗАПИСЕЙ”; MAX assign(f,a);reset(f);
SEEK#1,1:GET#1,,N:PRINT N:S=S+N writeln(‘число записей=’,filesize(f));
SEEK#1,MAX\2+1:GET#1, , N:PRINT N:S=S+N seek(f,0);read(f,n);write(n:4);s:=s+n;
SEEK#1,MAX:GET#1, , N:PRINT N:S=S+N seek(f,filesize(f) div 2); read(f, n);write(n:4);s:=s+n;
CLOSE#1 seek(f,filesize(f) - 1); read(f, n);write(n:4);s:=s+n;
PRINT”S=”;S close(f);
END writeln(‘s=’,s);
readln;
end.
- Вопросы.
- Что такое файл? В чем заключаются возможности текстовых файлов?
- В чем преимущество использования файлов по сравнению с массивами?
- Какие операции можно проводить с файлами?
- Как производится запись в файл?
- Как производится чтение из файла?
- Как получить доступ к элементу файла с заданным номером?
- Как закрыть файл?
- Может ли файл состоять только из одной записи?
- Могут ли в текстовых файлах записи иметь разную длину?
- Какова максимальная длина записи в текстовом файле?
- Можно ли текстовый файл открыть одновременно для чтения и для записи?
- Почему в текстовом файле используется признак конца строки, а в типизированном – нет?
- Если в текстовом файле нет ни одной строки, записан ли в нем признак конца файла?
- Выполните индивидуальное задание.
Индивидуальные задания.
Работа с файлами.
Уровень 1.
- Дан текстовый файл. Посчитать количество строк в нем.
- Дан текстовый файл. Посчитать количество символов в каждой строке.
- Создать текстовый файл и записать в него фразу «Здравствуй, мир!»
- Создать текстовый файл и записать в него 5 одинаковых строк. Записываемая строка вводится с клавиатуры.
- Дан массив строк. Записать их в файл, расположив каждый элемент массива на отдельной строке с сохранением порядка.
- В конец существующего текстового файла записать новую строку с текстом «До свидания, люди!».
- В конец существующего текстового файла записать 3 новые строки текста. Записанные строки вводятся с клавиатуры.
- Имеется текстовый файл, в котором записана одна строка – «Здравствуйте, дорогие ребята». Приписать в конце строки восклицательный знак.
- Создать типизированный файл и записать в него:
- Число 500;
- Число 4,5;
- Слово «Привет».
- Создать типизированный файл и записать в него числа 10, 12, …, 16.
- Создать файл и записать в него:
- 7 целых чисел;
- 4 вещественных числа;
- 5 слов.
Записываемые слова и числа вводятся с клавиатуры.
- Дан массив из двадцати вещественных чисел. Записать все числа массива в типизированный файл в том же порядке.
- Дано предложение. Записать каждый из его символов в файл. Какая структура файла наиболее целесообразна для решения этой задачи?
- Дана последовательность целых чисел, оканчивающаяся нулем. Записать все числа последовательности в типизированный файл.
- В конец существующего типизированного файла записать :
- Число 0;
- Фразу «До свидания!»
- В конец существующего файла записать:
- 6 целых чисел;
- 5 вещественных чисел;
- 4 слова.
Записываемые слова и числа вводятся с клавиатуры.
- Создать типизированный файл, элементами которого являются двенадцать первых членов последовательности Фибоначчи (последовательности, в которой первые два члена равны 1, а каждый следующий равен сумме двух предыдущих.)
Уровень 2.
- В существующем типизированном файле, элементами которого являются числа, изменить на заданное число:
- Первый элемент;
- Пятый элемент;
- k-й элемент;
- последний элемент.
Новые значения вводятся с клавиатуры.
- В существующем типизированном файле, элементами которого являются отдельные слова, изменить на заданное значение:
- Первое слово;
- Третье слово;
- s-е слово;
- последнее слово.
Новые слова вводятся с клавиатуры.
- Имеется типизированный файл с целыми числами. Все его четные элементы заменить нулями. Рассмотреть два варианта:
- Известно, что в существующем файле записаны 13 чисел;
- Размер существующего файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Если слово в записи начинается на букву «к», то заменить ее на «К».
- Имеется типизированный файл с числами. Найти сумму первого и второго чисел файла. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти сумму k-го и q-го чисел файла. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти произведение первого и последнего чисел файла. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти сумму всех чисел файла. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти количество чисел в файле. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти количество чисел в файле не превышающих числа а. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти среднее арифметическое положительных чисел файла. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти первое число, большее числа b. Если такого числа нет, то сообщить об этом. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти максимальное число, имеющееся в файле. Принять, что размер файла неизвестен.
- Имеется типизированный файл с числами. Найти порядковый номер минимального числа в файле. Если таких чисел несколько, то найти номер первого из них. Принять, что размер файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Найти количество слов, начинающихся на букву «м». Размер файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Определить, есть ли в файле слова, начинающиеся на букву «к». В случае положительного ответа напечатать порядковый номер первого из них. Размер файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Получить предложение, составленное из слов, порядковый номер которых четный. Размер файла неизвестен. Размер файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Найти самое длинное слово. Размер файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Найти самое короткое слово. Размер файла неизвестен.
- В типизированном файле записаны название городов и их численность. Увеличить численность каждого города на 5% (количество жителей всегда целое число).
- Имеется текстовый файл. Посчитать количество строк, начинающихся с букв «А» или «а».
- Имеется текстовый файл. Посчитать количество строк, в которых имеется ровно 5 букв «И».
- Имеется текстовый файл. Найти длину самой длинной строки.
- Имеется текстовый файл. Найти номер самой длинной строки. Если таких строк несколько, то найти номер одной из них.
- Имеется текстовый файл. Напечатать самую длинную строку. Если таких строк несколько, то напечатать первую из них.
Уровень 3.
- Имеется типизированный файл с числами. Переписать все числа в другой файл. Размер заданного файла неизвестен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Переписать их в другой файл. Размер заданного файла неизвестен.
- Имеется типизированный файл с целыми числами. Все четные числа записать в другой файл. Размер заданного файла не известен.
- Имеется типизированный файл, элементами которого являются отдельные слова. Записать в другой файл слова, начинающиеся на букву «о» или «а». Размер заданного файла неизвестен.
- Имеется типизированный файл с тридцатью числами. Записать в другой файл числа имеющегося файла в обратном порядке.
- Имеется типизированный файл, элементами которого являются 20 отдельных символов. Записать в другой файл символы имеющегося файла в обратном порядке.
- Имеются два типизированных файла одинакового размера, элементами которых являются числа. Получить третий файл:
- Каждый элемент которого равен сумме соответствующих элементов заданных файлов;
- Каждый элемент которого равен большему из соответствующих элементов заданных файлов.
- Имеются два типизированных файла одинакового размера, элементами которых являются отдельные буквы. Получить третий файл, каждый элемент которого представляет собой сочетание соответствующих букв первого и второго файлов.
- Имеются два типизированных файла одинакового размера, элементами которых являются числа. Получить третий файл, в котором записаны сначала числа из первого файла, а затем – из второго. Порядок следования чисел сохраняется.
- Имеются два типизированных файла одинакового размера, элементами которых являются отдельные буквы. Записать в третий файл все начальные совпадающие элементы имеющихся файлов.
- Имеются типизированный файл, элементами которого являются целые числа. Все четные числа этого файла записать во второй файл, а нечетные - в третий файл. Порядок следования чисел сохраняется.
- Имеется типизированный файл, элементами которого являются отдельные символы. Все цифры этого файла записать во второй файл, а остальные символы – в третий файл. Порядок следования сохраняется.
- Имеются два типизированных файла одинакового размера, элементами которых являются отдельные символы. Переписать с сохранением порядка следования элементы первого файла во второй, а элементы второго файла – в первый. Использовать вспомогательный файл.
- Имеются два типизированных файла одинакового размера, элементами которых являются отдельные символы. Выяснить совпадают ли их элементы. Если нет, то получить номер первого компонента, в котором эти файлы отличаются друг от друга.
- Имеются два отсортированных типизированных файла одинакового размера, элементами которых являются целые числа. Получить новый типизированный файл слиянием двух исходных в отсортированном виде. Алгоритм слияния должен предусматривать, что исходные файлы могут содержать очень большое число записей.
- Имеется текстовый файл. Переписать его строки в другой файл. Порядок строк во втором файле должен:
- Совпадать с порядком строк в заданном файле;
- Быть обратным по отношению к порядку строк в заданном файле.
- Имеется текстовый файл. Переписать его строки в перевернутом виде в другой файл. Порядок строк во втором файле должен:
- Совпадать с порядком строк в заданном файле;
- Быть обратным по отношению к порядку строк в заданном файле.
- Имеется текстовый файл. Получить текст, в котором в конце каждой строки заданного файла добавлен восклицательный знак.
- Имеется текстовый файл. Переписать в другой файл те его строки, в которых имеется более 30 символов.
- Имеется текстовый файл. Переписать в другой файл все его строки с заменой в них символа «0» на символ «1» и наоборот.
- Имеется текстовый файл. Все четные строки этого файла записать во второй файл, а нечетные – в третий. Порядок следования строк сохраняется.
- Имеются два текстовых файла с одинаковым числом строк. Переписать с сохранением порядка следования строки первого файла во второй, а строки второго файла – в первый. Использовать вспомогательный файл.
- Имеются два текстовых файла с одинаковым числом строк. Выяснить, совпадают ли их строки. Если нет, то получить номер первой строки, в которой эти файлы отличаются друг от друга.
- Дан текстовый файл, каждая строка которого представляет собой арифметическое выражение. Для каждой строки проверить сбалансированность открывающих и закрывающих скобок. Вывести на экран порядковый номер и содержимое строк, в которых скобки сбалансированы.
19.
19.
По теме: методические разработки, презентации и конспекты
Программа внеурочной деятельности по общеинтеллектуальному направлению «Творческие задания в среде программирования «Скретч»
Программа внеурочной деятельности по общеинтеллектуальному направлению «Творческие задания в среде программирования «Скретч» Данная программа рассчитана на 68 учебных часов. Целевая а...
Рабочая программа внеурочной деятельности по информатики "Занимательное программирование"
Данная программа разработана для организации внеурочной деятельности учащихся 6 классов.Курс построен таким образом, чтобы помочь учащимся заинтересоваться программированием вообще и найти ответы на в...
Программа внеурочной деятельности "Творческие задания в среде программирования СКРЕТЧ"
Содержание программы курса «Творческие задания в среде программирования СКРЕТЧ» направлено на воспитание интереса к предмету, развитие познавательной сферы школьников, наблюдательности, умения а...
Рабочая программа внеурочной деятельности «Мир программирования. Среда Pascal» 14 -15 лет 1 год обучения
Рабочая программа по внеурочной деятельности "Мир. Программироваиня. Среда Pascal". Включает в себя:Пояснительная записку.Учебно-тематический план.Содержание программы.Методическое обес...
Рабочая программа внеурочной деятельности "Программирование Scratch"
Рабочая программа внеурочной деятельности "Программирование Scratch"...
Рабочая программа внеурочной деятельности «Программирование в среде КуМир»
Программа составлена на основе федерального государственного образовательного стандарта основного общего образования и соответствует требованиям к результатам освоения образовательной программы ...
Рабочая программа внеурочного курса Программирование
Рабочая программа содержит пояснительную записку, программу по программированию; развернутое тематическое планирование с ууд, содержанием урока, оборудованием, деятельностью учащихся....