Разветвляющийся циклический процесс

Автор: Пользователь скрыл имя, 24 Декабря 2012 в 17:36, контрольная работа

Краткое описание

Даны действительные положительные числа X ,Y , Z .
1) Выяснить, существует ли треугольник с длинами сторон X , Y , Z .
2) Если треугольник существует, то ответить, является ли он остроугольным .

Файлы: 1 файл

Лабораторная №1.docx

— 113.85 Кб (Скачать)

                           1)    Постановка задачи:

Даны действительные положительные числа  X ,Y , Z .

  1. Выяснить, существует ли треугольник с длинами сторон X , Y , Z .

2) Если треугольник  существует, то ответить, является ли он остроугольным .

2) Математическая модель:

Используем  следующие математические положения  и формулы:

1. Если X+Y>Z , Z+X>Y , Z+Y>X , следовательно треугольник построить можно.

2. По теореме  Пифагора : если X2+Y2=Z2 , то треугольник прямоугольный , из этого следует что если X2+Y2>Z2  или Z2-Y2-X <0 , то треугольник остроугольный и наоборот если Z2-Y2-X2>0 , то тупоугольный.

      3) Таблица внешних спецификации:

Имя

Назначение

Тип

Ед. изм.

ОДЗ

 1

X

Отрезок 1

Вещ.

      ------

[0,100]

 2

Y

Отрезок 2

Вещ.

      ------

[0,100]

 3

Z

Отрезок 3

Вещ.

      ------

 [0,100]

 4

Soob 1

Сообщение

Текст

      ------

2 вида

 5

Soob 2

Сообщение

Текст

      ------

2 вида

6

Soob 3

Сообщение

Текст

    ------

1 вид


Сообщения:

1) Soob 1.1 ‘ Треугольник построить можно и ‘

     Soob 1.2 ‘Треугольник построить нельзя ‘

2) Soob 2.1 ‘ он будет тупоугольный ‘

    Soob 2.2 ‘ он будет остроугольный ‘

3) Soob 3   ‘ выход за ОДЗ ‘

 

 

 

Начало


                            



X, Y, Z



       


Усл. 1


             нет       да


 

Усл. 2


                 нет           


                             


Soob 1.2


 

Soob 1.1


                           да



Soob 3


Усл. 3


 

 нет да


Усл. 4


 

n:=x2-y2-z2



    нет да


n:=y2-z2-x2


 

n:=z2-x2-y2


 



 


Усл. 5


 нет да


Soob 2.1


Soob 2.2


 


 



    конец


 

 


 

Усл. 1 ‘ Можно построить треугольник ?  ‘

Усл.2 ‘ Соответствует ли ОДЗ ? ‘

Усл. 3 ‘ X гипотенуза ? ‘

Усл. 4 ‘ Y гипотенуза ? ‘

Усл. 5 ‘ n>0 ? или треугольник тупоугольный ? ‘ 

                                            5) Проектирование тестов:

№ текста

                       Входные данные

Выходные

Примечания

X

Y

Z

      Soob

 

1

0

1

5

Soob 1.2

Треугольник построить нельзя

2

         3

2,5

6

Soob 1.2

Треугольник построить нельзя

3

3

4

6

Soob  1.1 , 2.1

Треугольник тупоугольный

4

4

4,8

3

Soob  1.1 , 2.2

Треугольник остроугольный

     5

      99

      100

   101

Soob 3

Выход за ОДЗ


                         6) Кодирование алгоритма на языке Паскаль: program program my ;

 var

x,y,z,n :real ;

begin

    writeln ('Введите x ,y ,z ');

    readln (x,y,z);

    if (x>0) and (y>0) and(z>0) and (x+y>z) and (x+z>y) and (y+z>x) then

        begin

          if (x<=100) and (y<=100) and ( z<=100) then

            begin

              writeln ( 'Треугольник построить можно  и ' );

              if (x>=z) and (x>=y) then

               n:=(x*x-y*y-z*z)

              else

              if (y>=z) and (y>=x) then

               n:=(y*y-z*z-x*x)

              else

                n:=(z*z-x*x-y*y);

              if (n>0) then

                writeln ( 'он будет тупоугольный ')

              else Writeln ('он будет остроугольный  ' ) ;

            end

          else writeln ( ' выход за ОДЗ ')

        end

    else

           writeln ('Треугольник построить нельзя!') ;

           readln;

end.

 

 


Информация о работе Разветвляющийся циклический процесс