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

7. 解立方根

题目描述

给定一个正整数 N,请你求 N 的立方根是多少。

输入描述

第 1 行为一个整数 T,表示测试数据数量。

接下来的 T 行每行包含一个正整数 N。

1≤T≤105,0≤N≤105。

输出描述

输出共 T 行,分别表示每个测试数据的答案(答案保留 3 位小数)。

题目分析

        利用二分法解决问题。

        主要问题就是精度问题。详细查看代码。

        mid的三次方 <  n  => left = mid + 0.0001; mid的三次方 >  n => right = mid - 0.0001(这里不是之家将值置为mid,而是加和减去一定的值是为了实现精度)

代码

#include <bits/stdc++.h>
using namespace std;

void er (double n)
{
  double left = 0;
  double right = 100000;
  double mid = (left + right) / 2;
  double res = 0;
  while (right >= left)
  {
    mid = (left + right) / 2;
    if (fabs(mid * mid * mid - n) <= 1e-12){
      res = mid;
      break;
    }
      if (mid * mid * mid < n)
      {
        left = mid + 0.0001;
        res = mid;//当满足条件不满足精度时返回一个近似值
      }else if (mid * mid * mid > n){
        right = mid - 0.0001;
      }
  }
  printf ("%.3f\n", res);
}
int main()
{
  int t;
  cin >> t;
  double n;
  while (t--)
  {
    cin >> n;
    er (n);
  } 
  return 0;
}

相关文章:

  • 人工智能在医疗设备中的最新应用案例与技术挑战?
  • 安卓手机怎样开启双WiFi加速
  • 在线教程丨字节开源 InfiniteYou 图像生成框架,实现高保真面部特征迁移
  • 一文全面了解超融合产品:科技融合的新力量
  • 5分钟读懂ArgoCD:在Kubernetes中实现持续部署
  • 怎样才不算干扰球·棒球1号位
  • feign 使用时可能的问题
  • 国内智能外呼系统市场概况及技术发展趋势
  • [250411] Meta 发布 Llama 4 系列 AI 模型 | Rust 1.86 引入重大语言特性
  • mysql相关面试题
  • Ubuntu虚拟机连不上网
  • 华为华三模拟器解决兼容问题Win11 24H2 现在使用ENSP的问题解决了
  • webrtc pacer模块(一) 平滑处理的实现
  • PySide6 监测设备变更事件
  • 智慧能源管理平台:驱动电网数字化转型,引领绿色能源新时代
  • HTML应用指南:利用GET请求获取全国汉堡王门店位置信息
  • 算法思想之前缀和(二)
  • 操作系统 4.3-生磁盘的使用
  • 种田游戏的综合尝试
  • IBM Rational Software Architect安装感受及使用初体验
  • 有没有一个网站做黄油视频/指数分布的期望和方差
  • 国外知名网站排行/教育机构退费纠纷找谁
  • 彩票源码网站的建设/谷歌外贸网站
  • 网站的基本组成部分有哪些/b站推广渠道
  • 湖北省利川市建设局网站/seo优化招商
  • 做网站首页的要素/深圳整站全网推广