回答ありがとうございます
教師がごみ過ぎて何も教えてくれず質問しても返信してもらえなかったためこのような形を取らせていただきました。
なぜWhileをどこで使うかがわかりません。
あと3が含まれているかの判定はこれで大丈夫でしょうか?
a[n]="Ya!Ho!
この部分は一応3が含まれていた時にその値をYa!Ho!にするというつもりで書きました。
def nabeatu(n):
a=[]
a.append(n)
if n in ('3'):
a[n]="Ya!Ho!"
print(a[n],end=",")
for i in range(61):
a=0
nabeatu(i)
すみません。説明とリンクがズレていて分かりにくいかと思いましたので回答を修正致しました。
教育環境はご同情いたしますが、テキストはないのでしょうか。またネットの記事等は読まれていますでしょうか。
if n in ('3'):
は間違ってます。
in の使い方が違います。また数字と文字の比較はできません。
a=[]
a.append(n)
の命令にてa[n]という値になりますがa[n]="Ya!Ho!"という代入は出来ません。
リストについてお調べください
また、リストを使う必要はなく、3がつくとき”Ya!Ho!"を返し、そうでないときは数字を返す
という関数にすればよいと思います。
重ね重ねありがとうございます
テキストやネットの記事を六時間漁った結果なんです...申し訳ないです
紹介してもらった記事はとても参考になりました
テキストには
cubes[1,8,27,65,125]
cubes[3]=64
cubes[1,8,27,64,125]
のようなことが書かれていたのでそのまま使いました。
課題の条件としてリスト使わなければいけないんです...
def nabeatu(n):
a=[]
a.append(n)
while '3'in a[n]:
a[n]="Ya! Ho!"
print(a[n],end=",")
for i in range(61):
a=0
nabeatu(i)
今このような感じで
py3\temp.py", line 4, in nabeatu
while '3'in a[n]:
TypeError: argument of type 'int' is not iterable
このようなエラーがでてしまいます
リストに対してループするにはfor文が便利です。lstをリストとするとき、for x in lst:とするとxにlstの要素が入ります。
ではこれを先程作ったリストに対して行って、その要素が3のときはアホになってreturnするようにしましょう。(for文に加えてif文を使います)
もしreturnされずループが終了するなら、そのときは要素に3が含まれないということですから、与えられた数をそのまま出力してください。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/07 09:22
2020/07/07 09:30
2020/07/07 09:49
2020/07/07 10:04