日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

python打九九乘法表上三角下三角_python经典练习题之九九乘法表、打印菱形、打印对顶三角形、斐波拉契数列、素数......

發(fā)布時(shí)間:2024/3/13 python 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python打九九乘法表上三角下三角_python经典练习题之九九乘法表、打印菱形、打印对顶三角形、斐波拉契数列、素数...... 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

CSDN 雙十一 活動(dòng)優(yōu)惠提前搶!全站好課1元起,萬券齊發(fā)折上折! 11.11 超值膨脹金【10元抵100元】限量發(fā)放!11月11日當(dāng)天全站通用,更有機(jī)會(huì)享受折上折優(yōu)惠!僅限299份,先到先得! 學(xué)學(xué)習(xí)簡(jiǎn)單的練習(xí) 學(xué)到后面會(huì)有越來越多的

學(xué)學(xué)習(xí)簡(jiǎn)單的練習(xí),學(xué)到后面會(huì)有越來越多的解法來寫!

作業(yè)的目的是為了讓大家熟悉程序語言,鍛煉將思路轉(zhuǎn)換成程序邏輯。

九九乘法表

help(print)

先思考能不能打印出方陣

# 1 方陣

# 1 方陣

for i in range(1, 10):

line = ''

for j in range(1, 10):

line += str(i) + '*' + str(j) + '=' + str(i*j) + ' '

print(line)

print('-' * 30)

# 2 九九乘法表

for i in range(1, 10):

for j in range(1, 10):

if i >= j:

print(str(j) + '*' + str(i) + '=' + str(i*j), end=' ')

print()

print('-' * 30)

# 條件合并

for i in range(1, 10):

for j in range(1, i+1):

print(str(j) + '*' + str(i) + '=' + str(i*j), end=' ')

print()

print('-' * 30)

# 3 九九乘法表 對(duì)齊

for i in range(1, 10):

for j in range(1, i+1):

product = i * j

product = str(product) + ' ' if j > 1 and product < 10 else str(product) #這里用表達(dá)式(python推薦用)

print(str(j) + '*' + str(i) + '=' + product, end=' ')

print()

print('-' * 30)

# 4 九九乘法表 制表符對(duì)齊

for i in range(1, 10):

for j in range(1, i+1):

print(str(j) + '*' + str(i) + '=' + str(i*j), end='\t')

print()

print('-' * 30)

# 5 使用字符串format方法

for i in range(1, 10):

line = ''

for j in range(1, i+1):

line += '{0}*{1}={2} '.format(j, i, i*j)

print(line)

print('-' * 30)

# 5 對(duì)齊

for i in range(1, 10):

line = ''

for j in range(1, i+1):

line += '{0}*{1}={2:<2} '.format(j, i, i*j)

print(line)

print('-' * 30)

{2:<2}對(duì)應(yīng)i*j,:<2冒號(hào)是分割符號(hào),

# 5 對(duì)齊改進(jìn)

for i in range(1, 10):

line = ''

for j in range(1, i+1):

product = i * j

line += '{}*{}={}{}'.format(j, i, product, ' ' if j > 1 and product < 10 else ' ')

print(line)

print('-' * 30)

# 其它對(duì)齊

for i in range(1, 10): # row

for j in range(1, i+1): # column [1, i+1) 1 <= j <= i

print("{}*{}={}{}".format(j, i, i*j, ' ' if j==2 and i<5 else ''),

end='\n' if i == j else ' ')

擴(kuò)展題:

1*1=1 1*2=2 1*3=3 1*4=4 1*5=5 1*6=6 1*7=7 1*8=8 1*9=9

2*2=4 2*3=6 2*4=8 2*5=10 2*6=12 2*7=14 2*8=16 2*9=18

3*3=9 3*4=12 3*5=15 3*6=18 3*7=21 3*8=24 3*9=27

4*4=16 4*5=20 4*6=24 4*7=28 4*8=32 4*9=36

5*5=25 5*6=30 5*7=35 5*8=40 5*9=45

6*6=36 6*7=42 6*8=48 6*9=54

7*7=49 7*8=56 7*9=63

8*8=64 8*9=72

9*9=81

請(qǐng)打印成上面的形式

# 打印九九乘法表方陣的上半部分

for i in range(1, 10):

line = ''

print(' '*7*(i-1), end='') # 前置空格

for j in range(i, 10):

product = i * j

line += '{}*{}={}{}'.format(i, j, product, ' ' if product < 10 else ' ')

print(line)

下面采用右對(duì)齊方式,且分割均勻

for i in range(1, 10):

line = ''

for j in range(i, 10):

line += '{}*{}={:

print('{:>66}'.format(line))

打印如下菱形

*

***

*****

*******

*****

***

*

思路:

看到規(guī)律了嗎?

for i in range(-3,4):

if i<0:

prespace = -i

else:

prespace = i

print(' '*prespace + '*'*(7-prespace*2))

把if語句改成三元表達(dá)式的樣子,也可以使用abs(),內(nèi)建絕對(duì)值函數(shù)

for i in range(-3, 4):

print(' ' * abs(i) + '*' * (7 - 2 * abs(i)))

居中打印

for i in range(-3, 4):

print("{:^7}".format('*'*(7-2*abs(i))))

當(dāng)然菱形也可以居中打印,請(qǐng)自行完成

打印閃電

*

**

***

********

***

**

*

分析如下:

行號(hào) *個(gè)數(shù) 前空格 后空格數(shù) 總空格數(shù) 數(shù)據(jù)

1 1 3 3 6 -3

2 2 2 3 5 -2

3 3 1 3 4 -1

4 7 0 0 0 0

5 3 3 1 4 1

6 2 3 2 5 2

7 1 3 3 6 3

代碼:

for i in range(-3, 4):

if i < 0:

print(' ' * (-i) + '*' * (4 + i))

elif i > 0:

print(' ' * 3 + '*' * (4 - i))

else:

print('*' * 7)

#延時(shí)擴(kuò)展

n = 9

e = n // 2

x = n - e

for i in range(-e, x):

if i < 0:

print(' ' * -i + (x + i) * '*')

elif i > 0:

print(' ' * e + (x - i) * '*')

else: # i == 0

print('*' * n)

斐波那契數(shù)列,100以內(nèi)

斐波那契數(shù)列_百度百科

斐波那契數(shù)列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, ...

如果設(shè)F(n)為該數(shù)列的第n項(xiàng)(n∈N*),那么這句話可以寫成如下形式::F(n)=F(n-1)+F(n-2)

F(0)=0,F(1)=1, F(n)=F(n-1)+F(n-2)

這是一個(gè)線性遞推數(shù)列

print(0)

print(1)

a = 0

b = 1

while True :

c = a + b

if c > 100 : break

a = b

b = c

print(c)

求斐波那契數(shù)列第101項(xiàng)

a = 1

b = 1

print('index={}, fib={}'.format(0, 0))

print('index={}, fib={}'.format(1, a))

print('index={}, fib={}'.format(2, b))

index = 2

while True:

c = a + b

index += 1

print('index={}, fib={}'.format(index, c))

if index == 101: break

a = b

b = c

# index=101, fib=573147844013817084101

求10萬內(nèi)的所有素?cái)?shù)

此題的目的是為了讓大家注意效率問題

for x in range(2,100):

for i in range(2,x):

if x % i == 0:

break

else:

print(x)

為什么到一個(gè)數(shù)的“一半”就可以了

for x in range(2,100000):

for i in range(2,int(x ** 0.5)+1):

if x % i == 0:

break

else:

print(x)

下面這段代碼是錯(cuò)誤代碼,用x=4測(cè)試,因?yàn)閮?nèi)層循環(huán)缺少2,那么偶數(shù)就出了問題

for x in range(2,100000):

for i in range(3,int(x ** 0.5)+1,2):

if x % i == 0:

break

else:

print(x)

修改為

for x in range(3,100000,2): # 舍棄掉所有偶數(shù)

for i in range(3, int(x ** 0.5) + 1, 2): # 為什么從3開始,且step為2?

if x % i == 0:

break

else:

print(x)

為什么從3開始,且step為2?

既然沒有偶數(shù),就不用和2取模了。

奇數(shù)%偶數(shù)能整除嗎

利用素?cái)?shù)性質(zhì):所有大于10的質(zhì)數(shù)中,個(gè)位數(shù)只有1,3,7,9。

count = 1

for x in range(3, 100000, 2): # 舍棄掉所有偶數(shù)

if x > 10 and x % 10 == 5: # 所有大于10的質(zhì)數(shù)中,個(gè)位數(shù)只有1,3,7,9。意思就是大于5,結(jié)尾是5就能被5整除了

continue

for i in range(3, int(x ** 0.5) + 1, 2):

if x % i == 0:

break

else:

count += 1

print(x, count) # 9592

如何計(jì)算時(shí)間,import datetime

count = 0

for x in range(2,100000):

for i in range(2,x):

if x % i == 0:

break

else:

count += 1

print(count)

# 9592

count = 0

for x in range(2,100000):

for i in range(2,int(x ** 0.5)+1):

if x % i == 0:

break

else:

count += 1

print(count)

# 9592

應(yīng)用在密碼學(xué)領(lǐng)域,都要使用大素?cái)?shù)。

# 兩種算法的對(duì)比的完整代碼

import datetime

upper_limit = 100000

delta = [0,0]

counts = [0,0]

start = datetime.datetime.now()

for _ in range(10):

counts[0] = 0

for x in range(2,upper_limit):

for i in range(2,int(x ** 0.5)+1):

if x % i == 0:

break

else:

#print(x)

counts[0] += 1

delta[0] = (datetime.datetime.now() - start).total_seconds()

start = datetime.datetime.now()

for _ in range(10):

counts[1] = 1

#print(2)

for x in range(3,upper_limit,2):

for i in range(3,int(x ** 0.5)+1,2):

if x % i == 0:

break

else:

#print(x)

counts[1] += 1

delta[1] = (datetime.datetime.now() - start).total_seconds()

print(delta, sep="\t")

print(counts, sep="\t")

親,需要你的“分享”和“在看”

IT入門?感謝關(guān)注程序員題庫(kù)→

程序員用的單詞表→

練習(xí)地址:www.520mg.com/it

以上信息來源于網(wǎng)絡(luò),如有侵權(quán),請(qǐng)聯(lián)系站長(zhǎng)刪除。

總結(jié)

以上是生活随笔為你收集整理的python打九九乘法表上三角下三角_python经典练习题之九九乘法表、打印菱形、打印对顶三角形、斐波拉契数列、素数......的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 呦呦色| 日韩avxxx| 亚洲最大视频网 | 欧美xxxbbb | 麻豆精品久久 | 国产视频网站在线观看 | 啪啪啪毛片 | 无码aⅴ精品一区二区三区浪潮 | av香蕉网| 中文字幕25页 | 国产免费高清av | 亚洲精品社区 | 久热精品在线视频 | 亚洲一区二区免费在线观看 | 中文字幕在线2019 | 4438亚洲最大 | 日韩在线观看视频免费 | 性高潮影院 | 亚洲三级在线播放 | 一区二区三区四区高清视频 | 麻豆视频网站 | 国产精品久久久久久亚洲毛片 | 春宵av| 99九九视频| 国产精品一级黄片 | 五月婷婷六月丁香 | 欧美做受视频 | 国产 欧美 日韩 在线 | 妖精视频在线观看 | 国产精品麻豆成人av电影艾秋 | 中文字幕日韩精品在线观看 | 久精品国产 | 成人黄色网页 | 亚洲在线第一页 | 四川丰满妇女毛片四川话 | 伊人久久综合影院 | 亚洲中文字幕无码一区二区三区 | 一区二区在线免费观看视频 | 寻找身体恐怖电影免费播放 | 中文字幕 欧美 日韩 | 午夜国产小视频 | www.youjizz国产| 欧美色v | 丰满人妻一区二区三区免费视频棣 | 天天操综合 | 日本中文视频 | 国内少妇毛片视频 | 中文字幕35页| 国产精品99久久久久久动医院 | 亚洲综合一二三区 | 免费jizz | 国产做爰xxxⅹ高潮视频12p | 欧美一区二区性久久久 | 欧美成年人在线观看 | 伊人网免费视频 | 中文字幕免费在线视频 | 人妻无码一区二区三区免费 | 91丨porny丨尤物 | 99热这里只有精品久久 | 天天射综合| av在线观| 涩涩屋污 | 好大好舒服视频 | 日本波多野结衣在线 | 天天操天天爽天天射 | 成人午夜免费福利 | 极品销魂美女一区二区三区 | 黄片毛片一级 | 男女在楼梯上高潮做啪啪 | 四房婷婷 | 欧美三级理论片 | 久草视频网站 | 欧美日韩视频在线观看一区 | 欧美黄色片免费看 | 国产激情二区 | 精品五月天 | 午夜视频在线观看视频 | 综合亚洲色图 | 一区二区三区三区在线 | 肉色丝袜脚交一区二区 | 欧美日韩成人一区二区三区 | 国产欧美激情在线观看 | 在线免费观看小视频 | 国产精品8888 | 裸体按摩www性xxxcom | 91午夜交换视频 | 激情视频91 | www..com色| 青青草国产在线视频 | 爱吃波客今天最新视频 | 欧洲黄色片 | 欧美精品乱人伦久久久久久 | jizzz18| 九色.com | 亚洲av无码专区首页 | 久草精品视频 | 成在线人免费视频 | 国产 福利 在线 | 91麻豆国产在线 |