Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практичесике Информационные технологии.doc
Скачиваний:
8
Добавлен:
01.07.2025
Размер:
7 Мб
Скачать
☆

Практическое занятие № 2 Программирование разветвляющихся алгоритмов

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

- научиться конструировать алгоритмы, составлять и отлаживать программы разветвленной структуры.

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

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

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

  • Microsoft Windows XP/7

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

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

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

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

Структура условного оператора имеет следующий вид:

IF <условие> THEN <оператор1> ELSE <оператор2>,

где IF, THEN, ELSE - зарезервированные слова (если, то, иначе); <условие> - произвольное выражение логического типа; <оператор1>, <оператор2> - любые операторы языка Турбо Паскаль.

Условный оператор работает по следующему алгоритму. Вначале вычисляется условное выражение <условие>. Если результат есть TRUE (истина), то выполняется <оператор1>, а <оператор2> пропускается; если результат есть FALSE (ложь), наоборот, <оператор1> пропускается, а выполняется <оператор2>. Например:

var

х, у, max: Integer;

begin

.......

if x > max then

у := max else

y := x;

При выполнении этого фрагмента переменная Y получит значение переменной X, если только это значение не превышает МАХ, в противном случае Y станет равно МАХ.

Часть ELSE <оператор2> условного оператора может быть опущена. Тогда при значении TRUE условного выражения выполняется <оператор1>, в противном случае этот оператор пропускается:

var

х, у, max: Integer; 

begin

.......

if x > max then

max := x; 

Y := x;

В этом примере переменная Y всегда будет иметь значение переменной X, а в МАХ запоминается максимальное значение X.

Поскольку любой из операторов <оператор1> и <оператор2> может быть любого типа, в том числе и условным, а в то же время не каждый из «вложенных» условных операторов может иметь часть ELSE <оператор2>, то возникает неоднозначность трактовки условий. Эта неоднозначность в Турбо Паскале решается следующим образом: любая встретившаяся часть ELSE соответствует ближайшей к ней «сверху» части THEN условного оператора. Например:

var

a,b,c,d : Integer; begin

a := 1; b := 2; c= 3; d := 4;

if a > b then

if с < d then 

if с < 0 then

с := 0 else

a := b; {а равно 1}

if a > b then 

if с then 

if с then 

с := 0

else

else 

else

a := b; {а равно 2}

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

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

Вариант U0.

Даны три действительные числа. Возвести в квадрат те из них, значения которых неотрицательны, и четвертую степень – отрицательные.

Вариант U1.

Даны действительные числа x и y, не равные друг другу. Меньшее из этих двух чисел заменить половиной их суммы, а большее – удвоенным произведением.

Вариант U2.

На плоскости XOY задана своими координатами точка А. Указать, где она расположена: на какой оси или в каком координатном угле.

Вариант U3.

Даны целые числа m, n. Если числа не равны, то заменить каждое из них одним и тем же числом, равным большему из исходных, а если равны, то заменить числа нулями.

Вариант U4.

Дано трехзначное число N. Проверить, будет ли сумма его цифр четным числом.

Вариант U5.

Определить, равен ли квадрат заданного трехзначного числа кубу суммы цифр этого числа.

Вариант U6.

Определить, является ли треугольник со сторонами a, b , c равносторонним.

Вариант U7.

Подсчитать количество отрицательных чисел среди чисел a, b , c.

Вариант U8.

Услуги телефонной связи оплачиваются по следующему правилу: за разговоры до А минут в месяц оплачивается В р., а разговоры сверх установленной нормы оплачиваются из расчета С р. в минуту. Написать программу, вычисляющую плату за пользование телефоном для введенного времени разговоров за месяц.

Вариант U9.

Составить программу, определяющую результат гадания на ромашке – «любит – не любит», взяв за исходное данное количество лепестков n.

Вариант U10.

Составить программу, печатающую значение TRUE, если указанное высказывание является истинным, и FALSE в противном случае: сумма двух первых цифр заданного четырехзначного числа равна сумме двух его последних цифр.

Вариант U11.

Найдите максимальное из трех чисел: a, b, c.

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

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

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

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

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

    1. Какие зарезервированные слова могут использоваться при записи условного оператора?

    2. Какой тип должно иметь выражение, стоящее в условном операторе между словами if и then?

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

    4. Приведите пример составного оператора.

    5. Напишите формат записи оператора выбора.

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

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

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

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