Найти точки пересечения прямой и параболы - C (СИ)
Формулировка задачи:
Здравствуйте. Дана парабола: 6х^2+y+2=0. И прямая: 2x-5y-2=0. Надо найти их точку пересечения. Чисто в математике надо их приравнять и, найдя дискриминант, найти две точки.
Может ли такой код работать(после компиляции - не работал). Напишите в чём недочёты, пожалуйста)
int main() { int x, x1, x2, y; float D; y = 30*(x*x) - 2*x + 8; D = 2*2 - 4*30*8; if(D>0) { x1 = (2+D)/60; x2 = (2-D)/60; } printf("%d and %d", x1, x2); return 0; }
Решение задачи: «Найти точки пересечения прямой и параболы»
textual
Листинг программы
int main() { int x, x1, x2, y; float D, a = 30, b = -2, c = 8; D = b*b - 4*a*c; if(D>0) { x1 = (2+D)/60; x2 = (2-D)/60; printf("%d and %d", x1, x2); } else printf("Korney net"); return 0; }
Объяснение кода листинга программы
В этом коде:
- Задаются и переменные и их значения:
x
,x1
,x2
,y
- переменные для хранения координат точек пересечения прямой и параболыD
,a
,b
,c
- переменные для хранения коэффициентов параболы (D - дискриминант, a, b, c - коэффициенты уравнения параболы в общем виде)- Значения переменных a, b, c задаются в коде (a = 30, b = -2, c = 8)
- Вычисляется значение переменной D:
- D = bb - 4a*c - это формула для вычисления дискриминанта параболы
- С помощью условного оператора if проверяется, больше ли значение переменной D нуля:
- Если D больше нуля, то выполняется следующий блок кода
- Если D меньше или равно нулю, то выводится сообщение
Korney net
и программа завершается
- В блоке кода внутри условия if вычисляются значения переменных x1 и x2:
- x1 = (2+D)/60 - это формула для вычисления координаты одной из точек пересечения прямой и параболы
- x2 = (2-D)/60 - это формула для вычисления координаты другой точки пересечения
- С помощью функции printf выводится сообщение с координатами точек пересечения:
- printf(
%d and %d
, x1, x2) - это вызов функции, которая выводит сообщение в консоль - %d - это спецификатор формата, который указывает на то, что нужно выводить целочисленное значение
- printf(
- Программа завершается возвратом значения 0 из функции main()
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д