Можно составить уравнение окружности, посчитав радиус: x^2 + y^2 = 36 (6^2). И если сумма слева будет меньше или равна 36, то точка будет лежать внутри круга. Но у нас ещё первая четверть не закрашена. В таком случае либо x <= 0 (а y может иметь любой знак), либо наоборот.
Итак, решение (на Паскале):
var
x, y: real;
begin
writeln('Введите координаты точки x и y соответственно:');
readln(x, y);
if (x <= 0) or (y <= 0) then
if x * x + y * y <= 36 then
writeln('Принадлежит')
else
writeln('Не принадлежит')
else
writeln('Не принадлежит')
end.
Program Maslovaalisa;
const n=7;
var last: array[1..n] of integer;
var new: array[1..n] of integer;
i: integer;
begin
writeln('********************************');
for i:=1 to n do
begin
writeln('Введите температуру за ',i,'-й день недели: ');
write(' - в прошлом году ');readln(last[i]);
write(' - в этом году ');readln(new[i]);
end;
writeln('*** alphaues is thinking... ***');
writeln();
for i:=1 to n do
begin
if last[i] > new[i] then
writeln('В ',i,'-й день недели в прошлом году было теплее, чем в этом. Бр-р-р...')
else
if last[i] < new[i] then
writeln('В ',i,'-й день недели в прошлом году было холоднее, чем в этом. Уф-ф-ф...')
else
writeln('Удивительно! В ',i,'-й день недели в прошлом году была такая же температура, как в этом!');
writeln('********************************');
end;
end.
<span>А: если лягушонок зеленый, то он веселый;
Б: все
пестренькие лягушата сидят на берегу.
1.Верно, т.к. А.
2.Может быть верно, т.к. не сказано, где сидят зелёные лягушата
3.Может быть верно, т.к. не сказано, что зелёные лягушата не могут все сразу не быть на берегу, и не сказано, что пёстренькие не могут все быть грустными.
4.Может быть верно, т.к. условия не исключают, что пёстренькие все сразу могут быть грустными.
5.Может быть верно, т.к. не сказано, что пёстренькие должны быть грустными.
6.Может быть верно, т.к. не сказано, где должны сидеть зелёные лягушата
7.Может быть, т.к. не сказано, что пёстренькие лягушата не могут быть все сразу грустными.
8.Не может быть верно, т.к. Б
9.Может быть верно, т.к. условия не исключают, что зелёные лягушата не могут все сразу не находится</span> на берегу.
Представим, что мы знаем ответ на вопрос "чему равна сумма всех выписанных чисел при выполнении вызова F(n)" для всех n < k. Попробуем понять, как найти ответ для n = k.
Что делает F(n)? Читаем текст программы: сначала выводит n, а потом (если n > 0) запускает F(n - 1) и F(n - 3). Обозначим S(n) - сумму всех чисел после вызова F(n), тогда (при n > 0)
S(n) = n + S(n - 1) + S(n - 3)
Для неположительных n получаем, что S(n) = n (т.к. F(n) просто выводит n и завершает работу, не запуская никаких других F).
Остается только расписать, чему равно S(5)...
S(-2) = -2
S(-1) = -1
S(0) = 0
S(1) = 1 + S(0) + S(-2) = 1 + 0 - 2 = -1
S(2) = 2 + S(1) + S(-1) = 2 - 1 - 1 = 0
S(3) = 3 + S(2) + S(0) = 3 + 0 + 0 = 3
S(4) = 4 + S(3) + S(1) = 4 + 3 - 1 = 6
S(5) = 5 + S(4) + S(2) = 5 + 6 + 0 = 11
Ответ. 11.
______________
При исследовании рекурсивных алгоритмов бывает полезно понять, сколько вызовов функций делает программа (например, если рисовать дерево вызовов, это будет показывать количество "стрелочек" на этом дереве). Представим себе, что мы стали выполнять алгоритм на бумаге, попробуем понять, сколько чисел придется выписывать.
Если #(N) - число вызовов процедуры F при наивном вычислении F(N). Понятно, что #(N) = #(N - 1) + #(N - 3) (при N <= 0 #(N) = 1). Не задаваясь целью получить точную формулу для #(N), получим только оценку (на самом деле, весьма показательную).
Очевидно, что #(N - 1) >= #(N - 3), тогда #(N) >= 2 * #(N - 3).
Так как #(0) = 1, то #(3) >= 2 * #(0) = 2, #(6) >= 2 * #(3) >= 2^2, #(9) >= 2 * #(6) >= 2^3, и вообще #(3N) >= 2^N
Отсюда можно предположить, что #(N) растет не медленнее, чем 2^(N/3) >= 1.25^N. Если 1,25^N кажется медленно растущей функцией - это вовсе не так, для N = 100 (это немного, наверно?) получим число, большее миллиарда. Так что если не запоминать промежуточные результаты, результат будет считаться ооочень долго. S(N) также растет быстро, но это уже другая проблема.
Если 1 символ равен 1 байту, то:
1) Информационный объем одной страницы: 30 * 60 = 1800 байт
2) (50 * 1024) / (30 * 60) = 28.4. Значит, понадобится 29 листов