Аватар
Информатика, опубликовано 2018-08-22 19:42:48 by Гость

Можете объяснить за что отвечает xsearch??? program c4; var n: integer; x, y: integer; xmin, xmax: integer; xsearch: boolean; ymin, ymax: integer; i: integer; s: real; begin xsearch := true; xmin := 0; xmax := 0; ymin:=0; ymax := 0; readln(n); for i:=1 to n do begin readln(x,y); if y=0 then begin if xsearch or (xif xsearch or (x>xmax) then xmax:=x; xsearch:=false; end else if yelse if y>ymax then ymax:=y end; if (xmax>xmin) and (ymin0) then s := (xmax-xmin)*(ymax-ymin)/2 else s := 0; writeln(s); end.

Аватар
Ответ оставил Гость

Толком не понятно что делает программа учитывая то, что скорее всего она работает не верно
Исправлены искажения текста перетягиванием или еще как-то, изза чего была написала белиберда
xsearch походу указывает на то, надо ли присваивать начальное значение xmax или оно уже присвоенно

var
    n: integer;
    x, y: integer;
    xmin, xmax: integer;
    xsearch: boolean;
    ymin, ymax: integer;
    i: integer;
    s: real;

begin
    xsearch := true;
    xmin := 0;
    xmax := 0;
    ymin := 0;
    ymax := 0;
    
    readln(n);
    
    for i := 1 to n do
    begin
        readln(x, y);
        if y = 0 then begin
            if xsearch or (x > xmax) then
                xmax := x;
            xsearch := false;
        end
        else if y > ymax then ymax := y
    end;
    
    if (xmax > xmin) and (ymin 0) then
        s := (xmax - xmin) * (ymax - ymin) / 2
    else
        s := 0;
    
    writeln(s);
end.


Вопрос
Не нашли ответа?
Если вы не нашли ответа на свой вопрос, или сомневаетесь в его правильности, то можете воспользоваться формой ниже и уточнить решение. Или воспользуйтесь формой поиска и найдите похожие ответы по предмету Информатика.