LoginSignup
15
5

More than 5 years have passed since last update.

学習サービス掛け合わせでPaizaの練習問題が解けた話

Last updated at Posted at 2018-12-18

私のようにpaizaでJavaScript入門編1・2をクリアしたにも関わらず
スキルチェック何も手が付かないんだけど…、と絶望した方の役に立てばと思い書きました。
あと自分の備忘録。

はじめに

どうも、3日前からJavaScriptに手を付け始めました初心者です。Qiita初投稿。

学習に使っているサービスは paiza です。

順調にJavaScript入門編1→2とクリアし、次は問題をやろう!と
プログラミング練習問題のページへ進みました。

1.絶望した

入門編はクリアしたのにDランクの問題すら全く手が付けられない…
という事態になりました。

ちなみに回答しようとしたのは掛け算です。

なぜ?

Paizaはnode.jsが予め仕込まれているため、標準入力については入門編で触れられておらず、下のように突然の標準入力が現れたことで

「えっ!何これ!?聞いてない!どこに入力して良いかもわかんない!!!」

という状態に。
kaitou02.png

Qiitaやteratailを見て回りましたが、そもそも過ぎて適切な回答が見当たらない…と絶望しました。

2.どうやって理解したのか

「これはもう別サービスで触れているのが無いか入門編漁りをしよう!」
progateCODEPREP も始めてみました。

progateは「varじゃなくてlet!?paizaと違うこと言ってる!」となっただけで標準入力の記載はなし。

答え(?)は…CODEPREPにありました!!!

javascript入門 基本操作編
②JavaScriptの「型」を学ぼう - 5 配列(Array)
を読んだら突然開眼しました!

左側にあるヒント欄に
配列を表現するには [] を宣言します。

var array = [];

配列にデータを追加するにはpush関数を利用します。

array.push('Welcome to CODEPREP');

配列からデータを取得するには、配列の中で取り出したいデータのインデックス(格納している場所を表す数値)を指定してデータを取り出します。
インデックスの指定には[]を利用して、中にインデックスを指定します。

インデックスは0番目から始まるため、1番目の値を取得するためには、次のように記述します。

array[0];

ということはさっきの
kaitou02.png
の15行目を変更すればいいのでは!?となり、下記のように入力しました。

console.log(lines[0] * lines[1]);

入力される値が
a
b
と改行区切りで与えられていたので

lines[0] で 配列の1番目となる a が、
lines[1] で 2番目となる b が引っ張ってこれるということでは?

ということで

できたーーー!!

paiza01.png

そして早速次の足し算やってみよう!と開いたら改行区切りじゃなくてスペース区切りということで line[ ] 内をどう指定したらいいか分からなくなって即詰みました…。
引き続き…頑張ります…。

あと個人的な感想としてはCODEPREPは何も知らない状態で始めるにはハードル高すぎでは?とも思いました。

15
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
15
5