在Python中检查一个数字是否是阳光数(SunnyNumber

云课堂学Python 2024-04-11 01:19:15

给定一个数字 N,如果数字的下一个数 N+1 是另一个数的完全平方数,则称该数 N 为阳光数(Sunny Number)。

方法1:

「算法:」

将待检测数字存储在变量 num1。找到给定数字的下一个数 num1 + 1,将其存储在变量 num2。使用 math.sqrt() 函数计算 num2 的平方根,并将其存储在变量 sqrt_num。计算 sqrt_num 的平方,并将其存储在变量 square_num。使用 if 条件语句判断 square_num、num2 是否相等。如果语句为 True,则输出给定的数字是一个阳光数。如果为 False,则输出给定的数字不是一个阳光数。import mathnum1 = 3num2 = num1 + 1sqrt_num = math.sqrt(num2)square_num = sqrt_num * sqrt_numif square_num == num2: print(num1, "是一个阳光数。")else: print(num1, "不是一个阳光数。")方法2:

「算法:」

自定义函数 isPerfectSquare(x),检测数字是否是一个完全平方数。isPerfectSquare(x) 中,计算参数的平方根,判断平方根是不是一个整数。自定义函数 checkSunnyNumber(N),检测数字是否是一个阳光数。checkSunnyNumber(N) 中,调用 isPerfectSquare(x)函数,检测下一个数是不是完全平方数。如果语句为 True,则输出给定的数字是一个阳光数。如果为 False,则输出给定的数字不是一个阳光数。from math import *def isPerfectSquare(x): sr = sqrt(x) return (sr - floor(sr)) == 0def checkSunnyNumber(N): if isPerfectSquare(N + 1): print(N, "是一个阳光数。") else: print(N, "不是一个阳光数。")N = 8checkSunnyNumber(N)

文章创作不易,如果您喜欢这篇文章,请关注、点赞并分享给朋友。如有意见和建议,请在评论中反馈。

0 阅读:0

云课堂学Python

简介:感谢大家的关注