x := 0; repeat x := x + 0.03; y := f(x); SetPixel(round(300 + 10 * x), round(240 - 10 * f(x)), clGreen); until 300 + 10 * x > 620 end.
с апгрейдом
uses graphabc; const scale = 20;
var i: integer; x, y: real;
function f(x: real): real; begin if x < 0 then f := 0 else f := sqrt(3 * x); end;
begin Window.Init(0, 0, 1000, 1000, clMoneyGreen); Window.CenterOnScreen;
Line(0, Window.Height div 2, Window.Width, Window.Height div 2); Line(Window.Width div 2, 0, Window.Width div 2, Window.Height); TextOut(Window.Width div 2 + 5, 10, 'y=sqrt(3x)');
x := -1; repeat SetPixel(round(Window.Width div 2 + scale * x), round(Window.Height div 2 - scale * f(x)), clRed); x := x + 0.03; until scale * x > Window.Width div 2 end.
Преобразуем ( применяем формулу a→b=¬a+b) (x&15 =0) ∪(x&35=0)∪(x&A≠0) =1 ( то есть, в данном случае, если Х при поразрядном умножении на 15 и 35 не даёт 0, то при умножении на А тоже не даёт 0) 15 (10сс) =1111 (2сс); 35(10сс) = 100011(2сс) Проверяем поразрядно: (в 2сс) x=1 x&1111 =0 x&100011=0 ( x&A≠0) =1 x=10 =0 =0 =1 x=100 =0 =1 = 0 или1 x=1000 =0 =1 = 0 или1 и так далее
В первых двух строках x&1111 ложно, x&100011 ложно, значит х&А обязательно должно быть истинно. Число А, логическое произведение которого на числа x=1 и х=10 (в2сс) не даёт 0 есть число 11(2сс) 11 (2сс) = 3 (10сс) ответ 3
var
i: integer;
x, y: real;
function f(x: real): real;
begin
f := sqrt(3 * x);
end;
begin
Line(0, 240, 620, 240);
Line(300, 0, 300, 900);
TextOut(310, 10, 'y=sqrt(3x)');
x := 0;
repeat
x := x + 0.03;
y := f(x);
SetPixel(round(300 + 10 * x), round(240 - 10 * f(x)), clGreen);
until 300 + 10 * x > 620
end.
с апгрейдом
uses graphabc;
const
scale = 20;
var
i: integer;
x, y: real;
function f(x: real): real;
begin
if x < 0 then
f := 0
else
f := sqrt(3 * x);
end;
begin
Window.Init(0, 0, 1000, 1000, clMoneyGreen);
Window.CenterOnScreen;
Line(0, Window.Height div 2, Window.Width, Window.Height div 2);
Line(Window.Width div 2, 0, Window.Width div 2, Window.Height);
TextOut(Window.Width div 2 + 5, 10, 'y=sqrt(3x)');
x := -1;
repeat
SetPixel(round(Window.Width div 2 + scale * x), round(Window.Height div 2 - scale * f(x)), clRed);
x := x + 0.03;
until scale * x > Window.Width div 2
end.
(x&15 =0) ∪(x&35=0)∪(x&A≠0) =1
( то есть, в данном случае, если Х при поразрядном умножении на 15 и 35 не даёт 0, то при умножении на А тоже не даёт 0)
15 (10сс) =1111 (2сс); 35(10сс) = 100011(2сс)
Проверяем поразрядно: (в 2сс)
x=1 x&1111 =0 x&100011=0 ( x&A≠0) =1
x=10 =0 =0 =1
x=100 =0 =1 = 0 или1
x=1000 =0 =1 = 0 или1
и так далее
В первых двух строках x&1111 ложно, x&100011 ложно,
значит х&А обязательно должно быть истинно. Число А, логическое произведение которого на числа x=1 и х=10 (в2сс) не даёт 0 есть число 11(2сс)
11 (2сс) = 3 (10сс) ответ 3