![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Урок 5. Задачи с простым условиемСодержание книги
Поиск на нашем сайте
Алгоритм разветвляющийся В линейных алгоритмах все команды выполняются одна за другой последовательно. Однако часто приходится выбирать тот или иной вариант действий в зависимости от некоторого условия, то есть, если условие выполняется, поступать одним способом, а если не выполняется - другим. 1. Поместить в ячейки x и y числа. В этом алгоритме в шаге 2 записано разветвление. Разветвление всегда начинается со слова ЕСЛИ, после которого обязательно записывается УСЛОВИЕ. Дальнейшая работа алгоритма определяется тем, выполняется или нет УСЛОВИЕ. У нас в качестве условия выступает сравнение содержимого ячеек x и y. if (условие) оператор_1; else оператор_2; где if (условие) оператор; Вариант программы с полным условным оператором приведен ниже: #include<stdio.h> Запишем вариант программы с использованием сокращенной формы условного оператора: #include<stdio.h>
По возможности следует избегать программирования условного оператора с else, поскольку это усложняет логику программы и может привести к неверной реализации алгоритма. Как еще можно записать условие Условие представляет из себя логическое выражение. Слово "логическое" означает, что такое выражение может принимать одно из двух значений: истина или ложь (1 или 0 соответственно). Если условие выполняется, то логическое выражение принимает значение "истина", если не выполняется - то "ложь". > больше Однако в языке Си условие может быть записано не обязательно в виде логического выражения. Это настолько гибкий язык, что любое выражение, принимающее некоторое числовое значение, может выступать в качестве условия. При этом действует правило: любое ненулевое значение является истинным, а если значение выражения равно 0, условие является ложным. int a; В этом примере значение условия больше нуля, следовательно истинно, поэтому сообщение будет выведено на экран. Можно записать даже еще проще: int a; В скобках записан оператор присваивания, значением которого является значение выражения. Оно, естественно, в нашем примере тоже истинно.
int a; Здесь в качестве условия стоит операция проверки на равенство, и условие это ложно, поскольку a не равно 2. Следовательно, соответствующий текст не будет выведен на экран. int a; А вот здесь условием является присваивание, переменная a получает значение 2, и условие получается истинным. Понятие блока операторов Если в случае выполнения условия вместо одного необходимо выполнить сразу несколько операторов, то они заключаются в фигурные скобки. Несколько операторов, заключенных в фигурные скобки, называются блоком операторов. Условный оператор с блоком оператороввыглядит следующим образом: if(условие) Рассмотрим пример. Пусть требуется написать программу, решающую линейное уравнение: k*x+b=0 (k не равно 0) Эта задача реализуется с помощью простого линейного алгоритма, решение находится по формуле x=-b/k, для работы алгоритма вводятся значения b и k. Однако есть одна тонкость: в условии говорится, что k не должно быть равно нулю. Поскольку заранее неизвестно, какие числа будут введены, надо в программе уметь отделить этот случай. Здесь как раз можно использовать условный оператор, проверяющий значение k, и в случае если k равно 0, остановить выполнение программы с помощью блока операторов. Фрагмент программного кода: if(k==0) Здесь использован еще один оператор языка Си - return. Он позволяет немедленно выйти из программы из любой ее точки. Если выход выполняется из функции main(), как в наших программах, управление передается среде Linux. Значение 0 не используется. Вложенный условный оператор В операторе if - else непосредственно после ключевых слов if и else должны следовать другие операторы. Если хотя бы один из них является оператором if, его называют вложенным. Согласно принятому в языке Си соглашению, слово else всегда относится к ближайшему предшествующему ему if. float x,y,z,max; // Выделены ячейки памяти На примере этой программы видно, как важно записывать строки кода с отступами. При этом видна вся структура программы, понятен программный код, легче обнаруживать ошибки.
Резюме В этом уроке вы познакомились со вторым типом алгоритмов - разветвляющимися алгоритмами. Они реализуются с помощью условного оператора. Условный оператор можно использовать в полной или сокращенной форме. Вопросы для самопроверки 1. Какие виды условных операторов вы знаете?
2. адания для самостоятельной работы к уроку 5 3. Во всех заданиях следует составить программу на языке Си. Задания приведены по возрастающей сложности 1. Определить максимальное и минимальное значения из двух различных вещественных чисел. 4. В каком году началась вторая мировая война?
5. 6. Написать программу, которая вычисляет оптимальный вес человека, сравнивает его с реальным и выдает рекомендацию о необходимости поправиться или похудеть. Оптимальный вес вычисляется по формуле: рост (в сантиметрах) - 100. Рекомендуемый вид экрана во время работы программы: 6. Введите в одной строке рост (в см.) и вес и нажмите <Enter>
7. 7. Даны радиус круга и сторона квадрата. У какой фигуры площадь больше?
|
||||||||||
Последнее изменение этой страницы: 2016-04-07; просмотров: 650; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.147.28.73 (0.007 с.) |