Содержательная постановка задачи
Задание № 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 |
|
|
|
|
|
|
|
|
|
Пункт 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 и наоборот . Параллельно выписываем подходящие прямые на экран или в файл , в зависимости от выбора метода вывода .
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.