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

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

新規登録して質問してみよう
ただいま回答率
85.48%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

2回答

1278閲覧

javascript ループで0>xで抜ける方法について

garchomp

総合スコア128

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2017/04/19 08:52

現在簡単なループ分を作っているのですが、体力0になった地点でループ終了としたいのですが、そのやり方がいまいちよくわかりません。

どうしたら0以下になった時ループをうまく抜けることができるでしょうか?

javascript

1var x=500; 2var y=500; 3 4var garchomp='ガブリアス' 5var jukain='ジュカイン' 6 7function test(a,b){ 8 9 10 var battle=Math.floor(Math.random()*90); 11 console.log(b+'に'+battle+'ダメージ!'); 12 a=a-battle 13 14}; 15while(true){ 16if(x>0||y>0){ 17 test(x,jukain); 18 test(y,garchomp); 19 20}else{ 21breack; 22} 23}

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

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

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

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

たとえばこんな感じ

javascript

1var x=500; 2var y=500; 3var garchomp='ガブリアス' 4var jukain='ジュカイン' 5function test(a,b){ 6 var battle=Math.floor(Math.random()*90); 7 a-=battle; 8 if(a<0) a=0; 9 console.log(b+'に'+battle+'ダメージ!残り体力='+a); 10 return a; 11}; 12var count=0; 13while(true){ 14 if(x>0 && y>0){ 15 if(count++>10){ 16 console.log("時間切れ、引き分け"); 17 break; 18 } 19 x=test(x,jukain); 20 y=test(y,garchomp); 21 }else{ 22 if(x==0 && y==0){ 23 console.log("双方体力切れ、引き分け"); 24 }else{ 25 console.log((x>0?jukain:garchomp)+'の勝利'); 26 } 27 break; 28 } 29} 30

投稿2017/04/19 09:08

yambejp

総合スコア114829

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

garchomp

2017/04/19 09:24 編集

なるほど。そういう方法もあるんですね! 自宅のパソコンで試してみます! カウントをつけるのもたしかに面白そうですね。。。 三項演算子の使い方もすごい参考になりました! 色々遊べそうです!ありがとうございますm(_ _)m
guest

0

ベストアンサー

スペルミスでは?

JavaScript

1// breack; 2// ↓ 3 break;

【break - JavaScript | MDN】
https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Statements/break


追記:

そこだけじゃなかったですね。

JavaScript

1var x = 500; 2var y = 500; 3 4var garchomp = 'ガブリアス'; // ← 「;」を末尾に付けておきましょう。 5var jukain = 'ジュカイン'; // ← 「;」を末尾に付けておきましょう。 6 7function test( a, b ) { 8 var battle = Math.floor( Math.random() * 90 ); 9 console.log( b + 'に' + battle + 'ダメージ!' ); 10 // a=a-battle ← これを変更してもx,yは変わらない 11 return a - battle; 12 13}; 14while( true ) { 15 if ( x > 0 || y > 0 ) { 16 x = test( x, jukain ); 17 y = test( y, garchomp ); 18 } else { 19 // breack; ← スペルミス 20 break; 21 } 22} 23console.log( 'true' ); 24```**動くサンプル:**[https://jsfiddle.net/rcqqebey/](https://jsfiddle.net/rcqqebey/)

投稿2017/04/19 08:56

編集2017/04/19 09:05
kei344

総合スコア69407

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

garchomp

2017/04/19 09:14

ありがとうございます! リターンの使い方忘れてました。。。w ファンクション使わない場合のままになってました。。。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問