python--平方根

num = float(input('输入一个数字:'))
num_sqrt = num ** 0.5
print('%0.3f 的平方根为 %0.3f' % (num, num_sqrt))

# 计算实数和复数平方根
# 导入复数教学模块
import cmath

num = int(input("请输入一个数字:"))
num_sqrt = cmath.sqrt(num)
print('{0} 的平方根为 {1:0.3f}+{2:0.3f}j'.format(num, num_sqrt.real, num_sqrt.imag))

另一个版本:先假设我们会用input读取一个输入,它是一个字符串格式的,然后数字常用的是 有小数点的浮点数float和整型int,再考虑可能输入带负号,那么求出的平方根是复数 complex, 所以可以分类讨论,下面的代码缺点是还没考虑到 long 型的。

可以依次输入 : -2.56 -9 1.44 16 来检验。

  import cmath
# # 计算实数和复数平方根# # 导入复数数学模块 isinstance(num ,  (float,int) )
  num = input('输入第一个数字:')
  if num.__contains__('-') and  num.__contains__('.'):  # 负数、浮点数    
    num_sqrt = cmath.sqrt(float(num))
    print('{0} 的平方根为 {1:0.3f}+{2:0.3f}j'.format(float(num), num_sqrt.real, num_sqrt.imag))
  elif num.__contains__('-'):  # # 负数、整数    
    num_sqrt = cmath.sqrt(int(num))
    print('{0} 的平方根为 {1:0.3f}+{2:0.3f}j'.format(int(num), num_sqrt.real, num_sqrt.imag))
  else:
    if num.__contains__('.'):   # 非负数、浮点数 整数        
       num_sqrt = float(num) ** 0.5        
       print(' %0.3f 的平方根为 %0.3f' % (float(num), num_sqrt))
    else:   #  # 非负数、整数       
      num_sqrt = int(num) ** 0.5        
      print(' %0.3f 的平方根为 %0.3f' % (int(num), num_sqrt))

增加异常报错

import cmath
try:    
    num=float(input("请输入一个数字"))
except:    
    print("输入的数字格式不正确,退出")
else:    
    if num>=0:        
        num_sqrt=num**0.5        
        print(f"{num}的平方根是{num_sqrt:.3f}")    
    else:        
        num_sqrt=cmath.sqrt(num)        
        print(f"{num}的平方根是{num_sqrt.real:.3f}+{num_sqrt.imag:.3f}j")

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值