Сделать программу в pascal.Пользователь вводит радиус окружности и стороны прямоугольника...

0 голосов
50 просмотров

Сделать программу в pascal.Пользователь вводит радиус окружности и стороны прямоугольника , программа в графическом режиме выводит нам получившийся прямоугольник (вписанный , описанный, или посторонний), и над ним надпись (окружность вписана/описана /посторонняя


Информатика (12 баллов) | 50 просмотров
Дан 1 ответ
0 голосов

Будет работать только в Pascal.ABC. Желательно вводите величины от 30-50, так как всё измеряется в пикселях.

Program Zagacha;
Uses GraphABC;
Var r, a, b: Integer;
Begin 
WriteLn('Введите значение r'); 
ReadLn(r); 
WriteLn('Введите значение a'); 
ReadLn(a); 
WriteLn('Введите значение b'); 
ReadLn(b); 
If ((r + a + b) < 30) Or ((r + a + b) > 200) Then 
Begin 
r := 50;
a := 100;
b := 100;
End; 
DrawCircle(Round(Window.Width / 2), Round(Window.Height / 2), r);
DrawRectangle(Round((Window.Width - a) / 2), Round((Window.Height - b) / 2), Round((Window.Width + a) / 2) + 1, Round((Window.Height + b) / 2) + 1);  
If (a = b) And (a * b = 4 * r * r) Then 
TextOut(Round(Window.Width / 2 - 50), 10, 'Окружность вписана') 
Else If (a = b) And (a * b = 2 * r * r) Then 
TextOut(Round(Window.Width / 2 - 50), 10, 'Окружность описана') 
Else 
TextOut(Round(Window.Width / 2 - 50), 10, 'Окружность посторонняя')
End.

(2.8k баллов)
0

Вроде бы подходит и выводит, а рисунок говорит об обратном.

0

Я же писал, вводить большие значения, от 50 и выше. Это не моя вина.

0

Изменил код, теперь вроде правильно рисует, пробуйте.

0

в фри паскале работать будет ?

0

А вы можете добавить коэфицент размера, т.е если какая-то из фигур превышает размеры экрана , то она обе фигуры уменьшает в одинаковых пропорциях, или увеличивает(если они маленькие слишком)

0

Так уже исправно)

0

Нужно на Фри паскале

0

Теперь, когда значение будет большим или меньшим допустимого, рисоваться будут фигуры среднего размера, но только типа "окружность вписана".

0

СДЕЛАЙТЕ ТАКУЮ ПРОГРАММУ ТОЛЬКО ВО FRee Pascal

0

Не имею такой возможности.