- •Основные понятия программирования
- •Понятие алгоритма. Алгоритмизация
- •Свойства алгоритма
- •Запись алгоритма на естественном языке
- •Изображение алгоритма в виде схемы
- •Понятие о языках программирования
- •Понятие о структурном подходе к разработке алгоритмов
- •4 Идти к 8
- •6 Идти к 8
- •8 Останов
- •Первая программа на Си
- •Процесс создания программы
- •Комментарии
- •Директива #include
- •Макросы
- •Переменные и типы данных
- •Правила именования идентификаторов
- •Типы данных
- •Int двухбайтовое целое число
- •Оператор printf: вывод на экран
- •Последовательности для вывода специальных символов
- •Спецификация вывода
- •X тип int в шестнадцатеричном виде
- •Оператор scanf: ввод с клавиатуры
- •Логическая организация программы на Си
- •Функция main
- •Глобальные и локальные переменные
- •Операторы и операции
- •Арифметические операции
- •Битовые операции
- •Операции отношения
- •Логические операции
- •Операции присваивания
- •Другие операции
- •Математические функции
- •Управляющие структуры
- •Операторы ветвления
- •Операторы цикла
- •Массивы
- •Функции
- •Интегрированная среда разработки turbo c
- •Общие сведения и принципы работы
- •Стандартные органы управления
- •Главное меню
- •Запуск иср и выход
- •Работа с окнами и файлами
- •Система помощи
- •Редактор
- •Компиляция и выполнение программ
- •Технология создания с-программы
- •Лабораторные работы
- •Лабораторная работа №1
- •Создание нового файла
- •Ввод и редактирование исходного текста
- •Сохранение
- •Выполнение программы
- •Исправление ошибок
- •Просмотр результатов выполнения
- •Закрытие файла
- •Открытие и выполнение ранее сохраненного файла
- •Вызов справки
- •Лабораторная работа №2
- •Лабораторная работа №3
- •Лабораторная работа №4
- •Лабораторная работа №5
- •Лабораторная работа №6
- •Лабораторная работа №7
- •Лабораторная работа №8
- •Список вопросов
- •Литература
- •Приложение Пример оформления отчета по лабораторной работе
- •Блок-схема алгоритма
- •Текст программы
- •Результат выполнения программы
- •Теория и технология программирования
-
Лабораторная работа №5
Целью работы является освоение программирования алгоритмов с циклической структурой, когда какой-либо участок программы выполняется определенное количество раз.
Порядок выполнения работы:
-
изучить оператор цикла for (параграф 13.2);
-
определить формулу для вычисления выражения под знаком суммы;
-
разработать блок-схему;
-
составить текст программы на языке Cи;
-
проверить правильность выполнения разработанной программы;
-
составить отчет.
Типичный пример циклического процесса — вычисление конечных сумм. При определении сумм многократно вычисляется выражение, стоящее под знаком суммы и складывается с предыдущей частичной суммой. Вычисления производятся до тех пор, пока не будут сложены выражения под знаком суммы для всех значений изменяющейся переменной.
Например, необходимо составить программу, вычисляющую значение суммы:
![]()
Прежде чем вычислять выражение под
знаком суммы и очередную частичную
сумму, необходимо определить начальное
значение параметра цикла (в данном
случае i, которое изменяется от 1 до
10 с шагом 1, то есть
будет принимать последовательно значения
1, 2, 3, 4, ..., 9, 10), и начальную частичную
сумму
.
Так как вычисления еще не производились,
то
.
Затем вычисляется выражение под знаком
суммы для
,
затем для
до
и каждый раз складывается с предыдущей
частичной суммой
.
При этом получается новая частичная
сумма
.
После этого
увеличивается на единицу и проверяется,
не стало ли
.
Если еще меньше или равно 10, то вычисляется
новая частичная сумма, в противном
случае вычисление суммы будет закончено,
и это значение выводится на печать.
Воспользуемся стандартной схемой циклического процесса (Рисунок 51).
Блок 1 — блок подготовки к вычислению суммы, в котором задаются начальные значения параметра цикла и частичной суммы.
В блоке 2 производится вычисление
выражения, стоящего под знаком суммы и
сложение с предыдущей частичной суммой
.
В итоге получается новая частичная
сумма
.
В блоке 3 происходит изменение параметра
цикла (увеличение
на 1). Это блок подготовки к новому циклу.
Блок 4 — блок проверки продолжения
цикла. Необходимо проверить, меньше ли.
Если да, то вычисление частичной суммы
продолжается дальше, то есть выполняются
блоки 2 и 3. Если
стало больше или равно 10, то цикл закончен.

Рисунок 51 — Блок-схема алгоритма циклического процесса
Проверка может осуществляться условным оператором if, но для организации циклов в языке Си специально предусмотрены три оператора цикла. Если количество повторений заранее известно, то целесообразно использовать оператор for, включающий в себя блоки 1, 3, 4 (Рисунок 52).

Рисунок 52 — Блок-схема алгоритма примера
Пример. Вычислить сумму:
.
Листинг 19 — Лабораторная работа №5
|
/* lab5.c – лабораторная работа №5. */
#include <stdio.h> #include <conio.h> #include <math.h>
void main() { double s = 0; /* инициализация суммы */ int m;
clrscr();
/* заголовок таблицы */ printf(“------------------\n”); printf(“| Шаг | Значение |\n”); printf(“------------------\n”);
/* вычисление суммы при помощи цикла for */ for(m = 1; m <= 20; m++) { s += log(m) + exp(-m); printf(“| %3d | %8.3f |\n”, m, s); }
printf(“------------------\n”); /* вывод результата */ printf(“Значение суммы: %f”, s); } |

Рисунок 53 — Результат выполнения lab5.c
Таблица 10 — Варианты заданий к лабораторной работе №5
|
№ вар. |
Вычислить сумму |
№ вар. |
Вычислить сумму |
|
1 |
|
2 |
|
|
3 |
|
4 |
|
|
5 |
|
6 |
|
|
7 |
|
8 |
|
|
9 |
|
10 |
|




