見出し画像

【Console Application】練習01【学習記】

基本文法を学んだ後によくある練習課題みたいなやつをやる話🤤

Q.
以前の helloWorld や基本文法でやったやつと何が違うの?
A.
学習に作ったやつは独自の「これはできるよね?」を盛った物で、今回のはよくある練習問題なので難易度の混在具合が全然違うかな🤔
特に三項演算子や Any 、ましてや instanceof は初心者が扱う物ではないと思う🤪

→学習資料の最初の方のモノなので余り時間掛からず

#学習記 #練習問題 #Kotlin
#arguments #toInt #random #join #toFloat #print


練習問題をやってみる

手元の学習のやつを見るとよくある練習問題みたいのがあるのでそれをやってみようかなってなったのでれっつぷらくてぃす練習問題を解いてみよう
まぁ、他の言語で習得済の構築論が有ればこんなのはすぐだろうけど復習は結構効くからやっとこうかな🤤

ほんとはこういう学習要綱を公開するの良くないんだろうけど、概略だけボカした表現で書き出して挑むなら許容してもらえるかなって思う🤪🤛💥
もしかしたらそういうのを解いてる人が参考に見に来るかもしれないしね(という建前

概略
・コンソールで整数を1つ受け取る
・その数だけ乱数(1-100)を生成する
・乱数はソート(昇順)、合計、平均を出力する
・乱数は指定の方法を用いる
・入力の型判定は指定の方法を用いる
・入力値の例外の対応(未入力,複数,非数,0以下(範囲外))
・入力は指定の試験値で確認する

これの他に作成予定時間とか出力参考が付いてるけど、記録を纏めながらなので時間はだいたい、かな?
この課題、範囲外は0以下は当然だけど上限が書いてないね?🙄
本当ならこれも書いておかないといけないモノなんだけど入力値の指定があるので想定されてないって事かな🤔
仕様変更があったら真っ先に不具合化する部分だと思うけど初歩の学習でこれに気付く初心者は、まぁ居ないよね😞
今回は判っているけど敢えて考慮しないで作るべきかな🤤めんどくさいし


【 Kotlin 】練習01

そもそも Kotlin の学習なので Kotlin からとりかかるのが筋かなと思うので Kotlin から開始🤤
これが基準のコードになるかな、今回は🤔
後、前回までに用意してたライブラリはこの練習では封印。ほら、他の人が見に来るかも前提で記事書いてるていだからさ、ね?🤪

画像1

画像2

画像3

画像4

画像5

プロジェクト作って git 設定して jar タスク追加して初期状態でコミットして準備完了。いざ開始れっつすたーとよー🤤

画像6

流れは大きく分けて3つっぽい🤤

………

指定の型判定は例外を投げるっぽい🙄
そんなに例外処理させたいのかこいつらはw

画像7

最初は未入力の 0 と 2 以上で個別に条件書こうとしたんだけど入力 1 つ固定で強制ならこれsize!=1でいいかなって🤤

画像8

入力値の判定はこれで🤤理論的にはだけど

画像9

流れは 3 つではなく 4 つだった🙄
list は sum が有って楽できてイイネ👍
web 用の動作も想定してるって事かな?良く使うからねぇ、数値配列の合計とかって🤤

画像10

画像11

joinToString というのが用意されてて結合処理書かなくて楽だった🤤
あと、なんかコード補完使ってやってると結合文字列に勝手に空白補完したりして仕様とうっかり外れちゃうからそういうのはあんまり良い補完じゃないなって感じた😞
(この後空白を削除した)

このくらいの演習ならまだ記事作りながらでも時間内に終わってるね…🤤


次回は

ライバル Swift への移植よー🤤
Swift の潜在力どれだけ楽できるかが試される🤪

この記事が気に入ったらサポートをしてみませんか?