У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 3 Разработка программ на языке C с использованием циклов Цель работы- научиться с

Работа добавлена на сайт samzan.net: 2015-07-05

Поможем написать учебную работу

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

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 10.4.2025

Лабораторная работа № 3

Разработка программ на языке C++

с использованием циклов

Цель работы: научиться составлять программы с использованием операторов цикла for, while, do-while.

Теоретические сведения

Цикл - это автоматическое повторение оператора или блока операторов конечное число раз.

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

Общая форма записи оператора цикла for имеет вид:

for (инициализация управляющих переменных цикла;

      проверка на продолжение цикла;

      закон изменения управляющих переменных цикла) оператор;

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

Классический вариант записи оператора цикла  for:

for (n=1; n<=10; n++)  y=n * n;

Оператор цикла допускает изменение управляющей переменной в сторону уменьшения:

for (n=10; n>=0; n--)

          cout << n << "секунд !" << endl;

          cout << " Пуск !" << endl;

При желании можно изменять шаг цикла:

for (n=2; n<60; n=n+13)    cout << n << endl;

Параметром оператора цикла может быть не только числовая, но и символьная переменная:

for (ch='a'; ch<='z'; ch++)

   cout << "Символ " << ch << endl;

При выполнении приведенного примера будут выведены на экран все буквы от a до z.

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

   a=2;

   for ( n=3; a<=25;)  a=a * n;

Оператор цикла do-while

В операторе цикла do-while условие повторения проверяется после каждого прохождения тела цикла, т.е. это цикл с последующим условием. Следовательно, цикл do-while выполняется по крайней мере один раз. Этот цикл повторяется до тех пор, пока выполняется условие, проверяемое в конце цикла.

Форма его записи:

do {оператор или группа операторов}

while (условие);

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

do {ch=getchar ( );            // принимать с клавиатуры символы

       putchar (ch);               // и выводить их на экран

      }while (ch != ' \n' );    // пока не будет введена пустая посылка

. . .

Оператор цикла while

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

Форма записи:

 while (условие) {последовательность операторов}

int index=2;

 while (index ++<5) cout << "Желаю удачи!" <<endl;

. . .

Пример 3.1. Из n целых чисел, введенных с клавиатуры определить максимальную последовательность четных.

# include <iostream.h>

void main()

{  int n, x;

  int cnt=0;

  int k=0;

cout<<”Введите последовательность из  “;

    cin>>n;

    cout<<”  чисел\n”;

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

 { cin>>x;

 while (x%2= =0)

 { cnt++;

  cin>>x;

  i++;}

 if (cnt>k)

k=cnt;}

       cout<<”Количество четных “<<k<<endl;

}

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

  1.  Каким образом цикл while может имитировать цикл for?
  2.  Каким образом цикл while может имитировать цикл do-while?
  3.  В каких случаях используются операторы break, continue, exit?
  4.  Почему в языке С++ нет необходимости использовать оператор goto?

На оценку "3" нужно выполнить свой вариант только из табл. 3.1, на "4" и "5" – из табл. 3.1 и 3.2.

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

Таблица 3.1

Номер варианта

Задание

1, 13

Ввести с клавиатуры целое число, которое будет являться количеством символов во вводимой последовательности. Определить, является ли последовательность упорядоченной по алфавиту.

2, 14

Ввести с клавиатуры последовательность целых чисел (ввод 0 является признаком завершения ввода последовательности). Определить, имеется ли во введенной последовательности упорядоченная по возрастанию подпоследовательность из k чисел, если k также введено с клавиатуры.

3, 15

Ввести с клавиатуры последовательность из n действительных чисел. Определить, есть ли в последовательности хотя бы одна пара одинаковых соседних чисел. Если есть, вывести их порядковые номера.

4, 16

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

5, 17

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

6, 18

Ввести  с клавиатуры два неодинаковых числа (интервал) и последовательность, не содержащую нулей (ввод 0 является признаком завершения ввода последовательности). Определить сумму элементов последовательности, попадающих во введенный с клавиатуры интервал.

7, 19

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

8, 20

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

9, 21

Ввести  с клавиатуры два неодинаковых числа (интервал) и последовательность, не содержащую нулей (ввод 0 является признаком завершения ввода последовательности). Определить количество элементов последовательности, не попадающих во введенный с клавиатуры интервал.

10, 22

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

11, 23

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

12, 24

Ввести с клавиатуры последовательность целых чисел (ввод 0 является признаком завершения ввода последовательности). Определить минимальное среди четных элементов последовательности.

Таблица 3.2

Номер варианта

Задание

1, 15

Дано начальное значение =5 и рекуррентная формула . Найти номер первого элемента, превысившего введенное с клавиатуры число.

2, 16

Дано начальное значение =12 и рекуррентная формула . Найти номер первого элемента, превысившего введенное с клавиатуры число.

3, 17

Дано начальное значение =2 и рекуррентная формула . Найти номер первого элемента, превысившего введенное с клавиатуры число.

4, 18

Дано начальное значение =0 и рекуррентная формула . Найти наименьший номер элемента последовательности, для которого выполняется условие <, введенное с клавиатуры. Вывести на экран этот номер и все элементы .

5, 19

Дано начальное значение =0.5 и рекуррентная формула . Найти номер первого элемента, превысившего введенное с клавиатуры число.

6, 20

Дано начальное значение =x и рекуррентная формула . Найти наименьший номер элемента последовательности, для которого выполняется условие <, введенное с клавиатуры. Вывести на экран этот номер и все элементы .

7, 21

Дано начальное значение =2 и рекуррентная формула . Найти номер первого элемента, превысившего введенное с клавиатуры число.

8, 22

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

9, 23

Дано начальное значение =1, r = 1.8 и рекуррентная формула . Найти наименьший номер элемента последовательности, для которого выполняется условие <, введенное с клавиатуры. Вывести на экран этот номер и все элементы .

10, 24

Для числового ряда, общий член которого имеет вид: , найти сумму тех членов ряда, для которых , введенного с клавиатуры.

11, 25

Для числового ряда, общий член которого имеет вид: , найти сумму тех членов ряда, для которых , введенного с клавиатуры.

12, 26

Для числового ряда, общий член которого имеет вид: , найти сумму тех членов ряда, для которых , введенного с клавиатуры.

13, 27

Для числового ряда, общий член которого имеет вид:, найти сумму тех членов ряда, для которых , введенного с клавиатуры.

14, 28

Для числового ряда, общий член которого имеет вид: , найти сумму тех членов ряда, для которых , введенного с клавиатуры.

Приложение

Отладка приложений в ИСР Borland C++ Builder и MS Visual C++.

В ИСР Borland C++ для отладки используются следующие «горячие» клавиши:

F4

Run to cursor

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

F5

Set breakpoint

Установить точку прерывания программы

F7

Trace into

Выполнить строку программы с заходом в код вызываемых функций

F8

Step over

Выполнить строку программы без захода в код вызываемых функций

F9

Run

Выполнить

Shift+F7

Trace to next source line

Выполнить до следующей строки с исполняемым кодом

Ctrl+Alt+L

Show local variables

Показать окно значений локальных переменных

Ctrl+Alt+W

Show watches

Показать окно слежения за переменными

Ctrl+Alt+B

Show breakpoints

Показать окно точек прерывания

Ctlr+F2

Stop

Остановка отладки

В ИСР Visual C++ для отладки используются следующие «горячие» клавиши:

Ctrl+F10

Run to cursor

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

F9

Set breakpoint

Установить точку прерывания программы

F11

Trace into

Выполнить строку программы с заходом в код вызываемых функций

F10

Step over

Выполнить строку программы без захода в код вызываемых функций

F5

Run

Выполнить

Ctrl+Shift+F5

Restart

Выполнить с учётом изменений

Shift+F5

Stop

Остановить отладку

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

  •  введите в критические места программы точки прерываний;
  •  на критическом участке выполняйте программу по шагам;
  •  если вызывается ваша функция – используйте отладку с заходом в функции, если же в текущей строке программы вызываются только библиотечные функции – используйте отладку без захода в функции;
  •  для слежения за значениями переменных внутри функции используйте окно значений локальных переменных;
  •  для слежения за выбранными переменными используйте окно слежения за переменными;
  •  в окне слежения за переменными используйте Ins для добавления переменной и Del для удаления.

Отладка приложений позволяет выявить ошибки алгоритма и ошибки программиста, которые компилятор самостоятельно выявить не может.

26

PAGE  27




1. Кабінетні методи маркетингових досліджень
2. 2 Задача анализа условий труда Анализ условий труда предусматривает санитарногигиеническое обследова
3. Реферат Выполнила-
4. Учение о душе человека
5. Педагогическое содействие в выборе учащимися 9-го класса форм продолжения образования
6. ТЕМАТИКИ МАЙБУТНІХ ВЧИТЕЛІВ МАТЕМАТИКИ З ВИКОРИСТАННЯМ ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ теорія і
7. Модуль 1 другий рівень складності 1
8. Понятие здоровья
9. Доктор Живаго
10. СОГЛАСОВАНО УТВЕРЖДАЮ Председатель