プログラミング

paiza初心者を悩ませる標準入力の取得方法(JAVA)

masahide

14年間務めた大手自動車会社を退職 TECH CAMP短期集中コース受講 地元の自社、受託開発企業へ就職 やればできるを発信しています。

4月20日〜6月末(76期)までテックキャンプ エンジニア転職コースを受講し、現在IT企業へ転職活動中のまさひで(@john01tgmck)です。

ある企業さんのインターンシップ精度を利用しており、paizaが技術力の指標になっていたので、paizaランク上げるために頑張っていますが、その時に標準入力の取得方法にかなり戸惑ったのでまとめようと思いました。

この記事で得られるもの

  • paizaでの標準入力の取得方法
  • paiza Cランクが楽しくなる
  • paizaで挫折しなくなる

 

paizaは転職サイト?

paizaは未経験からの求人もあることで登録しましたが、それよりもスキルチェックでプログラマーとしての技術力が可視化できる点が非常に素晴らしいと思います。

テックキャンプ 在学中も「paizaでBランク目指してください」と言われていましたが、Cランク止まりでした・・・。

 

標準入力が取得できない

テックキャンプ での学習では、ユーザーからの情報を受け取って、その入力値を加工して出力するという作業をしていました。

何が言いたいかというと「今までは、一つの文字や数字を加工する処理を書いていたが、paizaでは改行されたデータを取得していかなければいけない」ということです。

 

標準入力

例題

N
a_1 b_1
a_2 b_2
a_3 b_3
...

  • 1 行目に問題数を表す N が与えられます。
  • a_1 × a_2 の答えを全て表示しなさい。

入力例1
4
1 10
5 20
3 5
4 33

出力例1
10
100
15
132

ざっとこんな例題があったとします。

値の取り出し方

  • 整数:nextInt();
  • 1列:nextLine();
  • その他:next();

今回の問題の考え方としては、N回掛け算を繰り返して出力するでOKです。

コード例

import java.util.*;


public class Main {
    public static void main(String[] args) {
        // 自分の得意な言語で
        // Let's チャレンジ!!

        Scanner sc = new Scanner(System.in);
        int times = sc.nextInt();
        for(int i = 0; i < times; i++){
          int number1 = sc.nextInt();
          int number2 = sc.nextInt();
          System.out.println(number1 * number2);
        }
    }
}

これはDランクくらいの問題になり、Cランクに上がると、ここにif文や指定文字列の取得(substring)などが入ってきます。

 

現在のランク

ようやくCランクに上がって簡単な問題なら解けるようになったところです。(まだまだ駆け出し

 

ランクアップまでの勉強量

JAVAの学習期間はProgate2週すると、Dランクの問題はすぐに解けると思います。

Cランクも使うメソッドはそこまで難しくありませんが、読解力とプログラミング的思考ができず、苦労しております。

オススメの学習方法などあれば教えてくれるととても嬉しいです。

 

まとめ

paizaのランクが上がると、未経験から応募できる企業が増え、自分の知識量も比例して増えていくので、学習の合間にテスト感覚で使うといいと思います。

paiza挑戦したけど、入力値が受け取れない!という方の参考になれば幸いです。

-プログラミング
-, ,

© 2020 まさブログ Powered by AFFINGER5