c语言求椭圆的切线方程,如何快速求椭圆的切线方程
设椭圆的方程为x^2/a^2+y^2/b^2=1,点P(x0,y0)在椭圆上,则过点P的椭圆的切线方程为(x·x0)/a^2 + (y·y0)/b^2=1
在实际应用中,只需将对应的x0,y0代入即可得到椭圆在某一个具体点的切线方程。
扩展资料
利用解析几何的方法求椭圆的切线方程的步骤为:
设C:((x^2)/(a^2))+((y^2)/(b^2))=1-----式1;
(a^2)-(b^2)=(c^2);
F1(-c,0);F2(c,0);P(xp,yp)
AB:(y-yp)=k(x-xp)=>y=kx+(yp-kxp);令m=yp-kxp=>AB:y=kx+m-----式2;
联立式1和式2消去y得:((k^2)+((b^2)/(a^2)))(x^2)+2kmx+((m^2)-(b^2))=0;
因为直线AB切椭圆C于点P,所以上式只有唯一解,则:
4((km)^2)-4((k^2)+((b^2)/(a^2)))((m^2)-(b^2))=0=>m^2=((ak)^2)+(b^2);
m^2=(yp-kxp)^2=((yp)^2)+((kxp)^2)-2kxpyp=((ak)^2)+(b^2);
=>((a^2)-(xp^2))(k^2)+2xpypk+((b^2)-(yp^2));
由根的判别式得:4((xpyp)^2)-4((a^2)-(xp^2))((b^2)-(yp^2))=0;
所以k值有唯一解:k=(-2xpyp)/(2((a^2)-(xp^2)))=-xpyp/((a^2)-(xp^2));
由式1得:(a^2)-(xp^2)=(ayp/b)^2=>k=-(xp(b^2))/(yp(a^2));
m=yp-kxp=(((ypa)^2)+((xpb)^2))/(yp(a^2))=((ab)^2)/(yp(a^2))=(b^2)/yp;
设A0F1、B0F2分别过F1、F2垂直AB于A0、B0;
A0F1:(y-0)=(-1/k)(x+c)=>x+ky+c=0-----式3;
联立式2和式3消去y得:x=-(km+c)/((k^2)+1);
联立式2和式3消去x得:y= (m-kc)/((k^2)+1);
则:A0:(-(km+c)/((k^2)+1),(m-kc)/((k^2)+1))
c语言求椭圆的切线方程,如何快速求椭圆的切线方程相关推荐
- 二分法求方程的根_快速求解方程的根——二分法与牛顿迭代法
今天是周四高等数学专题的第7篇文章. 之前的文章和大家聊了许多数学上的理论,今天和大家聊点有用的东西. 我们都知道,工业上的很多问题经过抽象和建模之后,本质还是数学问题.而说到数学问题就离不开方程,在 ...
- 数学 —— 其他 —— 快速求逆平方根
[概述] 越底层的函数,调用越频繁,那么最底层的数学运算函数的优化至关重要. 当求逆平方根时,一般做法都是用函数返回 1/sqrt(x),但在 雷神之锤3 中,有一快速求逆平方根的算法. [知识储备] ...
- 【学习笔记】使用魔数快速求平方根
[学习笔记]使用魔数快速求平方根 简介 介绍使用魔数0x1fbd1df5快速求平方根x{\sqrt{x}}x的C语言实现和公式的推导. 代码 float MagicSqrt(float x) {fl ...
- 基于opencv的一种快速有效椭圆检测方法
本篇介绍的椭圆检测方法来自以下论文,论文作者提供了测试代码.本文主要是对这个方法做出详解. 参考论文:A fast and effective ellipse detector for embedde ...
- KMP算法——快速求失效函数值及其代码实现
前缀和后缀的最大相等长度 为了更好的理解我接下来所说的回溯值的求法,这里先介绍一下,如何求一个字符串的前缀和后缀相等的最大长度,为了便于说明记为k. 注意:前缀和后缀不能为字符串本身!!!!!! 如字 ...
- C语言编程>第四周 ⑦ 用fillellipse画椭圆。
例题:用fillellipse画椭圆. 代码如下: #include "stdio.h" #include <graphics.h> #include <coni ...
- 【学习笔记】使用魔数快速求立方根
[学习笔记]使用魔数快速求立方根 简介 介绍使用魔数0x2a517d47快速求立方根 x 3 {\sqrt[3]{x}} 3x 的C语言实现和公式的推导. 代码 float MagicCubeRoo ...
- python输入一个正整数n求下列算式的值_C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值。,C语言 编写一个程序,输入一个正整数,求出它是几位数。...
导航:网站首页 > C语言编写程序:输入一个正整数x和一个正整数n,求下列算式的值.,C语言 编写一个程序,输入一个正整数,求出它是几位数. C语言编写程序:输入一个正整数x和一个正整数n,求下 ...
- LeetCode Super Pow(快速求幂算法)
题意:给出底数a,指数b(很大的数,用数组形式给出,每个元素为1位),求其对1337的模 思路:在遍历数据过程中,用ans(n)表示上一次计算结果,则ans(n+1) = pow(ans(n), 10 ...
最新文章
- 注入Attention,精度涨30%!谷歌发表最新多目标“动态抠图”模型
- QRadioButton分组且无边框的简单实现
- 英特尔因代言人再起风波企业网络推广之下遭抵制的Evo平台谁来背锅?
- [读书笔记]C#学习笔记三: C#类型详解..
- linux css 工具,7个Linux和Ubuntu下的免费CSS编辑器
- 深度学习之循环神经网络(2)循环神经网络原理
- Spring boot 通过ApplicationRunner在启动完成后按指定顺序执行任务
- python打包,上传包知识点学习
- Oracle DB_LINK如何使用
- 【分享】浅析Quora的技术架构
- 【C语言】头文件书写方法与规范、code::black中如何创建并编写头文件(一看就会)
- 基带信号带宽与占空比的关系
- 人脸识别接口_活体检测在人脸识别中不可或缺的一部分
- 机房收费系统问题集(2)——移动登陆界面+show出子窗体
- 一只会铲史的猫:我开发的软件一览
- 什么是dB?为什么要用dB?dB家族成员有哪些?
- 主攻文推荐攻守都有系统_第一百四十八章:攻守之间 - 足球神话 - 找小说网
- ai怎样导出所选部分_ai怎样导出所选部分为jpg应该怎么做
- 校园宿舍安全如何保障?这个技能太厉害了
- 一个假冒的序列号被用来注册Internet Download Manager。IDM即将退出…
热门文章
- 改名叫Benson...
- 世界正游弋于开源之海,但只有 Red Hat 从中盈利
- CSGO新手教学-CSGO游戏模式介绍 CSGO 攻略
- Android studio 学习 之打包
- 贝勒大学计算机专业,贝勒大学(Baylor University)_贝勒大学申请条件_津桥留学【23年专注留学服务】...
- 中国信号发生器行业市场供需与战略研究报告
- 现代控制原理专业词汇中英文对照
- Flutter版讯飞语音识别demo
- 计算机系统的组成基础知识,计算机系统的组成基础知识.ppt
- 【杂记】EMC、EMI、EMS、TVS、ESD概念学习总结