Разклоняване в C
Има ситуации, когато програмата трябва да избере коя операция да извърши в зависимост от определено условие.
Например въвеждаме цяло число от клавиатурата. Ако това число е по-голямо от десет, тогава програмата трябва да извърши едно действие, в противен случай друго. Нека внедрим този алгоритъм в C++ с помощта наконструкцията за клон.
Ако стартирате тази програма, когато въведете число, по-малко от десет, ще се покаже съответното съобщение.
Ако въведеното число е по-голямо или равно на десет, ще се покаже друго съобщение.
оператор if
Операторът if се използва за извършване на някаква операция в случай, че условието е вярно. Условна конструкция в C++ винаги се записва в скоби след оператор if.
Вътре във фигурните скоби се посочва тялото на условието. Ако условието е вярно, тогава всички команди между фигурните скоби ще бъдат изпълнени.
Пример за разклонена конструкция
Той казва: „Ако променливата num е по-малка от 10, изведете съответното съобщение.В противен случай, отпечатайте друго съобщение."
Нека подобрим програмата, така че да показва съобщение, че променливата num е равна на десет:
Тук проверяваме три условия:
- Първият е, когато въведеното число е по-малко от 10
- Второто е, когато числото е 10
- И третият - когато числото е повече от десет
Имайте предвид, че във второто условие, когато проверяваме за равенство, използваме оператора за равенство — == , а не оператора за присвояване, тъй като не променяме стойността на променливата при проверка, а сравняваме текущата й стойност с числото 10.
- Ако поставите оператора за присвояване в условието, тогава при проверкаусловия, стойността на променливата ще се промени, след което това условие ще бъде изпълнено.
Всеки операторif отговаря само на един оператор else. Комбинацията от тези оператори -else if означава, че ако предишното условие не е изпълнено, тогава се проверява текущото. Ако нито едно от условията не е вярно, тогава се изпълнява тялото на оператора else.
Ако трябва да се изпълни само една команда след оператораif,else или тяхната комбинацияelse if, фигурните скоби могат да бъдат пропуснати. Предишната програма може да бъде написана по следния начин:
Този метод на писане изглежда по-компактен. Ако, когато условието е изпълнено, трябва да изпълним повече от една команда, тогава са необходими фигурни скоби. Например:
Тази програма проверява стойността на променливата num. Ако е по-малко от 10, тогава той присвоява стойност единица на променливата k. Ако променливата num е равна на десет, тогава тя присвоява стойност две на променливата k. В противен случай стойността е три. След разклоняването стойността на променливата k се показва на екрана.
Упражнявайте се добре, опитайте се да измислите свой собствен пример с разклоняване. Когато разберете, че разбирате тази тема, можете спокойно да продължите към следващия урок.