В
Все
М
Математика
А
Английский язык
Х
Химия
Э
Экономика
П
Право
И
Информатика
У
Українська мова
Қ
Қазақ тiлi
О
ОБЖ
Н
Немецкий язык
Б
Беларуская мова
У
Українська література
М
Музыка
П
Психология
А
Алгебра
Л
Литература
Б
Биология
М
МХК
О
Окружающий мир
О
Обществознание
И
История
Г
Геометрия
Ф
Французский язык
Ф
Физика
Д
Другие предметы
Р
Русский язык
Г
География
kisa1756
kisa1756
13.11.2021 06:24 •  Информатика

"составить программу для вычесления сторон прямоугольника если известны его периметр и площадь. (в паскале)" заранее . с:

Показать ответ
Ответ:
ira231006
ira231006
12.07.2020 07:45
Прежде чем писать программу, попробуем ее формализовать.
Мы знаем, что периметр прямоугольника равен Р = 2*(a+b), а площадь равна S=a*б, где a и b - две стороны прямоугольника.
Тогда b =S/a, а периметр P =2a +2b или 2a+2S/a. Отсюда
a*P = 2a² +2S. Имеем квадратное уравнение:
a²-a*P/2+S=0, решая которое относительно а (сторона прямоугольника) при известных коэффициентах P и S, получим значение сторон прямоугольника.
В программе я не проверяю, что введены именно положительные периметр и площадь, надеясь на внимательность вводящего данные.
Итак:
program storona;
uses crt;  { используем экран}
var         
  b,P,S,d,x1,x2: real;  {наши переменные}
begin
  clrscr; {чистим экран}
  write('Wwedite perimetr  P: ');
  readln(P);
  write('Wwedite ploshad S: ');
  readln(S);
  {Вычисляем дискриминант}
  b:=-P/2;
  d:= b*b - 4*S;
  if d > 0 then  {Если дискриминант >0 - все хорошо}
begin
  x1:= (-b + sqrt(d))/2;
  x2:= (-b - sqrt(d))/2;
  writeln('Storona1 = ',x1:0:2); {ответ с двумя знаками после запятой}
  writeln('Storona2 = ',x2:0:2);
end;
{Если дискриминант равен 0, то тоже неплохо: у нас квадрат}
  if d = 0 then
begin
  x1:= -(b/2);
  writeln('Storona1 = ',x1:0:2);
  writeln('Storona2 = ',x1:0:2);
end;
{Если дискриминант меньше 0, плохо, выводим сообщение}
  if d < 0 then
begin
  writeln('Ошибка в данных);
end;
  readln;
end.
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота