Есть ответ 👍

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

148
156
Посмотреть ответы 2

Ответы на вопрос:


Прежде чем писать программу, попробуем ее формализовать. мы знаем, что периметр прямоугольника равен р = 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.
Bogura
4,4(79 оценок)

Компьютерная мышь вот такие дела

Популярно: Информатика