• 締切済み

Pythonの構文作成について。

最近、プログラミングを身に着けようとpythonを選んで初めているのですが、 プログラミングが全くの初めてでして。 プログラムの組み方が全く思い浮かべることができず、 一度フローチャートなどに書き起こしてみるも、 いざやってみるとうまく分解できず、四苦八苦しています。 利用している教材は「"やさしいpython"著者 高橋麻菜」に」なります。 「簡単なしりとりゲーム」を作ってみるということをしてみてるのですが、 <要件としては> ・コンピュータが知っている単語をひらがなでリストに保持してその中から答える。 (中に持つ単語は いちご、ごりら、らっぱ、ぱんだ、だんす、すけーと、とけい、いか、かい→いちごに戻る) ・しりとりのルール通り、プレイヤーが「あきかん」のような最後に「ん」のつく言葉を入力した時は「んがつきました、あなたの負けです」と表示してしりとりの繰り返しを終了させる。 ・コンピュータが知っている単語の中に次の答えとして使えるものがなかった場合、「負けました。あなたの勝ちです」と表示してしりとりの繰り返しを終了したい。 ・しりとりのルールの中で「一度使われた単語を2回使ってはならない」は今回の内容には適用しない。そのため続く言葉を使い続けた場合、永遠に終わらないようにしたい ・空の文字列(プレイヤーが何も入力しないでreturnキーを押した)を入力されたとしてもプログラムがおかしくならないようにする。(何か文字を入れてくださいの表示を出す) ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー #しりとりをしましょう print ("しりとりをしましょう") ↓ #文字を入れてください int(input("文字を入れてください。")) if文で分岐を作って、for文やwhile文、continue、breakを使って組み立てるとうことは、なんとなくなのですが。 うまくいきません。何パターンか作り方はあると思いますが、 どう書いていけばよいのでしょうか。サンプル構文があればと思うのですが。

みんなの回答

  • Catoon
  • ベストアンサー率50% (1/2)
回答No.1

Webサイトを見ながらちょっと書いてみました。自分はVSCodeで書いて実際に実行してみましたが、意外と正常に動いたと思います。一つ気になる点としては、aiがいかといちごを同時に言ってしまうので、単語リストに同じ文字から始まる単語は入れない方がいいかなと思います。

vais00
質問者

お礼

コメントありがとうございます。実際に写経してみましたが、記述ミスがあるのか、上手く動作出来ませんでした。 あくまでinputで文字を入力し、リストの中の答えと同じ内容を答えたら、その次の答えをコンピュータが答えて、またこちらから入力して、コンピュータが答えてを繰り返しさせる。 whileを入力して、 そこから長くなってしまいますが、 リストにある答え全てをif、elifとelseで書いてみるか?と思ってたりするわけですが、 凄い量になりそうだし、もっと少ない文で掛けたら良いのですが。難しいです。

関連するQ&A