Программирование паскаль. Где-то ошибка. Даже просто уже посреди программы понавставлял write(OutPut, '2'); и даже в самом конце оно есть, но файл output все равно пустым создаётся, без текста.
var
s, y, h, n, x: Integer;
InPut, OutPut: Text;
begin
assign(InPut,'c:\input.txt');
assign(OutPut,'c:\output.txt');
reset(InPut);
rewrite(OutPut);
read(InPut, y);
write(OutPut, '1');
for var i:=1 to y do
begin
read(InPut, s);
if s mod 2 = 0 then write(OutPut, s, ' ');
end;
writeln(OutPut);
reset(InPut);
read(InPut, y);
for var i:=1 to y do
begin
read(InPut, s);
if s mod 2 <> 0 then writeln(OutPut);
write(OutPut, s, ' ');
end;
for h:=1 to y do begin
if s mod 2=0 then
n:=n+1;
if s mod 2<>0 then
x:=x+1;
end;
if (n>x) then writeln(OutPut, 'YES')
else writeln(OutPut, 'NO');
write(OutPut, '2');
close(InPut);
close(OutPut);
end.
-32768 .. 32768 (кроме 0)
Объяснение:
16 битами можно закодировать различных значений.
По условию кодируются положительные и отрицательные числа в равном количестве, так что и тех и других половина, по 65536 : 2 = 32768 чисел.
Получается диапазон -32768 .. 32768, из которого убрали нуль.
Обычно всё же ноль в представлениях целых чисел есть. Если использовать прямой код для записи чисел, то получится как раз одинаковое количество положительных и отрицательных чисел, но два нуля (положительный и отрицательный). Для этого случая диапазон будет -32767..32767.
В первой четверти (x > 0, y > 0) заштрихована четверть окружности с началось в центре координат и радиусом 6. Уравнение этой окружности , тогда точка попадает в заштрихованную область, если . Сюда же можно добавить и отрезок от 0 до 6 по оси абсцисс.
В четвертой четверти (x > 0, y < 0) заштрихован треугольник. Граница проходит через точки (0, -6) и (6, 0), уравнение - линейная функция y = x - 6. Сюда будут попадать точки, для которых y > x - 6.
Собираем условия вместе и можно писать программу.
Код (PascalABC.NET):
begin
var (x, y) := ReadReal2;
if (x > 0) and (y >= 0) and (x * x + y * y < 36) then
write('true')
else if (x > 0) and (y < 0) and (y > x - 6) then
write('true')
else
write('false')
end.
Код (Python 3):
x, y = map(float, input().split())
if x > 0 and y >= 0 and x * x + y * y < 36:
print('true')
elif x > 0 and y < 0 and y > x - 6:
print('true')
else :
print('false')
Пример ввода:
3 5
Пример вывода:
true