Python言語Python 123テスト5:関数とコードの多重化(プログラミング問題)

2044 ワード

一、ランダムパスワード生成
説明
プログラミングテンプレートのコードを補完し、以下の機能を完成する:‪‮‮8234;8234;‪8234;‪‪‪‪‪‪‪‪‪8234;8234;;‪;\8234;;‪;;‪;;;;8234;;;;8234;;;;;;8234;;;;;;‪;;‪;;;;8234;;;;;;;;;8234;;;;;;;;‪;;;;;;;;;\\ジルコニア
整数17を乱数シードとし、ユーザ入力整数Nを長さとして取得し、3つの長さNビットのパスワードを生成し、パスワードの各ビットは1つの数字である.各パスワードは1行ずつ出力されます.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬
生成パスワードはrandom.randint()関数を使用します.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬
入出力例
入力
しゅつりょく
3
634
524
926
コードは次のとおりです.
#  ...    
import random

def genpwd(length):
    a=pow(10,length-1)
    b=pow(10,length)-1
    return random.randint(a,b)
length = eval(input())
random.seed(17)
for i in range(3):
    print(genpwd(length))


二、連続質量計算
説明
プログラミングテンプレートのコードを補完し、以下の機能を完成する:‪‮‮8234;8234;‪8234;‪‪‪‪‪‪‪‪‪8234;8234;;‪;\8234;;‪;;‪;;;;8234;;;;8234;;;;;;8234;;;;;;‪;;‪;;;;8234;;;;;;;;;8234;;;;;;;;‪;;;;;;;;;\\ジルコニア
ユーザ入力数Nを取得し,Nから始まる5個の素数,単行出力,素数間をカンマで分割して出力する.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬
注意:ユーザーが入力した数字Nが浮動小数点数である可能性があることを考慮し、入力に対応して整数を取る必要がある.最後の出力はカンマではありません.‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬
入力出力例の例として、入力出力例の例として、‮‪8234;8234;‪‪‪‪‪‪‪‪‪‪‪8234;8234;;8234;;‪;‪;\8234;;;;8234;;;;8234;;;;8234;;;;;;;8234;;;;‪;;;‪;;;;;8234;;;;;;;;;8234;;;;;;;;;;\‪;;;;;;;;;\ジルコニア
入力
しゅつりょく
12
13,17,19,23,29
コードは次のとおりです.
def prime(m):
    if m<2:
        return False
     for s in range(2,m):
        if m % s==0:
            a=0
            break
        else:
            a=1
    return True if a==1 else False
    
n = eval(input())
if n!=int(n):
    n=int(n)+1
else:
    n=int(n)
i=5
while i > 0:
    if prime(n):
        if i>1:
            print(n,end=",")
        else:
            print(n,end="")
        i-=1
        
    n+=1