Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Практикум ОА Цымбалюк.doc
Скачиваний:
6
Добавлен:
29.08.2019
Размер:
2.1 Mб
Скачать

Задание №3. Оператор цикла for

Цель занятия: Научиться использовать операторы цикла при решении задач на языке программирования С++

Студенты должны знать: синтаксис операторов цикла;

уметь: составлять программы с использованием операторов цикла;

Теория.

Цикл – это повторяющее действие (или набор действий), организованное с помощью структуры, управляемой счётчиком. Формат записи: for (инициализация; условие продолжения; изменение счётчика) {блок} Отдельные или все блоки в цикле могут быть пустыми, для выхода из бесконечного цикла используется break;

Сокращённые варианты записи

Сокращённая запись

Стандартная запись

A++

A=A+1

A--

A=A-1

A+=B

A=A+B

A-=B

A=A-B

A*=C

A=A*C

A/=D

A=A/D

Пример программы вывода на экран целых чисел от 0 до 9

Int main(int argc, char* argv[])

{ int i;

for (i = 0; i < 10; i++) {

printf("%d\n",i);

}

getch();

return 0;

}

Задание.

  1. Создайте консольное приложение.

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

  1. for (i=0;i<=5,i++) {cout <<i <<endl;}

  2. for (int i=10;i<=1,i--) {j*=2; cout <<j <<endl;}

  3. for (j=0;j<2;j++) {x=j*0.1;} cout <<x;

  4. for (int k=0;k<6;k=k+2) cout <<k;

  5. for (i=0;i<3;i++) k+=1; cout <<i<<j<<k<<endl;

  6. for (i=0;i<3;i++) {k++; cout <<k}

  7. for (i=5;i>=3;i--) cout <<i<<endl;

  8. for (i=5;i>0;i=i-2) cout <<i<<endl;

  9. for (i=0;i<10;i++) if (i<j) cout <<i;

  10. for (i=0;i<10;i+=2) if (i<j) cout <<j;

  11. for (i=0;i<3;i++) {k=k-5; if (i<k) printf(“$$$”); else printf(“###”);}

  12. for (i=0;i<3;i++) { for (j=0;j<3;j++) { if (i<j) printf(“$$$”); else printf(“###”);}}

  1. Напишите программу для решения задачи:

  1. Вывод на экран символов * в виде прямой линии с использованием цикла.

  2. Вывод на экран символов * в виде наклонной линии с использованием цикла.

  3. Вывод на экран символов * в виде английской буквы V с использованием цикла.

  4. Вывод на экран символов * в виде символа  с использованием цикла.

  5. Составить программу, в результате которой произойдёт вывод степеней 2-ки.

  6. Вычисление факториала целого числа.

  7. Вычислить xk , где x вещественное число, а k целое число.

  8. Дано натуральное n. Вычислить n!=1/1*1/2*1/3*..*1/n.

  9. Вычислить значение выражения y=2/1+3/2+4/3+…+(n+1)/n.

  10. Числа Фибоначчи начинается с 0 и 1, затем каждый последующий элемент является суммой двух предыдущих (0, 1, 1, 2, 3, 5,…). Напишите программу для вычисления заданного количества чисел Фибоначчи.

  11. Целое число является простым, если оно делится только на 1 и на самого себя. Напишите программу для определения того, является ли введённое число простым.

  12. Дано число x в десятичной системе счисления. Требуется вывести на экран его двоичное представление.

  1. Циклы while и dowhile. Требуется переписать вашу программу с использованием циклов while и do…while.

Сдайте работу преподавателю

Вопросы для контроля и самоконтроля:

  1. Общая форма записи оператора for. Нарисуйте блок-схему алгоритма 1-го задания.

  2. В чём разница между циклами while и do…while? В каком случае и какой цикл нужно использовать?

  3. Когда лучше всего использовать цикл for? Какой тип данных следует использовать в цикле for?

  4. Для каких целей используется оператор break?

  5. Какая запись лучше while(1) или for(;;)?