python3 100 Beispiele 1 Tag

python3 100 Beispiele 1 Tag


Beispiel 001 : Zahlenkombinationstitel: Es gibt vier Zahlen: 1, 2, 3 und 4. Wie viele verschiedene dreistellige Zahlen können ohne wiederholte Zahlen gebildet werden? Was ist jeder?

Programmanalyse : Durchqueren Sie alle Möglichkeiten und rasieren Sie die sich wiederholenden ab.

Methode eins:

conut = 0
for i in range(1,5):
    for j in range(1,5):
        for k in range(1,5):
            if(i!=j&j!=k&k!=i):
                print(str(i)+str(j)+str(k))
                conut+=1
print("共有"+str(conut)+"个")

image-20210325084207204

Methode Zwei:

import itertools
sum2=0
a=[1,2,3,4]
for i in itertools.permutations(a,3):  #a为可迭代对象,3为长度
    print(''.join(str(x) for x in i))  #将数组i转换为字符串
    sum2+=1
print(sum2)

image-20210325091113138

Array (Liste) zum String:

#方法1
arr = ['a','b']
str1 = ''.join(arr)
 
#方法2
arr = [1,2,3]
#str = ''.join(str(i) for i in arr)#此处str命名与str函数冲突!
str2 = ''.join(str(i) for i in arr)

String zu Array:

#方法一
str_x = 'avfg'
st_list = list(str_x)  #使用list()
 
#方法二
list_str = []
list_str.extend(str_x )
 
#方法三
list_str = [v for v in str_x]

Beispiel 002 : Thema "Individuelle Steuerberechnung" Thema: Der vom Unternehmen ausgegebene Bonus basiert auf der Gewinnprovision. Wenn der Gewinn (I) kleiner oder gleich 100.000 Yuan ist, kann der Bonus um 10% erhöht werden, wenn der Gewinn mehr als 100.000 Yuan beträgt und wenn der Gewinn weniger als 200.000 Yuan beträgt, der Anteil von weniger als 100.000 Yuan wird eine Provision von 10% sein, die höher als 100.000 Yuan ist. Die Provision beträgt 7,5%, zwischen 200.000 und 400.000 kann der Teil höher als 200.000 Yuan 5% in Auftrag gegeben werden, zwischen 400.000 und 600.000 kann der Teil höher als 400.000 Yuan in Auftrag gegeben werden 3%; Zwischen 600.000 und 1 Million kann der Anteil über 600.000 Yuan 1,5% in Auftrag gegeben werden. Wenn er mehr als 1 Million Yuan beträgt, wird der Anteil über 1 Million Yuan zu 1% in Auftrag gegeben. Geben Sie den Gewinn I des laufenden Monats ein von der Tastatur und fragen Sie danach Die Gesamtzahl der verteilten Boni?

Programmanalyse : Zwischen Partitionen berechnen.

Die sechs Intervalle werden in 5 Beurteilungen umgewandelt, das Beurteilungskriterium wird als Array-Schwellenwert angesehen, und der Provisionsprozentsatz der sechs Intervalle wird als Array-Rate angesehen, und es können maximal 5 Vergleichszyklen durchgeführt werden.

profit=int(input('show me the money:'))
bonus=0
thresholds=[100000,100000,200000,200000,400000]  
rates=[0.1,0.075,0.05,0.03,0.015,0.01]   #设置一个提成百分比数组
for i in range(len(thresholds)):  #一共分为6个区间,做5次比较
    if profit<=thresholds[i]:
        bonus+=profit*rates[i]
        profit=0
        break
    else:
        bonus+=thresholds[i]*rates[i]
        profit-=thresholds[i]
bonus+=profit*rates[-1]   
print(bonus)

image-20210327094901872

Ich denke du magst

Origin blog.csdn.net/qq_43665434/article/details/115260371
Empfohlen
Rangfolge