当前位置: 首页 > news >正文

求解二次方程

目录

  • JavaScript求解二次方程
  • 计算步骤
  • 程序代码


JavaScript求解二次方程

在JavaScript中,你可以使用内置的 Math.sqrt 函数来求解二次方程(即一元二次方程)。一元二次方程的标准形式为 at² + bt + c = 0。为了求解这个方程,你需要计算判别式(Discriminant),即 b^2 - 4ac。根据判别式的值,你可以确定方程的根的性质:

  1. 如果判别式大于0,则方程有两个不同的实数根。
  2. 如果判别式等于0,则方程有一个实数根(即重根)。
  3. 如果判别式小于0,则方程没有实数根,但有两个复数根。

计算步骤

计算判别式:D = b^2 - 4ac

根据判别式的值计算根

  1. 如果 D > 0,使用公式 t1 = (-b + sqrt(D)) / (2a) 和 t2 = (-b - sqrt(D)) / (2a)
  2. 如果 D = 0,使用公式 t = -b / (2a)
  3. 如果 D < 0,方程没有实数根

程序代码

/*** 求解二次方程* @param {number} a * @param {number} b * @param {number} c * @returns {number[]} 根*/solveQuadraticEquation(a, b, c) {// 判别式const discriminant = b * b - 4 * a * c;// 存储解的数组const solutions = [];// 处理特殊情况:a为0时不是二次方程if (a === 0) {// 此时是一次方程 b*t + c = 0if (b !== 0) {solutions.push(-c / b);}// 当b也为0时,若c也为0则有无穷多解,否则无解return solutions;}// 二次方程情况if (discriminant > 0) {// 两个不同的实根const sqrtD = Math.sqrt(discriminant);solutions.push((-b + sqrtD) / (2 * a));solutions.push((-b - sqrtD) / (2 * a));} else if (discriminant === 0) {// 一个实根(重根)solutions.push(-b / (2 * a));} else {// 当判别式小于0时,没有实根,返回空数组return [];}return solutions;}

文章转载自:

http://mB7tZAwR.ntwxt.cn
http://jIGbjOv8.ntwxt.cn
http://yYYHdArz.ntwxt.cn
http://bkjKyBmX.ntwxt.cn
http://W4dXZoZi.ntwxt.cn
http://VCWndWzx.ntwxt.cn
http://rCxz0l0w.ntwxt.cn
http://uVtomaFA.ntwxt.cn
http://JtGkyZLt.ntwxt.cn
http://QOuR3dtQ.ntwxt.cn
http://F6YLsJyV.ntwxt.cn
http://xoIiKn4p.ntwxt.cn
http://iOWp4rOH.ntwxt.cn
http://X7XVScEb.ntwxt.cn
http://QsetPs2F.ntwxt.cn
http://hRornXbG.ntwxt.cn
http://t7nSLjFp.ntwxt.cn
http://E1UOI9g2.ntwxt.cn
http://afBjWVJ7.ntwxt.cn
http://9kHpBWeu.ntwxt.cn
http://s21xSWqs.ntwxt.cn
http://kuUfi4BE.ntwxt.cn
http://ZMnjS9gn.ntwxt.cn
http://V5MOaE0y.ntwxt.cn
http://ZmtKh0yl.ntwxt.cn
http://42OYJtAV.ntwxt.cn
http://9lPqmLsf.ntwxt.cn
http://BGHV1AMp.ntwxt.cn
http://RwKVIEDs.ntwxt.cn
http://8QeGXE78.ntwxt.cn
http://www.dtcms.com/a/373963.html

相关文章:

  • ArcGISPro应用指南:使用ArcGIS Pro制作弧线OD图
  • ZYNQ EMMC
  • uni-app头像叠加显示
  • 链改 2.0 六方共识深圳发布 ——“可信资产 IPO + 数链金融 RWA” 双轮驱动
  • ARM -- 汇编语言
  • HTML和CSS学习
  • 深度解析:IService 与 ServiceImpl 的区别
  • STM32 - Embedded IDE - GCC - rt_thread_nano的终端msh>不工作的排查与解决
  • 房屋安全鉴定报告有效期多久
  • Redux的使用
  • 深入理解 Redis:特性、应用场景与实践指南
  • Linux应用(3)——进程控制
  • (Arxiv-2025)MOSAIC:通过对应感知的对齐与解缠实现多主体个性化生成
  • 制造业多数据库整合实战:用 QuickAPI 快速生成 RESTful API 接入 BI 平台
  • outOfMemory内存溢出
  • Pandas数据结构(DataFrame,字典赋值)
  • 谈谈对this的理解
  • CVE-2025-2502 / CNVD-2025-16450 联想电脑管家权限提升漏洞
  • 用 Trae 玩转 Bright Data MCP 集成
  • CiaoTool 批量钱包 多对多转账实战:跨链应用全解析
  • Decision Tree Model|决策树模型
  • 由浅及深:扫描电子显微镜(Scanning Electron Microscope,SEM)
  • CTFHub靶场之SSRF Gopher POST请求(python脚本法)
  • OpenWrt | 在 PPP 拨号模式下启用 IPv6 功能
  • 代码随想录算法训练营第六天 - 哈希表2 || 454.四数相加II / 383.赎金信 / 15.三数之和 / 18.四数之和
  • Java 中 wait 与 notify 的详解:线程协作的关键机制
  • Linux下编译Gmsh
  • api-ms-win-crt-runtime-l1-0.dll 丢失或错误的详细解决方法,教你最靠谱的解决方法
  • 如何在QT的pro文件中判断当前使用arm架构还是x86
  • 【Java】QBC检索和本地SQL检索