質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

解決済

コード長すぎてミスが隠れちゃった、、いっせーので(指スマ)作ったとき

Konya
Konya

総合スコア4

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

3回答

0リアクション

0クリップ

722閲覧

投稿2022/09/09 03:45

編集2022/09/10 03:54

前提

google colaboratoryにて指スマ(いっせーので)ちゃんと書いてるはずなのに答えが違う理由がわからないので教えてください。
前の質問でglobalというのを知って使っているのですがもしかしたらそれのせいなのかもしれません。
初心者で簡単なコードで作ってます。(コードが長くおそらく短くする方法などがあるだろうけどとりあえずそこには触れないでください。)

実現したいこと

・1本と入力したらちゃんとCPUのところに足されるようにする。
・いっせーので(指スマ)として成り立たせる。

起こっていること

なぜかinputで入力して足すようにしてるのに足されない。(ゲームが成り立ってない)

次はCPUの番だよ。 何本出すか入力してね。 ゆびすま・・・(あげる本数)2 CPUは 0 本あげたよ。 CPUは 0 本といったよ。 当たったので1本のけるよ。

該当のソースコード

#randomのインポート import random #初めの指の本数の関数定義 n = 2 nm = 2 #指スマ関数の定義(自分の番)2-2,1-2 def yubisuma1(): global n print("最初に何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") print("合計全員で何本あげるか予想してね。") human = int(input("ゆびすま・・・(みんなとの合計)")) bot = random.randint(0,2) if people + bot == human: print("CPUは", bot , "本あげたよ。") print("あたり。一本のけてね。") n -= 1 if people + bot != human: print("CPUは", bot , "本あげたよ。") print("残念。") #指スマ関数の定義(自分の番)2-1,1-1 def yubisuma2(): global n print("最初に何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") print("合計全員で何本あげるか予想してね。") human = int(input("ゆびすま・・・(みんなとの合計)")) bot = random.randint(0,1) if people + bot == human: print("CPUは", bot , "本あげたよ。") print("あたり。一本のけてね。") n -= 1 if people + bot != human: print("CPUは", bot , "本あげたよ。") print("残念。") #指スマ関数の定義(CPUの番)2-2 def yubisuma5(): global nm print("次はCPUの番だよ。") print("") print("何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") cpu = random.randint(0,4) bot = random.randint(0,2) if people + bot == cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", bot , "本といったよ。") print("当たったので1本のけるよ。") nm -= 1 if people + bot != cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", cpu , "本といったよ。") print("残念。") #指スマ関数の定義(CPUの番)2-1 def yubisum6(): global nm print("次はCPUの番だよ。") print("") print("何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") cpu = random.randint(0,3) bot = random.randint(0,1) if people + bot == cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", bot , "本といったよ。") print("当たったので1本のけるよ。") nm -= 1 if people + bot != cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", cpu , "本といったよ。") print("残念。") #指スマ関数の定義(CPUの番)1-2 def yubisuma7(): global nm print("次はCPUの番だよ。") print("") print("何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") cpu = random.randint(0,3) bot = random.randint(0,2) if people + bot == cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", bot , "本といったよ。") print("当たったので1本のけるよ。") nm -= 1 if people + bot != cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", cpu , "本といったよ。") print("残念。") #指スマ関数の定義(CPUの番)1-1 def yubisuma8(): global nm print("次はCPUの番だよ。") print("") print("何本出すか入力してね。") people = int(input("ゆびすま・・・(あげる本数)")) print(" ") cpu = random.randint(0,2) bot = random.randint(0,1) if people + bot == cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", bot , "本といったよ。") print("当たったので1本のけるよ。") nm -= 1 if people + bot != cpu: print("CPUは", bot , "本あげたよ。") print("CPUは", cpu , "本といったよ。") print("残念。") #関数を動かす。 yubisuma1() while True: if n == 1 and nm == 2: print(" ") print(" ") yubisuma7() if n == 1 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 1: print(" ") print(" ") yubisuma2() if n == 1 and nm == 1: print(" ") print(" ") yubisuma2() if n == 0: print(" ") print(" ") print("あなたの勝ち!") break if nm == 0: print(" ") print(" ") print("CPUの勝ち!") break if n == 2 and nm == 2: print(" ") print(" ") yubisuma5() if n == 1 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 1: print(" ") print(" ") yubisuma2() if n == 1 and nm == 1: print(" ") print(" ") yubisuma2() if n == 0: print(" ") print(" ") print("あなたの勝ち!") break if nm == 0: print(" ") print(" ") print("CPUの勝ち!") break if n == 2 and nm == 1: print(" ") yubisuma6() if n == 1 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 1: print(" ") print(" ") yubisuma2() if n == 1 and nm == 1: print(" ") print(" ") yubisuma2() if n == 0: print(" ") print(" ") print("あなたの勝ち!") break if nm == 0: print(" ") print(" ") print("CPUの勝ち!") break if n == 1 and nm == 1: print("") print(" ") yubisuma8() if n == 1 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 2: print(" ") print(" ") yubisuma1() if n == 2 and nm == 1: print(" ") print(" ") yubisuma2() if n == 1 and nm == 1: print(" ") print(" ") yubisuma2() if n == 0: print(" ") print(" ") print("あなたの勝ち!") break if nm == 0: print(" ") print(" ") print("CPUの勝ち!") break if n == 0: print("") print("") print("あなたの勝ち!") break if nm == 0: print("") print("") print("CPUの勝ち!") break

不思議な点

・人間の番のほうはちゃんと足されてるのにCPUのほうがたされてない点
・エラーなどは出ず実行はできる点。

補足情報(FW/ツールのバージョンなど)

・google colaboratoryを使用してます
・最近global関数知って使ってます。
・結構時間かけて作ってるので是非教えてください;;

以下のような質問にはリアクションをつけましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

リアクションが多い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2022/09/09 04:10依頼された後にこの質問は修正されています

こちらの質問が他のユーザーから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました。

can110

2022/09/09 05:45

n, nm, human, bot, peopleなどの変数名が何を表しているかが分からないので 分かりやすい名前に変更して各変数の意味(説明)をコメントで追加したソースを提示ください。
Konya

2022/09/09 06:46

もう解決したのでありがとうございました! 僕的には分かりやすく使ってたんですけど周りから見たらそうなんですねw 

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Google Colaboratory

Google Colaboratoryとは、無償のJupyterノートブック環境。教育や研究機関の機械学習の普及のためのGoogleの研究プロジェクトです。PythonやNumpyといった機械学習で要する大方の環境がすでに構築されており、コードの記述・実行、解析の保存・共有などが可能です。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。