マイassingment各レベルでネストされた三角形は、Python
に前のレベルのための完全な三角形は、余分な外側の三角形に配置されます。ユーザは、使用される2つの文字と、最も奥行きのある三角形の幅とを入力するように要求されなければならない。負の入力のテストに加えて、関数は与えられた数が奇数かどうかをテストし、そうでない場合は適切なメッセージを表示する必要があります。
3つの三角形を印刷する必要がありますが、それぞれにはその他が含まれています。 2つの異なる文字(* - など)で印刷する必要があり、ユーザーは最も内側の三角形の長さを指定しなければならず、奇数でなければなりません。たとえば、
OK]をクリックして、すべての三角形が辞書にあるべき
、私は私の方法を説明しましょう。
tri1 = {1:"*****", 2:"***", 3:"*"}
tri2 = {1:"..........", ...}
ユーザー入力の処理方法がわかりませんでしたか?
5入力した場合、
長 - 5部、高さ3ユニット
長さ - 11部、高さ6ユニット
長さ - 23部、高さ12ユニット。
どうすればわかりますか?論理は何ですか?
[OK]をクリックします。入れ子にされたループを持つ別の三角形の中に入れ墨を置く必要があることを理解しています。単純に別の辞書に反復することはできますが、2番目の文字の位置を確認する必要があります。
ありがとうございます。
私のコード、
ch1, ch2 = input("Please enter the characters you want to use: ")
num = int(input("Please specify the length of innermost triangle(only odd number): "))
if (num % 2 == 0) or (num < 3):
print("Number can not be even, less then 3 and negative")
num2 = (2 * num) + 1
num3 = (2 * num2) +1
tri1 = {}
tri2 = {}
tri3 = {}
for i in range(3):
tri1[i] = ch1*num
num -= 2
check = 1
cont = 0
var = 1
for ii in range(6):
tri2[ii] = ch2*check
check += 2
if (ii >= 3):
tri2[ii] = ch2*var + tri1[cont] + ch2*var
cont += 1
var += 2
for i in tri1:
print('{:^5}'.format(tri1[i]))
for i in tri2:
print('{:^11}'.format(tri2[i]))
1.これはdictionnaryではありません。あなたの試したことの多くを提供する必要があります。私は変数を割り当てることが実際に試みているとは思わない。 – scharette
https://hastebin.com/dadewequci.sql – hex4d0r
@scharette私のコードを追加しました – hex4d0r