KeyError 发表于 2023-12-21 21:32:31

小测试2:品方跟

本帖最后由 KeyError 于 2023-12-22 07:16 编辑


题目背景
张三又来了,但这次他不是找你算费波纳基数列的,是让你算平方根的。{:10_256:}

题目描述
张三会给你一个整数n,请你算出他的平方根。

输入格式
n

输出格式
n的平方根

数据范围
0 <= n < 109
输出保留5位小数。
作答语言:Python, C/C++
要求:禁止使用"**"运算符和sqrt函数

题外话
听说大家没育碧了,撒币一波{:10_256:}

FishC 发表于 2023-12-21 21:32:43

题目要求计算一个整数n的平方根。

平方根是指一个数的平方等于n的数。比如,4的平方根是2,因为2的平方等于4。

在Python中,可以使用math库中的sqrt函数来计算平方根。

下面是一个完整的实现代码:

import math

n = int(input("请输入一个整数:"))
result = math.sqrt(n)

print(f"{n}的平方根是{result}")

运行这段代码,输入一个整数,即可得到该整数的平方根。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。

zhangjinxuan 发表于 2023-12-22 19:57:57

你说得对,但是我们可以通过二分来获得一个数字的平方根(虽然效率及其低下,相对于 O(1) 的标准库函数多了一个 log):

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

long long n;

int main() {
        scanf("%lld", &n);
        long double l = 0, r = n + 1;
        while (fabs(r - l) > 1e-6) {
                long double mid = (l + r) / 2.0;
                if (mid >= 1e6) r = mid;
                else if (mid * mid > n) r = mid;
                else l = mid;
        }
        printf("%.5Lf\n", l);
}

某一个“天” 发表于 2024-1-30 14:41:21

print(str(n)“的平方根”)

某一个“天” 发表于 2024-1-30 14:42:10

print(str(n)“的平方根”)

某一个“天” 发表于 2024-1-30 14:43:14

帮你领完

某一个“天” 发表于 2024-1-30 14:44:13

帮你领完

某一个“天” 发表于 2024-1-30 14:44:51

帮你领完

某一个“天” 发表于 2024-1-30 14:45:27

帮你领完

某一个“天” 发表于 2024-1-30 14:46:16

帮你领完

某一个“天” 发表于 2024-1-30 14:46:49

帮你领完

某一个“天” 发表于 2024-1-30 14:47:25

帮你领完

某一个“天” 发表于 2024-1-30 14:47:57

帮你领完

某一个“天” 发表于 2024-1-30 14:48:46

帮你领完

某一个“天” 发表于 2024-1-30 14:49:18

帮你领完

某一个“天” 发表于 2024-1-30 14:49:59

帮你领完{:10_269:}

某一个“天” 发表于 2024-1-30 14:51:02

{:10_269:}

某一个“天” 发表于 2024-1-30 14:51:40

{:10_245:}

某一个“天” 发表于 2024-1-30 14:53:09

帮你领完

某一个“天” 发表于 2024-1-30 14:54:15

{:10_249:}
页: [1] 2
查看完整版本: 小测试2:品方跟