Урок "Программирование составных условий"

Урок "Программирование составных условий"

Цель обучения:

7.4.2.2 использовать логические операции в составных условиях

Цель урока:

 


1. Введение
В программировании часто нужно проверять несколько условий одновременно. Например, можно проверить, находится ли число в определённом диапазоне или выполнены ли сразу два условия. Для этого в языке C++ используются логические операции, которые позволяют объединять простые условия в составные.


2. Логические операции
Логические операции в C++ позволяют соединять несколько условий в одно сложное выражение.

Оператор Название Описание Пример
 &&
and
Логическое И Истина (true), если оба условия верны

(a > 0) && (a < 10)
– число a больше 0 и меньше 10

true && true = true
true && false = false
false && true = false
false && false = false

||
or

Логическое ИЛИ

Истина (true), если хотя бы одно условие верно (a < 0) || (a > 10)
– число меньше 0 или больше 10

true || true = true
true || false = true
false || true = true
false || false = false
!
not
Логическое НЕ Меняет значение на противоположное

!(a > 10)
– true, если a не больше 10
!true = false
!false = true


3. Составные условия в if

В C++ составные условия используются в конструкции if, которая выполняет код, если условие истинно.

Задача 1: Проверить, находится ли число number в диапазоне чисел на промежутке [10; 10].

#include <iostream>
using namespace std;

int main() {
    int number;
    cout << "Введите число: ";
    cin >> number;
    if (number >= 10 && number <= 20) { // составное условие
        cout << "Число в диапазоне от 10 до 20." << endl;
    } else {
        cout << "Число вне диапазона." << endl;
    }
    return 0;
}

Если введённое число находится между 10 и 20 (включительно), программа выводит, что оно в диапазоне.

Задача 2. Проверка чётного числа и его положительности

#include <iostream>
using namespace std;

int main() {
    int number;
    cout << "Введите число: ";
    cin >> number;
    if (number % 2 == 0 && number > 0) { // проверка числа на чётность и положительность
        cout << "Число положительное и чётное." << endl;
    } else {
        cout << "Число не соответствует условию." << endl;
    }
    return 0;
}

При вводе числа 16, программа выведет "Число положительное и чётное.", а при вводе чисел 5, -10, 0 - выведет "Число не соответствует условию.".

Задача 3.  Проверка допустимого возраста

#include <iostream>
using namespace std;

int main() {
    int age;
    cout << "Введите ваш возраст: ";
    cin >> age;
    if (age < 0 || age > 120) { // проверка ввода некорректного возраста
        cout << "Некорректный возраст!" << endl;
    } else {
        cout << "Возраст принят." << endl;
    }
    return 0;
}


Вопросы:

  1. Какие логические операции используются в C++ для составных условий? Приведите их обозначения.
  2. Объясните, почему в выражении (a > 5 && a < 10) значение будет false, если a = 3.
  3. Напишите условие в C++, которое проверяет, является ли введённое пользователем число одновременно нечётным и отрицательным.
  4. В следующем коде найдите ошибку и исправьте её:

if (age >= 18 || age <= 65) {
    cout << "Вы трудоспособны." << endl;
}
Почему исходное условие работает неправильно?


Упражнения:

 


Задачи:

Задача 1. Разработайте программу, которая спрашивает у пользователя температуру на улице и выводит сообщение:

  • "Очень холодно" (если температура ниже -10 градусов)
  • "Прохладно" (от -10 до 10 градусов)
  • "Тепло" (от 11 до 25 градусов)
  • "Жарко" (выше 25 градусов)

Задача 2. Напишите программу, которая проверяет, можно ли по заданному возрасту купить билет в кино:

  • Детский билет (до 12 лет)
  • Обычный билет (от 12 до 60 лет)
  • Льготный билет (старше 60 лет)
Категория: Algorithms | Добавил: bzfar77 (25.02.2025)
Просмотров: 241 | Теги: and, not, составное условие, Or, && | Рейтинг: 0.0/0
Всего комментариев: 0
avatar