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

Практическое занятие № 4 Программирование циклических алгоритмов (цикл с параметром)

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

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

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

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

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

  • Microsoft Windows XP/7

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

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

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

Счетный оператор цикла FOR имеет такую структуру: 

FOR <пар_цик> := <нач_знач> ТО <кон_знач> DO <оператор>.

Здесь FOR, TO, DO - зарезервированные слова (для, до, выполнить);

<пар_цик> - параметр цикла - переменная типа INTEGER (точнее, любого порядкового типа);

<нач_знач> - начальное значение - выражение того же типа;

 <кон_знач> - конечное значение - выражение того же типа; 

<оператор> - произвольный оператор Турбо Паскаля.

При выполнении оператора FOR вначале вычисляется выражение <нач_знач> и осуществляется присваивание <пар_цик> : = <нач_знач>. После этого циклически повторяется:

  • проверка условия <пар_цик> <= <кон_знач>; если условие не выполнено, оператор FOR завершает свою работу;

  • выполнение оператора <оператор>;

  • наращивание переменной <пар_цик> на единицу.

В качестве иллюстрации применения оператора FOR рассмотрим программу, осуществляющую ввод с клавиатуры произвольного целого числа N и вычисление суммы всех целых чисел от 1 до N (пример 1).

Пример 1

Program Summ_of_Integer;

{Программа вводит целое положительное число N и подсчитывает сумму всех целых чисел от 1 до N}

var

i, n, s : Integer;

begin

Write('N = ');

ReadLn(n); . {Вводим N}

s := 0; {Начальное значение суммы}

for i : = 1 to n do {Цикл подсчета суммы} 

s : = s + i;

writeln('Сумма = ',s) {Выводим результат}

end.

Условие, управляющее работой оператора FOR, проверяется перед выполнением оператора <оператор>: если условие не выполняется в самом начале работы оператора FOR, исполняемый оператор не будет выполнен ни разу. Другое обстоятельство - шаг наращивания параметра цикла строго постоянен и равен (+1). Существует другая форма оператора:

FOR<пар_цик>: = <нач_знач> DOWNTO <кон_знач> DO <оператор>

Замена зарезервированного слова ТО на DOWNTO означает, что шаг наращивания параметра цикла равен (-1), а управляющее условие приобретает вид <пар_цик> = <кон_знач>.

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

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

Вариант U0.

Составить программу, которая печатает таблицу умножения и сложения натуральных чисел в десятичной системе счисления.

Вариант U1.

Найти сумму всех n-значных чисел (1 < n < 4).

Вариант U2.

Составить программу для проверки утверждения: «Результатами вычислений по формуле x2 + x +17 при 0 < x < 15 являются простые числа». Все результаты вывести на экран.

Вариант U3.

Даны действительное число а, натуральное число n. Вычислить:

P = a(a – n)(a – 2n) x … x (a – n2).

Вариант U4.

Дано натуральное число n. Вычислить:

S = 1! + 2! + 3! + … + n! (n>1).

Вариант U5.

Дано натуральное число n. Вычислить:

S = 1/32 + 1/52 + 1/72 + … + 1/(2n + 1)2.

Вариант U6.

Написать программу, которая вычисляет сумму n- первых членов ряда 1+1/2+1/3+1/4+… Количество суммируемых членов ряда задается во время работы программы.

Вариант U7.

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

Вариант U8.

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

Вариант U9.

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

Вариант U10.

Написать программу, которая выводит двоичное представление введенного с клавиатуры десятичного целого числа в диапазоне от 0 до 255.

Вариант U11.

Написать программу, которая вычисляет частичную сумму ряда 1-1/3+1/5-1/7+1/9-… и сравнивает полученное значение с π/4 (при суммировании достаточно большого количества членов этого ряда, величина частичной суммы приближается к π/4).

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

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

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

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

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

    1. С помощью каких зарезервированных слов записывается цикл с параметром?

    2. Чем отличается итерационный цикл от цикла с параметром?

    3. Запишите формулу изменения параметра цикла.

    4. Назовите признаки циклической структуры в блок – схеме.

    5. Какой тип должен иметь параметр цикла в цикле for?

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

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

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

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