Составление программы для выбора прямых из множества прямых, заданных коэффициентами уравнения

Страницы работы

Содержание работы

Содержательная постановка задачи

Задание № 12

Из мн-ва прямых М , заданных коэффиентами уравнения : Ax+By+C=0 , выбрать прямые :

1 – параллельные Оси ОХ ;

2 – Все пары взаимно перпендикулярных прямых ;

3 – Из взаимно перпенд. Выбрать те , которые образуют с Осью ОХ угол меньше заданного ;

Доп. Задание – посчитать общее кол-во слов ‘ Writeln ’ , в составленной программе ;

Допущения : А,В,С – любые числа ;

                       Угол – любой , в градусах ;

Пример :  Задано N прямых ( Ax+By+С=0 ) и угол , выполнить программу :

#

A

B

C

1

3

6

3

2

-6

3

0

3

0

2

-5

4

-4

2

-9

5

3

9

9

6

0

3

15

7

2

0

2

α

45

y

 

2x+2=0

 

3x+6y+3=0

 

3x+9y+9=0

 

-4x + 2y - 9 =0

 

-6x+3y=0

 

2y - 5=0

 

3y+15=0

 

x

 

Пункт 1 : параллельность Оси ОХ

                 Прямая № 3 || Оси ОХ

                 Прямая № 6 || Оси ОХ

Пункт 2 : пары взаимно перпендикулярных прямых

                 Прямая № 1 перпендикулярна прямой № 2

                 Прямая № 1 перпендикулярна прямой № 4

                 Прямая № 3 перпендикулярна прямой № 7

                 Прямая № 6 перпендикулярна прямой № 7

Пункт 3 : Сравнение углов :

                Угол м/у прямой № 1 и Осью ОХ < заданного

                Угол м/у прямой № 3 и Осью ОХ < заданного

                Угол м/у прямой № 6 и Осью ОХ < заданного

Доп.       : … - число повторений Writeln

Формальная постановка задачи

Задается формула прямой Ax+By+C=0  à преобразуем ее в стандартную форму à у = kx+b

è k = (-A/B)

     b = (-C/B)

(Для удобства решения задачи т.к. основное мн-во формул представлено именно для этой формы)

Пункт 1 : прямая параллельна оси ОХ , если у = Const (у = kx+b)à следовательно k = 0 ;

Пункт 2 : две прямые перпендикулярны , если k(1-ой) = -1/k(2-ой) , не зависимо от b ;

Пункт 3 : Угол м/у прямой и Осью ОХ α = | tg(k) | = | tg(-A/B) | ;

Разработка Алгоритма

Пункт 1 : В основу определения параллельности прямой Оси ОХ , лежит циклический процесс рассмотрения прямых ( их коэффициентов ) , с заранее известным числом повторений  n – кол-во прямых . Из заданных нам коэффициентов , в данном пункте , нас интересуют тока А и В . Условием параллельности прямой Оси ОХ , является у = Const (у = kx+b) , следовательно              (-А/В) = 0  т.е. если А = 0  И  В <> 0 , то прямая Ax+By+С=0 ( с соотв. Коэффициентами  ) парал – лельна Оси ОХ . Определяем значения А и В . Параллельно выписываем подходящие прямые на экран или в файл , в зависимости от выбора метода вывода .

Пункт 2 : ( 1-ый этап ) , если А,В <> 0 ;

В основу определения перпендикулярных  прямых , лежит циклический процесс сравнения коэффициента ‘k’  i-ой прямой , с коэффициентами ‘k’ последующих прямых . Цикл с заранее известным числом повторений – ( n - 1 ) , где n – кол-во прямых . Для нахождения прямых пер – пендикулярных i-ой прямой , мы находим коэффициент k = (-A/B) этой прямой , и последова - тельно сравниваем его со всеми коэффициентами ‘k’ , следующих за прямой ‘i’ прямых . Две прямые перпендикулярны , если k(1-ой) = -1/k(2-ой) . Сравниваем и параллельно выписываем подходящие прямые на экран или в файл , в зависимости от выбора метода вывода .

                ( 2-ой этап ) , если А или В = 0 ;

Если А или В = 0 , то мы не можем вычислить коэффициент k одной из сравниваемых прямых т.к. на 0 делить нельзя . Если коэффициент прямой А или В = 0 , то эта прямая параллельна одной из осей , то ей перпендикулярна прямая параллельная др оси è прямой с коэф. А = 0 , перпендику – лярна прямая с коэф. В = 0 и наоборот . При рассмотрении прямых , наткнувшись на А = 0 , мы ищем в последующих прямых , прямую с коэф. В = 0 и наоборот . Параллельно выписываем подходящие прямые на экран или в файл , в зависимости от выбора метода вывода .

Похожие материалы

Информация о работе