JavaScriptの練習がしたい!
そうだ久しぶりにpaizaの問題を解いてみよう!
標準入力がわからなくて採点すらしてもらえない←イマココ
というわけで、Javaでもあった問題です。
提出の仕方と言いましたが、正確には
自分の環境での練習の仕方です。
例文をテキストファイルに保存。
これでコードを書きたいのですが、その環境がうまくいかない。
だいたいJavaScriptで標準入力てなんやねん。。。
いろいろ方法はあるかと思いますが、結論としては
Ajaxでテキストファイルを読み込んで
splitで普通に分割です。
参考にさせて頂いたのはこちら。
https://q-az.net/without-jquery-ajax/
paizaの回答ではjQueryが使えないみたいです(タブン
わたしが作ったのはこっち。
同じフォルダ内に「input」ファイルを作成して
そこに例題を貼り付けます。
var myXml = new XMLHttpRequest(); myXml.open("GET", "input", true); myXml.send(null); myXml.onreadystatechange = function() { if (myXml.readyState === 4) { if (myXml.status == 200) { //console.log(myXml.responseText); //通信成功時 var str = myXml.responseText var lines = str.split(/\r\n|\r|\n/); var N = lines[0]; for(var i=1;i<=N;i++){ var line = lines[i].replace(/(^\s+)|(\s+$)/g, "").split(","); console.log("hello =" + line[0] + ", world = " + line[1] ); } } else { console.log("false") } } }
ひとまず、これで自作のテキストファイル相手にテストできます。
とはいうものの、問題によって変えなきゃいけない部分の敷居が高い。。。
変数「N」はpaizaでよくある、その後の行数を指定です。
また、今回はカンマでsplitしてますが、半角スペースの問題が
かなり多いです。
このあたりでなんとかなるとは思います。
問題そのものよりも、答えるための知識の方が
はるかに難しいというのはなんとかならんのかしら。
質問あったらコメント下さい!