Написать программу построения графика функции у= sqrt 3*x.(pascalabc)(программа не работает) uses graphabc; 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); for i: = -450 to 45 do begin x: = 0.03*i; y: =f(x); setpixel (round (300+10*x), round (240-10*y), clgreen); end; textout (300,10, 'y=sqrt(3x)'); end.

anyanaffanya anyanaffanya    2   31.07.2019 07:50    2

Ответы
миша1089 миша1089  28.09.2020 13:33
Uses graphabc;
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.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика