русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Оператор if


Дата добавления: 2015-07-09; просмотров: 450; Нарушение авторских прав


 

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

Оператор if имеет следующую общую форму записи:

 

if (cond_expression)

TRUE_statement

[else

FALSE_statement]

 
 


FALSE

       
   
 
 

 


TRUE

 
 

 


При выполнении оператора if сначала вычисляется логическое выражение cond_expression. Если результат ИСТИНА (любое отличное от нуля значение), выполняется оператор TRUE_statement. Если результат логического выражения ЛОЖЬ (равен 0), то выполняется оператор FALSE_statement.

Если ключевое слово else отсутствует и результат логического выражения ЛОЖЬ, то в этом случае оператор TRUE_statement пропускается, а управление передается на следующий после if оператор.

Операторы TRUE_statement и FALSE_statement сами могут быть операторами if, образуя так называемые вложенные if. Компилятор интерпретирует вложенные if, сопоставляя каждое из ключевых слов else с последним встретившимся словом if, не имеющим “своего” else. Соответствие ищется в пределах блока, в который заключено слово if. Внутренние и внешние блоки при этом не рассматриваются. Если соответствия для if не найдено, компилятор полагает, что if не имеет ветви else.

 

Пример 4_1. Использование оператора if.

#include "stdafx.h"

using namespace System;

int main()

{ int a, b;

Console::Write("\nВведите значение b= ");

b = Convert::ToInt32(Console::ReadLine());

if (b > 10)

a = 100;

else

if (b == 10)

a = 10;

else

a = 5;

Console::WriteLine("Значение переменной a = " + a);

Console::ReadLine();

return 0;



}

Результат работы программы (при вводе значения 3) :

Введите значение b= 3<Enter>

Значение переменной a = 5

Результат работы программы (при вводе значения 23) :

Введите значение b= 23 <Enter>

Значение переменной a = 100

Результат работы программы (при вводе значения 10) :

Введите значение b= 10 <Enter>

Значение переменной a = 10

 

Пример 4_2. Вложенные if:

#include "stdafx.h"

using namespace System;

 

int main(array<System::String ^> ^args)

{ int a = 1, b = 10;

if (a == 1)

if (b == 1)

Console::WriteLine("\na=1, b = 1 ");

else

Console::WriteLine("\nb не равно 1");

Console::WriteLine("Значение переменной a = " + a);

Console::ReadLine();

return 0;



}

Результат работы программы:

b не равно 1

Значение переменной а = 1

 

В результате выполнения этой программы на экран будет выводиться строка “a не равно 1”, хотя на самом деле a=1. Ошибка происходит потому, что компилятор сопоставляет if с ближайшим else (то есть со 2-м if). Ошибку можно исправить, поставив фигурные скобки, ограничивающие блок.

 

 

Пример 4_3. Исправленная предыдущая программа.

#include "stdafx.h"

using namespace System;

int main()

{

int a = 1, b = 10;

if (a == 1)

{

if (b == 1)

Console::WriteLine("\na=1, b = 1 ");

}

else

Console::WriteLine("\n b не равно 1");

Console::WriteLine("Значение переменной a = " + a);

Console::ReadLine();

return 0;



}

Результат работы программы:

Значение переменной а = 1

 



<== предыдущая лекция | следующая лекция ==>
Операция sizeof | Оператор switch


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.8 сек.