Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
методичка2(4-8).doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
166.4 Кб
Скачать

2.1.3 Оператор цикла с параметром for

Во всех процедурных языках программирования циклы for очень похожи. Однако в С этот цикл особенно гибкий и мощный. Общая форма оператора for следующая:

for (<инициализация>; <условие>; <приращение>) <операторы>;

Цикл for может иметь большое количество вариаций. В наиболее общем виде принцип его работы следующий. Инициализация — это присваивание начального значения переменной, которая называется параметром цикла. Условие представляет собой условное выражение, определяющее, следует ли выполнять оператор цикла (часто его называют телом цикла) в очередной раз. Оператор приращение осуществляет изменение параметра цикла при каждой итерации. Эти три оператора (они называются также секциями оператора for) обязательно разделяются точкой с запятой. Цикл for выполняется, если выражение условие принимает значение ИСТИНА. Если оно хотя бы один раз примет значение ЛОЖЬ, то программа выходит из цикла и выполняется оператор, следующий за телом цикла for.

2.2. Пример

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

#include <iostream>

int main()

{

int ch;

int mas[10][10];

printf(“введите размерность матрицы(меньше 10)). \n”);

scanf(“%d”,ch);

for (int i = 1; i <=ch; i++)

for (int j = 1;j <=ch; j++)

mas[i][j] = random(5);

int sum = 0;

for (int i = 1; i <=ch; i++)

for (int j = 1; j <=ch; j++)

if (mas[i][j] > 0) sum = sum + mas[i][j];

printf(“%d”,sum);

}

2.3. Контрольный пример

Матрица размером 4х4:

-1 -3 1 -2

-4 3 -2 -3

-4 -5 -5 -1

-1 5 -4 -4

Сумма положительных элементов матрицы: 9

3. Лабораторное задание и методические указания по его выполнению

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

Отчет должен содержать:

  • Наименование и цель работы.

  • Краткие теоретические сведения.

  • Листинг программы и полученные результаты

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

  1. Назовите основные операторы, с помощью которых можно реализовать цикл.

  2. Какое главное отличие оператора цикла с постусловием от оператора цикла с предусловием?

  3. Приведите пример цикла с предусловием, с постусловием. Проанализируйте ход работы этих циклов.

5. Задание

Решить предложенные задания:

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

  2. Напишите программу, которая бы считала сумму диагональных элементов матрицы.

  3. Напишите программу, которая сортирует по возрастанию массив чисел, при этом размерность массива задается с клавиатуры.

С использованием:

а. цикла for

б. цикла while

в. цикла do-while.

При этом варианты задания должны быть представлены, например, в виде 3б.