Новая Школа - онлайн-школа подготовки к ЕГЭ
Задача Задача №1391157
А
Аноним
04 сентября 2024 17:53 · публичный вопрос
А
Аноним

Составь программу в паскаль по нахождению площади ромба трёх видов разветвляющийся линейный цикличный

Ответ нейросети
04 сентября 2024 17:53

Конечно! Давай создадим программу на языке Pascal для нахождения площади ромба с использованием трех различных структур: разветвляющейся, линейной и циклической. Площадь ромба можно вычислить по формуле:

  1. Если известна длина стороны \( a \) и высота \( h \): \( S = a \cdot h \)
  2. Если известны диагонали \( d1 \) и \( d2 \): \( S = \frac{d1 \cdot d2}{2} \)

1. Линейная программа

program AreaOfRhombusLinear;
var
    a, h, d1, d2: real;
    choice: integer;
    area: real;
begin
    writeln('Выберите метод расчета площади ромба:');
    writeln('1 - По стороне и высоте');
    writeln('2 - По диагоналям');
    readln(choice);

    case choice of
        1: begin
            writeln('Введите длину стороны ромба (a):');
            readln(a);
            writeln('Введите высоту ромба (h):');
            readln(h);
            area := a * h;
            writeln('Площадь ромба: ', area:0:2);
        end;
        2: begin
            writeln('Введите длину первой диагонали (d1):');
            readln(d1);
            writeln('Введите длину второй диагонали (d2):');
            readln(d2);
            area := (d1 * d2) / 2;
            writeln('Площадь ромба: ', area:0:2);
        end;
    else
        writeln('Неправильный выбор.');
    end;
end.

2. Разветвляющаяся программа

program AreaOfRhombusConditional;
var
    a, h, d1, d2: real;
    choice: integer;
    area: real;
begin
    writeln('Выберите метод расчета площади ромба:');
    writeln('1 - По стороне и высоте');
    writeln('2 - По диагоналям');
    readln(choice);
    
    if choice = 1 then
    begin
        writeln('Введите длину стороны ромба (a):');
        readln(a);
        writeln('Введите высоту ромба (h):');
        readln(h);
        area := a * h;
        writeln('Площадь ромба: ', area:0:2);
    end
    else if choice = 2 then
    begin
        writeln('Введите длину первой диагонали (d1):');
        readln(d1);
        writeln('Введите длину второй диагонали (d2):');
        readln(d2);
        area := (d1 * d2) / 2;
        writeln('Площадь ромба: ', area:0:2);
    end
    else
        writeln('Неправильный выбор.');
end.

3. Циклическая программа

program AreaOfRhombusLoop;
var
    a, h, d1, d2: real;
    choice: integer;
    area: real;
begin
    repeat
        writeln('Выберите метод расчета площади ромба:');
        writeln('1 - По стороне и высоте');
        writeln('2 - По диагоналям');
        writeln('0 - Выход');
        readln(choice);
        
        case choice of
            1: begin
                writeln('Введите длину стороны ромба (a):');
                readln(a);
                writeln('Введите высоту ромба (h):');
                readln(h);
                area := a * h;
                writeln('Площадь ромба: ', area:0:2);
            end;
            2: begin
                writeln('Введите длину первой диагонали (d1):');
                readln(d1);
                writeln('Введите длину второй диагонали (d2):');
                readln(d2);
                area := (d1 * d2) / 2;
                writeln('Площадь ромба: ', area:0:2);
            end;
        end;
    until choice = 0;
end.

Эти три программы позволяют находить площадь ромба различными способами. Вы можете скопировать и запустить каждую из них в среде разработки Pascal, такой как Free Pascal или Turbo Pascal.