Меню сайта
Наш опрос
Оцените мой сайт
Всего ответов: 6
Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Главная » 2014 » Июль » 22 » Занятие 9.Циклические конструкции.Циклы WHILE и DO-WHILE. Уроки программирования для чайников.Язык Си.
16:08
Занятие 9.Циклические конструкции.Циклы WHILE и DO-WHILE. Уроки программирования для чайников.Язык Си.
Добрый день дорогие друзья.После долгого перерыва,я снова с вами. Сегодняшнее занятие будет продолжением занятия номер 7.Циклические конструкции Сегодня поговорим о еще двух циклических конструкциях. Как уже говорилось ранее,цикл for используется,когда известно сколько раз надо выполнить тело цикла. А что же делать если количество повторений заранее не известно, а есть только условие которое после которого нужно прекратить выполнять цикл. Для этих целей используют циклические конструкции while и do-while. Остановимся на каждом из них поподробнее. Цикл while.Цикл  while называют еще циклом с предусловием. Чаще всего он используется когда неизвестно конкретно сколько раз нужно выполнить тело цикла.Вот его синтаксис:Листинг 9.1while (условие)    оператор;Работает эта конструкция следующим образом.1.Сначала проверяется условие в скобках.1.1 Если оно истинно, то выполняется тело цикла. (Оператор). И программа снова переходит к проверке условия.  Напомню,что тело цикла всегда состоит из одного оператора. И если нам нужно использовать несколько операторов, то как и в случае с конструкцией if-else или циклом for, применяется составной оператор {...}.1.2 Если условие ложно, то выполнение циклической конструкции заканчивается  и программа выполняется дальше.Заметим, что цикл может не выполниться ни одного раза,если изначально условие будет ложным.Например:Листинг 9.2while (0){   ...   }Цикл do-while.Цикл do-while называют еще циклом с постусловием. И в этом состоит его основное отличие от цикла while. Сейчас мы разберем его синтаксис, поймем как он работает и увидим как раз в чем разница.Синтаксис:Листинг 9.3do //заголовок цикла{ оператор;} // тело цикла while (условие); //условиекак видите цикл do-while состоит из 3 частей. Заголовка цикла, тела цикла и условия. Работает эта конструкция следующим образом.1)После того как программа встречает ключевое слово do,она понимает, что имеет дело с циклом do-while. 2)выполняется тело цикла.3) Проверяется условие.3.1) Если условие истинно,то снова выполняется тело цикла.3.2) Если условие ложно, то работа циклической конструкции заканчивается и программа выполняется дальше.Обратите внимание, что при использовании цикла do-while, тело цикла выполнится всегда хотя бы один раз! Это очень важная особенность и иногда её очень удобно использовать.Зацикливание.Теперь поговорим немного о такой пренеприятнейшей вещи как зацикливание. Зацикливание - это когда программа постоянно выполняет тело цикла и не может из него выйти. Причиной зацикливания всегда является программист. Надо всегда внимательно следить за тем, чтобы работа операторов как-то влияла на условие. Напоследок напишем одну маленькую программку.С использованием циклов do-while и while.Пусть требуется написать программу которая принимает на входе положительное натуральное число, а на выходе выдает сумму цифр этого числа. При этом, надо запретить пользователю вводить отрицательные числа. (защита от дурака). Сначала напишем основную часть программы.Считаем число и  посчитаем сумму его цифр.Листинг 9.4#include <stdio.h>int main(){      int A, Vvedite chislo:");      scanf("%d",&A); //считываем число//начинаем последовательно получать каждую последнюю цифру числа.       while (A>0)      {            summa chifr etogo chisla: %d\n", sum); return(0);}Эта программа работает. Теперь добавим в неё так называемую "защиту от дурка". Чтобы пока не введешь правильные данные,программа не будет работать. Для этого используем цикл do-while.И будем повторить ввести ввод до тех пор, пока не будет введено положительное число.Получим следующий код.Листинг9.5#include <stdio.h>int main(){int A, Vvedite chislo:");    scanf("%d",&A); //считываем число} summa chifr etogo chisla: %d\n", sum);return(0);}На этом сегодня всё. Домашнего задания к этому уроку не будет. Так как мне надо разобраться с той кучей вопросов, которые накопились за это время в комментариях. Задание для практической работы.Дано целое число N (вводится с клавиатуры), причем N<30000. По заданному N вывести через пробел все (натуральные, т.е. 0, 1, 2, 3, ... ) степени числа 2, которые меньше N.Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Хнач. до Хкон.с шагом dх.  Функция F должна принимать действительное значение, если выражение (Ац^Вц)|(Ац^Сц) не равно нулю, и целое значение в противном случае. Через Ац, Вц и Сц обозначены целые части значений a,b,c. Значения a,b,c, Хнач., Хкон., dx ввести с клавиатуры. Пока что не обязательно к выполнению.!Дано натуральное число N. Напишите программу которая считает сумму цифр этого числа.Дано натуральное число N. Выведите его представление в двоичном виде в обратном порядке.Если Вам понравился этот урок, расскажите о нем вашим друзьям. В этом  Вам могут помочь кнопки основных социальных сетей, расположенные ниже. Вам остается всего лишь кликнуть по любой из них.
Просмотров: 404 | Добавил: admin | Рейтинг: 0.0/0
Всего комментариев: 0
avatar
Форма входа
Календарь
«  Июль 2014  »
ПнВтСрЧтПтСбВс
 123456
78910111213
14151617181920
21222324252627
28293031
Архив записей