zoukankan      html  css  js  c++  java
  • Python_每日习题_0003_完全平方数

    # 题目 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?
    # 程序分析 因为168对于指数爆炸来说实在太小了,所以可以直接省略数学分析,用最朴素的方法来获取上限:
    
    
    n = 0
    while (n+1)**2-n*n<=168:
        n += 1
    
    print(n+1)
    
    
    # 思路是:最坏的结果是n的平方与(n+1)的平方刚好差168,由于是平方的关系,不可能存在比这更大的间隙。
    # 至于判断是否是完全平方数,最简单的方法是:平方根的值小数为0即可。
    # 结合起来:
    
    
    n=0
    while (n+1)**2-n*n<=168:
        n+=1
    
    for i in range((n+1)**2):
        if i**0.5==int(i**0.5) and (i+168)**0.5==int((i+168)**0.5):
            print(i-100)
    
    
    
    

    # Python 平方根 #

    # 平方根,又叫二次方根,表示为〔√ ̄〕,如:数学语言为:√ ̄16=4。语言描述为:根号下16=4。
    #
    # 以下实例为通过用户输入一个数字,并计算这个数字的平方根:
    
    # -*- coding: UTF-8 -*-
    
    # Filename : test.py
    # author by : www.runoob.com
    
    num = float(input('请输入一个数字: '))
    num_sqrt = num ** 0.5
    print(' %0.3f 的平方根为 %0.3f' % (num, num_sqrt))
    
    # 执行以上代码输出结果为:
    #
    # $ python test.py
    # 请输入一个数字: 4
    #  4.000 的平方根为 2.000
    
    # 在该实例中,我们通过用户输入一个数字,并使用指数运算符 ** 来计算该数的平方根。
    #
    # 该程序只适用于正数。负数和复数可以使用以下的方式:
    
    # -*- coding: UTF-8 -*-
    
    # Filename : test.py
    # author by : www.runoob.com
    
    # 计算实数和复数平方根
    # 导入复数数学模块
    
    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))
    
    # 执行以上代码输出结果为:
    #
    # $ python test.py
    # 请输入一个数字: -8
    # -8 的平方根为 0.000+2.828j
    # 该实例中,我们使用了 cmath (complex math) 模块的 sqrt() 方法。
  • 相关阅读:
    Android getMeasuredHeight()与getHeight()的区别
    Android控件属性android:visibility的"invisible"与"gone"的区别
    浅谈Android onClick与onLongClick事件触发的问题
    Android ListView中FooterView布局问题
    Android GridView 问题
    Android HTTP POST上传
    监听EditText实时输入
    C++03下的delegate实现-
    delegate委托的C++实现--C++11/14(原创)
    Unity3D 移动平台实现一种大规模(其实跟PC比还是算小规模)动画角色渲染的方案---绝对原创方案。。。
  • 原文地址:https://www.cnblogs.com/LXL616/p/10670248.html
Copyright © 2011-2022 走看看