Python實現(xiàn)分?jǐn)?shù)序列求和
我就廢話不多說了,直接上代碼吧!
#!/usr/bin/env python
# coding:UTF-8
"""
@version: python3.x
@author:曹新健
@contact: 617349013@qq.com
@software: PyCharm
@file: 1223.py
@time: 2018/12/23 20:56
"""
'''
有一分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13...求出這個數(shù)列的前20項之和。
'''
"""
#方法一
def g(n):
if n <= 2:
return n
else:
return g(n-1) + g(n-2)
sum = 0
for i in range(1,21):
sum += g(i+1)/g(i)
print(sum)
"""
#方法二
numerator = 2
denominator = 1
sum = 0
while True:
try:
n = int(input("請輸入一個整數(shù):"))
except ValueError:
print("輸入錯誤,請輸入整數(shù)")
else:
for i in range(n):
sum += numerator / denominator
numerator, denominator = numerator + denominator, numerator
print(sum)
break
補(bǔ)充拓展:Python分?jǐn)?shù)加法的實現(xiàn)
或多或少大家都會覺得用電腦計算器不能顯示分?jǐn)?shù)很麻煩,所以用Python做一個分?jǐn)?shù)加法是極好的
a = input()
b = a.split(',')
def eu(a,b):
if a < b:
a, b = b, a
r = 1
while r != 0:
r = a % b
a = b
b = r
return a
num1 = b[0].split('/')
num2 = b[1].split('/')
sum1 = int(num1[0])*int(num2[1]) + int(num2[0])*int(num1[1])
sum2 = int(num1[1])*int(num2[1])
GCD = eu(sum1,sum2)
c = int(sum1/GCD)
d = int(sum2/GCD)
if c%d == 0:
print(int(c/d))
else:
print(str(c)+ '/'+str(d))
實際上用fractions模塊可以瞬間解決問題
from fractions import Fraction
a,b = (input().split(','))
sum=Fraction(a)+Fraction(b)
print(sum)
以上這篇Python實現(xiàn)分?jǐn)?shù)序列求和就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python深度學(xué)習(xí)tensorflow1.0參數(shù)和特征提取
這篇文章主要為大家介紹了python深度學(xué)習(xí)tensorflow1.0參數(shù)和特征提取,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-06-06
python使用scapy模塊實現(xiàn)ARP掃描的過程
這篇文章主要介紹了python使用scapy模塊實現(xiàn)ARP掃描的過程,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-01-01
python socket網(wǎng)絡(luò)編程之粘包問題詳解
這篇文章主要介紹了python socket網(wǎng)絡(luò)編程之粘包問題詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04
Python實現(xiàn)的遠(yuǎn)程登錄windows系統(tǒng)功能示例
這篇文章主要介紹了Python實現(xiàn)的遠(yuǎn)程登錄windows系統(tǒng)功能,結(jié)合實例形式分析了Python基于wmi模塊的遠(yuǎn)程連接與進(jìn)程操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下2018-06-06

