6 Задание

Шестое задание из ОГЭ по информатике называется «Программа с условным оператором» и проверяет умение анализировать программу на одном из языков программирования, содержащую условный оператор и логические операции. За решение 6 задания на экзамене вы получите 1 балл. Примерное время выполнения этого задания — 3 минуты.

Что нужно знать:

Для решения задания, которое называется «Программа с условным оператором» нужно уметь анализировать программу на одном из языков программирования, содержащую условный оператор и логические операции. Для этого нужно повторить следующие темы:

1) Логические связки. В заданиях часто встречаются сложные условия, для решения которых нужно использовать логические связки, например «и» (and), «или» (or) и «не» (not).

2) Условный оператор. В разных языках программирования условный оператор имеет свою структуру.

3) Операторы целочисленного деления. Некоторые задания содержат операции деления нацело, например получение целой части (div) и остатка от деления (mod).

4) Переменные и операторы. Переменная — величина, которая может изменять своё

значение при выполнении программы. Операторы — языковые конструкции для записи действия, выполняемого над данными.

5) Арифметические операции. Арифметические выражения могут содержать числа, переменные, арифметические операции и функции.

6) Приоритет выполнения операций. Операции одинакового приоритета выполняются в порядке записи слева направо.

Примеры

1) Ниже приведена программа, записанная на пяти языках программирования.

Бэйсик
DIM s, t AS INTEGER
 INPUT s
 INPUT t
 IF s > 10 OR t > 10 THEN
    PRINT ‘YES’
 ELSE
    PRINT ‘NO’
 ENDIF
Python
s = int(input())
t = int(input())
if s > 10 or t > 10:
    print("YES")
else:
    print("NO")
Паскаль
var s, t: integer;
begin
    readln(s);
    readln(t);
    if (s > 10) or (t > 10)
        then writeln('YES')
        else writeln('NO')
end.
Алгоритмический язык
алг
нач
цел s, t
ввод s
ввод t
если s > 10 или t > 10
    то вывод "YES"
    иначе вывод "NO"
все
кон
С++
#include <iostream>
using namespace std;
int main() {
    int s, t;
    cin >> s;
    cin >> t;
    if (s > 10 || t > 10)
        cout << "YES";
    else
        cout << "NO";
return 0;
}

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:


(1, 2); (11, 2); (1, 12); (11, 12); (–11, –12); (–11, 12); (–12, 11); (10, 10); (10, 5).


Сколько было запусков, при которых программа напечатала «YES»?


РЕШЕНИЕ

Заметим, что программа напечатает «YES», если одна из введенных переменных s или t будет больше 10. Значит, было 5 запусков, при которых программа напечатала «YES». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел:


(11, 2); (1, 12); (11, 12); (–11, 12); (–12, 11).


Ответ: 5.


2) Ниже приведена программа, записанная на пяти языках программирования.

Бэйсик
DIM s, t AS INTEGER
 INPUT s
 INPUT t
 IF s > 8 OR t > 8 THEN
    PRINT ‘YES’
 ELSE
    PRINT ‘NO’
 ENDIF
Python
s = int(input())
t = int(input())
if s > 8 or t > 8:
    print("YES")
else:
    print("NO")
Паскаль
var s, t: integer;
begin
    readln(s);
    readln(t);
    if (s > 8) or (t > 8)
        then writeln('YES')
        else writeln('NO')
end.
Алгоритмический язык
алг
нач
цел s, t
ввод s
ввод t
если s > 8 или t > 8
    то вывод "YES"
    иначе вывод "NO"
все
кон
С++
#include <iostream>
using namespace std;
int main() {
    int s, t;
    cin >> s;
    cin >> t;
    if (s > 8 || t > 8)
        cout << "YES";
    else
        cout << "NO";
return 0;
}

Было проведено 9 запусков программы, при которых в качестве значений переменных s и t вводились следующие пары чисел:


(8, 8); (9, 6); (4, 7); (6, 6); (–9, –2); (–5, 9); (–10, 10); (6, 9); (10, 6).


Сколько было запусков, при которых программа напечатала «NO»?


РЕШЕНИЕ

Заметим, что программа напечатает «NO», если обе введенные переменные s и t будут меньше или равны 8. Значит, было 4 запуска, при которых программа напечатала «NO». В качестве значений переменных s и t в этих случаях вводились следующие пары чисел:


(8, 8); (4, 7); (6, 6); (–9, –2).


Ответ: 4.


Made on
Tilda