Форум программистов, компьютерный форум, киберфорум
Наши страницы

Visual Basic

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 33, средняя оценка - 4.64
viol
#1

Оператор Select Case: определить, сколько точек пересечения имеют окружность и прямая - VB

23.10.2008, 21:58. Просмотров 3998. Ответов 1
Метки нет (Все метки)

Всем привет. Помогите, пожалуйста, решить задачку(я не лентяй, у меня не получается решить ее, наверное, потому что с математикой плохо %) ) Во-общем, вот само условие:

Определить, сколько точек пересечения имеют окружность радиуса R с центром в начале координат и произвольная прямая y=kx+e. Вычислить координаты точек пересечения.
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Private Sub cmdВычисление_Click()
 
R = Val(txtR.Text)                       'присваивание переменных значений
k = Val(txtk.Text)                       'введенных в соответсвующие текстовые поля
e = Val(txte.Text)
a = 1 + k ^ 2                            'вспомогательные переменные
b = 2 * k * e
c = e ^ 2 - R ^ 2
D = b ^ 2 - 4 * a * c                    'вычисление дискриминанта
txtD.Text = Str(D)
    Select Case D
        Case Is < 0
        lblТочки.Caption = "Нет точек пересечения"
        fraX1.Visible = False
        fraX2.Visible = False
        fraY1.Visible = False
        fraY2.Visible = False
    Case 0
        lblТочки.Caption = "Одна точка пересечения. Прямая - касательная"
        X1 = ...
        fraX1.Visible = True
        fraX2.Visible = False
        fraY1.Visible = True
        fraY2.Visible = False
        Y1 = ...
        txtX1.Text = Str(X1)
        txtY1.Text = Str(Y1)
    Case Else
        fraX1.Visible = True
        fraX2.Visible = True
        fraY1.Visible = True
        fraY2.Visible = True
        lblТочки.Caption = "Две точки пересечения. Прямая - секущая"
        X1 = ...
        txtX1.Text = Str(X1)
        X2 = ...
        txtX2.Text = Str(X2)
        Y1 = ...
        txtY1.Text = Str(Y1)
        Y2 = ...
        txtY2.Text = Str(Y2)
     End Select
End Sub
Необходимо заполнить формулы для Х1, Х2, Y1, Y2. Я наверное настолько туп, но сделать это не могу, хотя мне кажется, что это что то элементарное. Помогите разобраться.
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.10.2008, 21:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Оператор Select Case: определить, сколько точек пересечения имеют окружность и прямая (VB):

определить,сколько точек пересечения имеет окружность радиуса R с центром в начале координат и произвольная прямая y=kx+b. - Visual Basic
Написать программу, которая сможет определить,сколько точек пересечения имеет окружность радиуса R с центром в начале координат и...

Разветвляющиеся алгоритмы: Оператор - Select Case! - Visual Basic
Разработать приложение, реализующее подсчет числа броуновских частиц, попадающих в объектив (фиксированная область в форме окружности)...

Select case - Visual Basic
Вот код. Можно его написать через Select Case ? я пытался написать но ни как не получается у меня Dim number As Double Private Sub...

Select Case - Visual Basic
Выдает ошибку: Private Sub Command1_Click() Dim K As Integer Dim X As Single, Y As Single X = Val(Text3.Text) K =...

Select Case - Visual Basic
Здравствуйте! скажу сразу, в бейсике я почти полный ноль. дали мне такое задание: создать программу, пользователь вводит с клавиатуры букву...

Определить, сколько точек пересечения имеют прямая и окружность и найти координаты этих точек - C++
Привет. Тут такое дело. В общем я неплохо знаю сам язык, но вот задачку решить не могу. Т.е не знаю как. С школьной математикой у меня...

1
Жестянка
сцуко киборг
103 / 30 / 2
Регистрация: 11.09.2008
Сообщений: 193
05.11.2008, 00:55 #2
при D=0:

Код
X1 = -b/2/a
Y1 = k*X1+e
при D>0:

Код
X1 = -b+D^0.5/2/a
Y1 = k*X1+e
X2 = -b-D^0.5/2/a
Y2 = k*X2+e
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
05.11.2008, 00:55
Привет! Вот еще темы с ответами:

Сколько точек пересечения имеет прямая с окружностью - Pascal
1)По последним цифрам двух натуральных чисел определить последнюю цифру квадрата разности этих чисел. 3)Сколько точек пересечения имеет...

Определить, пересекаются ли прямая и окружность, и найти точки пересечения - C++
задана окружность с центром в точке х(нулевое) и(нулевое) у и радиусом Р и прямая у=ах+в. определить пересекаются ли прямая и окружность....

Сколько точек пересечения имеют прямые - Комбинаторика
Задача: на плоскости проведено n прямых линий, из которых никакие 2 не являются параллельными и никакие 3 не пересекаются в одной точке....

Сколько точек пересечения имеет прямая у=кх+в с окружностью с центром в точке (0, 0) и радиусом R - C++
задачи в программе CodeBlocks Помогите решить задачу: Сколько точек пересечения имеет прямая у=кх+в с окружностью с центром в точке...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru