ЗАРАНЕЕ ОГРОМНОЕ Ниже приведена программа:
var s,k: integer;
begin
readln(s);
readln(t);
if (s < 1) and (t < 2)
then
writeln ('YES')
else
writeln ('NO')
end.
Было выведено 9 запусков программы, при которых в качестве значений переменных вводились следующие пары чисел (s, t):
(3, 5); (4, 3); (4, −5); (0, 7); (0, −2); (−2, 1); (−2, 5); (−2, −4); (1, 2).
Сколько было запусков, при которых программа напечатала «NO»? В качестве решения выпишите все пары запусков и напротив каждого укажите вывод: YES или NO. В ответе укажите количество.
2. Составьте программу, выводящую значение вещественной переменной x, равной значению выражения 2(a+b)/a^2,где a и b – целочисленные переменные, их значения вводятся с клавиатуры.
3. Целое положительное число вводится с клавиатуры. Нужно проверить является ли оно четным.
4. Напишите программу, которая вычисляет сумму n-первых целых положительных чисел S = 1 + 2 + 3 + … + n. Количество суммируемых чисел n должно вводиться пользователем во время работы программы.
Первый запуск (3, 5):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 3, а во вторую переменную t будет записано значение 5. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются ложными, потому что 3 не меньше 1 и 5 не меньше 2. Следовательно, в данном запуске программа напечатает "NO".
Второй запуск (4, 3):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 4, а во вторую переменную t будет записано значение 3. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются ложными, потому что 4 не меньше 1 и 3 не меньше 2. Следовательно, в данном запуске программа напечатает "NO".
Третий запуск (4, -5):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 4, а во вторую переменную t будет записано значение -5. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются ложными, потому что 4 не меньше 1 и -5 не меньше 2. Следовательно, в данном запуске программа напечатает "NO".
Четвертый запуск (0, 7):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 0, а во вторую переменную t будет записано значение 7. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются ложными, потому что 0 не меньше 1 и 7 не меньше 2. Следовательно, в данном запуске программа напечатает "NO".
Пятый запуск (0, -2):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 0, а во вторую переменную t будет записано значение -2. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются истинными, потому что 0 меньше 1 и -2 меньше 2. Следовательно, в данном запуске программа напечатает "YES".
Шестой запуск (-2, 1):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение -2, а во вторую переменную t будет записано значение 1. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются истинными, потому что -2 меньше 1 и 1 меньше 2. Следовательно, в данном запуске программа напечатает "YES".
Седьмой запуск (-2, 5):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение -2, а во вторую переменную t будет записано значение 5. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются истинными, потому что -2 меньше 1 и 5 меньше 2. Следовательно, в данном запуске программа напечатает "YES".
Восьмой запуск (-2, -4):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение -2, а во вторую переменную t будет записано значение -4. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, оба сравнения являются истинными, потому что -2 меньше 1 и -4 меньше 2. Следовательно, в данном запуске программа напечатает "YES".
Девятый запуск (1, 2):
В программе есть строка "readln(s);" и "readln(t);" перед условием. Значит, в первую переменную s будет записано значение 1, а во вторую переменную t будет записано значение 2. Далее, в условии if нужно проверить два сравнения: (s < 1) и (t < 2). В данном случае, первое сравнение является ложным, потому что 1 не меньше 1, но второе сравнение является истинным, потому что 2 меньше 2. Следовательно, в данном запуске программа напечатает "NO".
В итоге, программа напечатала "NO" в следующих запусках: 1, 2, 3, 4, 9. То есть, "NO" было напечатано 5 раз.
2. Вот программа, выводящая значение вещественной переменной x, равной значению выражения 2(a+b)/a^2, где a и b – целочисленные переменные, их значения вводятся с клавиатуры:
var a, b: integer;
x: real;
begin
readln(a);
readln(b);
x := 2*(a+b)/(a*a);
writeln(x);
end.
3. Вот программа, проверяющая, является ли введенное с клавиатуры целое положительное число четным:
var num: integer;
begin
readln(num);
if (num > 0) and (num mod 2 = 0) then
writeln("Число является четным.")
else
writeln("Число не является четным.")
end.
4. Вот программа, вычисляющая сумму n-первых целых положительных чисел S = 1 + 2 + 3 + … + n, где значение n вводится с клавиатуры:
var n, sum: integer;
begin
readln(n);
sum := 0;
for i := 1 to n do
sum := sum + i;
writeln(sum);
end.
Определите, какое именно значение n стоит использовать в формуле.