Раздел 2. Информация и информационные процессы

Тема 2.2. Основные информационные процессы: обработка, хранение, поиск и передача информации. Принципы обработки информации компьютером.

 

Практические занятия: Среда программирования. Тестирование готовой программы. Программная реализация несложного алгоритма. Проведение исследования на основе использования готовой компьютерной модели. – 17 часов.

Практическое занятие № 1 Программирование линейных алгоритмов

 

1. Цель занятия:

- научиться выполнять постановку задачи, разбивать простую задачу на элементарные этапы, научиться записывать, отлаживать и выполнять простую программу средствами системы программирования Turbo Pascal.

 

2. Перечень необходимых средств обучения (оборудование, материалы):

– технические средства обучения: персональные компьютеры, локальная сеть, коммутатор для подключения в сети Internet

 

Используемое программное обеспечение:

- Операционная система Microsoft Windows XP/7

- Язык программирования Free Pascal

- Антивирус Касперского 6.0

 

3. Основные теоретические положения

Для выполнения практической работы рассмотрим следующий пример:

Пример 1

Program My_First_Program;

const

Text = 'Я программирую на Турбо Паскале';

begin

WriteLn(Text);

end.

Прежде всего проанализируем форму представления текста. В программе шесть строк. Строки программы обычно выделяют некоторые смысловые фрагменты текста и могут не связываться с конкретными действиями в программе: расположение текста программы по строкам - дело вкуса программиста, а не требование синтаксиса языка. Ту же программу можно было бы написать, например, так:

Program My_First_Program; const Text =

'Я программирую на Турбо Паскале';begin WriteLn(Text); end.

В отличие от некоторых других языков программирования пробел в языке Турбо Паскаль используется как разделитель отдельных конструкций языка, поэтому программа

PROGRAMMy_First_Program;constText=

'Я программирую на Турбо Паскале';BEGINWriteLn(Text);end.

будет неверной.

В Турбо Паскале игнорируется различие в высоте букв (заглавные или строчные), если только это не связано с текстовыми константами. Начало программы могло бы, например, выглядеть так:

program my_first_program;

Теперь о смысле отдельных строк. Первая строка

Program My_First_Program;

начинается словом Program и содержит объявление имени программы. Слово Program зарезервировано в Турбо Паскале, т.е. не может использоваться ни в каких иных целях, кроме как для объявления имени программы. В Турбо Паскале имеется множество зарезервированных слов (см. гл.З). Любое из них нельзя использовать в качестве идентификатора (имени) какого-либо объекта программы - переменной, константы и т.д. Замечу, что редактор среды Турбо Паскаля обычно выделяет зарезервированные слова цветом. В связи с этим в тексте книги эти слова выделены жирным шрифтом. Поскольку имя программы никак в дальнейшем не используется, требование его объявления кажется излишним. В Турбо Паскале можно опускать объявление имени оператором Program без каких-либо последствий для программы.



В рассматриваемом примере имя My_First_Program есть не что иное, как английская фраза «Моя Первая Программа», но только написанная без пробелов - пробел является разделителем и не может использоваться произвольно (вместо пробелов в идентификаторах разрешается использовать символ подчеркивания).

Первая строка заканчивается особым разделителем - точкой с запятой. Этот разделитель в языке Турбо Паскаль отмечает конец оператора или описания. Использование особого разделителя позволяет располагать несколько операторов на одной строке.

Вторая строка

const

содержит единственное зарезервированное слово const, означающее, что далее будут описаны одна или несколько констант (CONSTants - константы). Константами в языке считаются такие объекты программы, которые не могут изменять своего значения. В отличие от многих других языков программирования, константа в Турбо Паскале может иметь собственное имя, что соответствует принятой в научных и инженерных расчетах практике именования часто используемых констант. Например, со школы мы помним о существовании константы п—3.14159265. При обработке программы имя константы pi будет заменяться компилятором на ее значение.Описать константу в Турбо Паскале - значит указать ее имя и значение. Такое указание содержится в третьей строке

Text = 'Я программирую на Турбо Паскале';

в которой константе с именем Text присваивается в качестве значения строка символов «Я программирую на Турбо Паскале».

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

Text = 'Турбо' 'Паскаль';

создаст константу со значением

Турбо'Паскаль

Все три первые строки не связаны с какими-либо конкретными действиями при работе программы. Они сообщают компилятору некоторые сведения о самой программе и использующихся в ней объектах. Эта часть программы называется разделом описаний. Зарезервированное слово begin в четвертой строке сигнализирует компилятору о начале другой части программы - раздела операторов. В нашем примере этот раздел содержит оператор

WriteLn(Text);

который, собственно, и выводит сообщение на экран компьютера.

Завершает всю программу зарезервированное слово end с точкой. Точка оповещает компилятор о конце текста программы. За сочетанием end. можно размещать какой угодно текст - он не будет обрабатываться компилятором.

Перед тем как попробовать откомпилировать и исполнить нашу программу, обсудим ее единственный исполняемый оператор

WriteLn(Text);

Любопытно, что в Паскале вообще и Турбо Паскале, в частности, нет специальных операторов ввода-вывода. Для обмена информацией с окружающим миром в программах, написанных на языке Турбо Паскаль, используются специальные стандартные процедуры. Таким образом, по своей сути оператор

WriteLn(Text);

является оператором обращения к встроенной процедуре вывода данных (свое название она получила от WRITE LiNe - записать строку).

Понятие процедуры (см. гл.8) - одно из центральных понятий Турбо Паскаля. Процедура - это некоторая последовательность операторов, к которой можно обратиться по имени. Всякий раз, когда мы называем в операторе имя процедуры, инициируется последовательность запрограммированных в ней действий.

Процедура WriteLn относится к стандартным или встроенным процедурам Турбо Паскаля. Стандартная процедура не нуждается в предварительном описании, она доступна любой программе, в которой содержится обращение к ней. Разница между оператором вывода и обращением к процедуре вывода состоит в том, что имя процедуры вывода, как и любой другой процедуры Турбо Паскаля, не является зарезервированным словом, а следовательно, пользователь может написать свою собственную процедуру с именем WriteLn. Впрочем, эта возможность для большинства пользователей остается лишь языковой тонкостью и очень редко используется на практике.

Процедура WriteLn - одна из немногих процедур Турбо Паскаля, при обращении к которым допускается использование произвольного числа параметров. Параметры передаются процедуре в виде списка, располагающегося в круглых скобках сразу за именем процедуры. В нашем примере процедуре передается единственный параметр -константа Text. Как мы увидим дальше (см. гл.5), самым первым параметром при обращении к процедуре WriteLn можно указать адрес приемника информации - устройство или дисковый файл, в который направляется вывод. Таким способом программист может легко переадресовать вывод данных. Если, как это сделано в нашем примере, адрес вывода не указан, вывод направляется на экран дисплея.

Анализируя всю программу в целом, мы обнаружим, что четыре использовавшихся в ней слова (Program, const, begin и end) являются зарезервированными. Слово WriteLn, как уже отмечалось, не относится к зарезервированным, но вряд ли может возникнуть необходимость переопределить его, так как в этом случае программа лишится мощного и удобного средства вывода данных. Два слова My_First_Program и Text служат идентификаторами (именами) некоторых объектов программы. Программист может использовать в качестве идентификаторов любые последовательности символов, которые удовлетворяют следующим ограничениям:

· идентификатор может состоять из букв латинского алфавита, цифр, знака подчеркивания; никакие другие символы в идентификаторе недопустимы;

· идентификатор не может начинаться с цифры;

· идентификатор не может совпадать ни с одним из зарезервированных слов;

· длина идентификатора может быть произвольной, но значащими считаются первые 63 символа.

Как и всюду в программе, в идентификаторах игнорируется разница в высоте букв, поэтому, например, идентификаторы Text, text и TEXT с точки зрения компилятора идентичны.

Для выполнения программы нажмите Ctrl-F9. Если Вы не ошиблись при вводе текста, то, спустя несколько секунд заметите быструю смену изображений на экране: сразу после загрузки программы Турбо Паскаль очищает экран, предоставляя его в распоряжение работающей программы пользователя. Такой экран называется окном программы. После завершения прогона (работа программы часто называется ее прогоном) на экране вновь появится окно редактора с текстом программы. Если Вы не успели разглядеть изображение окна программы, нажмите Alt-F5. После нажатия на любую клавишу среда вернет экран в режим воспроизведения окна редактора.

Перед тем, как двигаться дальше, полезно подробнее ознакомиться с некоторыми возможностями среды Турбо Паскаля. Нажмите клавишу F10, чтобы перейти к режиму выбора из главного меню, подведите указатель к опции Debug (отладка) и нажмите клавишу Enter - на экране раскроется меню второго уровня, связанное с этой опцией. Новое меню как бы «выпало» из верхней строки, поэтому такое меню часто называют выпадающим. Отыщите в новом меню опцию Output (вывод программы), подведите к ней указатель и нажмите клавишу Enter еще раз. На экране вновь появится окно программы, но оно уже не будет исчезать после нажатия на любую клавишу - экран будет связан с этим окном постоянно. Теперь добьемся того, чтобы на экране демонстрировались два окна одновременно: вновь нажмите клавишу F10, выберите Window, нажмите клавишу Enter, подведите указатель к опции Tilе(черепица) и нажмите клавишу Enter еще раз.

Двойная рамка, очерчивающая окно программы, свидетельствует о том, что именно это окно активно в данный момент. Сделаем активным окно редактора: нажмем клавишу Alt и, не отпуская ее, - клавишу с цифрой 1 (окно редактора имеет номер 1, окно программы - номер 2). Теперь все готово к дальнейшим экспериментам с программой.

 

4. Содержание заданий

 

Варианты заданий:

Вариант U0.

Написать программу вычисления стоимости некоторого количества (по весу) яблок. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление стоимости покупки.

Введите исходные данные:

Цена одного килограмма яблок (руб.) –

Вес яблок (кг.) –

Стоимость покупки –

 

Вариант U1.

Написать программу вычисления объема цилиндра, если известны радиус его основания и высота. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление объема цилиндра.

Введите исходные данные:

Радиус основания(см.) –

Высота цилиндра (см.) –

Объем цилиндра –

 

Вариант U2.

Написать программу вычисления площади треугольника, если известна длина основания и высота. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление площади треугольника.

Введите исходные данные:

Основание (см.) –

Высота (см.) –

Площадь треугольника –

 

Вариант U3.

Написать программу вычисления объема параллелепипеда, если известны его длина, ширина и высота. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление объема параллелепипеда.

Введите исходные данные:

Длина –

Ширина –

Высота –

Объем –

 

Вариант U4.

Написать программу вычисления сопротивления электрической цепи, состоящей из двух параллельно соединенных сопротивлений. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление сопротивления электрической цепи

при параллельном соединении элементов.

Введите исходные данные:

Величина первого сопротивления (Ом) –

Величина второго сопротивления (Ом) –

Сопротивление цепи –

 

Вариант U5.

Написать программу вычисления стоимости поездки на автомобиле на дачу (туда и обратно). Исходными данными являются: расстояние до дачи (в километрах); количество бензина, которое потребляет автомобиль на 100 км. пробега; цена одного литра бензина. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление стоимости поездки на дачу и обратно.

Расстояние до дачи –

Расход бензина (литров на 100 км. пробега) –

Цена литра бензина (руб.) –

Поездка на дачу и обратно обойдется в –

 

Вариант U6.

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

Вычисление площади треугольника.

Введите (через пробел) длины двух сторон (см) треугольника –

Введите величину угла между сторонами треугольника –

Площадь треугольника –

 

Вариант U7.

Вычислить периметр и площадь прямоугольного треугольника по заданным длинам двух катетов a и b. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление периметра и площади прямоугольного треугольника

по заданным длинам двух катетов.

Введите исходные данные:

Длина катета a –

Длина катета b –

Значение периметра равно –

Значение площади равно –

 

Вариант U8.

Вычислить длину окружности и площадь круга одного и того же заданного радиуса R. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление длины окружности и площади круга.

Введите исходные данные:

Заданный радиус равен –

Длина окружности –

Площадь круга –

 

Вариант U9.

Найти произведение цифр заданного четырёхзначного числа. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Введите заданное четырехзначное число –

Произведение цифр заданного числа –

 

Вариант U10.

Даны два числа. Найти среднее арифметическое кубов этих чисел. Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление среднего арифметического кубов двух чисел.

Введите исходные данные:

Значение первого числа равно –

Значение второго числа равно –

Среднее арифметическое кубов этих чисел -

 

Вариант U11.

Вычислить корни квадратного уравнения ax2+bx+c=0, заданного коэффициентами a, b и c (предполагается, что a≠0 и что дискриминант уравнения неотрицателен). Ниже представлен рекомендуемый вид экрана во время работы программы (данные, введенные пользователем, выделены курсивом).

Вычисление корней квадратного уравнения.

Введите коэффициенты (через пробел) a, b, c:

Дискриминант равен –

Корни квадратного уравнения равны -

 

5. Содержание отчёта:

- постановка задачи;

- блок схема алгоритма решения задачи;

- программа на языке программирования Паскаль;

 

6. Контрольные вопросы

6.1. Какие блоки используются при составлении блок – схем алгоритмов?

6.2. По каким правилам задаются идентификаторы в языке Turbo Pascal?

6.3. Для чего необходимо указывать типы данных?

6.4. Как обозначаются арифметические операции?

6.5. Какие виды делений вы знаете?

6.6. Назовите стандартные процедуры ввода – вывода данных.

6.7. Как называются программы, в основе которых лежит структура следование?

 

7. Список рекомендуемой литературы:

7.1 Гвоздева В.А. Введение в специальность программиста.- М.:ФОРУМ; ИНФРА-М, 2010. - 206с.

7.2 Колдаев В. Д. Сборник задач и упражнений по информатике: учеб.пособие для сред.проф.образования / В. Д. Колдаев, Е. Ю. Павлова. - М.: ФОРУМ; ИНФРА-М, 2010. - 256с.

7.3 Мишенин А.И. Сборник задач по программированию: учеб. пособие/ М.: Финансы и статистика; ИНФРА-М,2009 - 224с.

 









Последнее изменение этой страницы: 2016-04-18; Нарушение авторского права страницы

infopedia.su не принадлежат авторские права, размещенных материалов. Все права принадлежать их авторам. Обратная связь