Программирование на Cи |
Содержание:
|
Циклические действия в языках программирования, это многократные повторения (итерации) каких либо действий или команд. Циклы подразделяются на циклы с заданным числом повторений и циклы прекращающиеся по какому ни будь условию. К циклам с заданным числом повторений (условием) относится цикл for. В языке Си цикл for организуется по следующей схеме: for (условие) действие; где условием является запись начального и конечного значения счётчика цикла, а так же условие для наращивания значений счётчика. В качестве счётчика используется переменная числового типа. Рассмотрим пример организации цикла: int n; for (n=1; n<=10; n++) printf("%d\n",n); В этой записи, в качестве счётчика используется переменная n целого типа. В цикле переменной n присваивается начальное значение единица n=1; затем задаётся логическое условие повторения цикла, в нашем случае цикл будет повторяться пока переменная n меньше либо равна 10. Далее задаётся формула наращения счётчика, в нашем случае с каждой итерацией цикла счётчик n будет увеличиваться на единицу n++. Далее, за скобками идёт действие, которое нужно выполнять в цикле, в нашем случае, это вывод на экран значений счётчика n при каждой итерации. Полностью программа будет выглядеть так: #include <stdio.h> void main() { int n; clrscr(); for (n=1; n<=10; n++) printf("%d\n",n); } Результатом работы программы будет вертикальный список значений счётчика n: Для того, что бы цикл мог выполнять несколько действий, эти действия следует заключить в фигурные скобки, например: #include <stdio.h> void main() { int n; clrscr(); for (n=1; n<=10; n++) { printf("Iteration: "); printf("%d\n",n); } } Результат выполнения программы с несколькими действиями в цикле: В качестве счётчика цикла могут быть переменные не только целого, но и вещественного типа. Так же, формула приращения цикла может быть любой. Например, заменим тип переменной n на float, а приращение значения n сделаем 0.5. #include <stdio.h> void main() { float n; clrscr(); for (n=1; n<=4; n=n+0.5) { printf("Iteration: "); printf("%f\n",n); } } Результатом работы этой программы будет список дробных значений n: Формула приращений счётчика цикла может иметь как положительное приращение (как в нашем случае), так и отрицательное приращение - цикл будет работать на уменьшение счётчика. Для этого достаточно изменить условие (диапазон) значений цикла и формулу приращения счётчика. Например, в нашей программе "развернём" счётчик в обратную сторону: #include <stdio.h> void main() { float n; clrscr(); for (n=4; n>=1; n=n-0.5) { printf("Iteration: "); printf("%f\n",n); } } Результат работы этой программы будет такой: |
Пример программы по вычислению факториала числа.
|
По определению: факториалом числа q является ряд 1 * 2 * 3 * : q-1 * q. Если q = 0, то факториал 0 = 1. Создадим программу где значение q будем вводить с клавиатуры, а значение факториала (переменная fact) , будет вычисляться в цикле, повторяющемся от 1 до q. #include <stdio.h> void main() { float fact; int n,q; clrscr(); /* Вводим с клавиатуры значение q */ printf("Vvedi q: "); scanf("%d",&q); /* Проверяем введённое значение q и если оно равно 0 то ...*/ if (q==0) printf("Factorial = 1"); /* Если q не равно 0 то создаём цикл и в цикле вычисляем факториал fact*/ else { fact = 1; for (n=1; n<=q; n++) fact=fact * n; /* Выводим полученное значение факториала на экран*/ printf("Factorial=%f",fact); } } Результат работы программы при q=0: Результат работы программы при q не равном 0: |
©Гуков Константин Михайлович 2006 - 2013 Почта: [email protected] |