今日の自習 2019/03/05/火
今日やったこと
Rubyの基礎文法を全部しっかり叩き込みました。
Javaで先に学習した分、理解はかなりしやすかった印象です。
Hello,Ruby!から始まり、主に↓の内容を学習しました。
コメントの付け方、ショートカット| 変数(ローカル変数) | 変数の命名規則 | 良くない変数の使い方 | 定数 | リテラル | 数値 | 文字列 | 空白文字 | 比較演算子による値の比較 | 演算子の優先順位 | インクリメントとデクリメント | 真偽値と論理演算子 | and,or,not | 条件分岐 if | 条件分岐 unless | 条件分岐 case | メソッド | メソッドの命名規則 | 出力 puts,print,p,pp | 配列 | ハッシュ | 繰り返し処理 each, for | 繰り返し処理 hash | 繰り返し処理 times | 繰り返し処理 while | 繰り返し処理 upto,downto | 繰り返し処理 step | 繰り返し処理 loop, break, next | クラス作成 | アクセサメソッド | クラスと変数 | クラスの継承 | モジュール | 例外と例外処理 | Rubyのコーディングルール | メソッドの公開範囲
簡単だけどRubyでFizzBuzz問題も何も見ずに解けた。改めて見ると結構独特
def fizz_buzz(number) if number % 15 == 0 'FizzBuzz' elsif number % 3 == 0 'Fizz' elsif number % 5 == 0 'Buzz' else number end end numbers = (0..20).to_a numbers.each do |number| puts fizz_buzz(number) end
いらないけどJavaでも適当に(ひどい)
import java.util.List; import java.util.ArrayList; public class FizzBuzz { public void fizzBuzz(int max_count) { List<String> fbList = new ArrayList<>(); for(int i = 1; i <= max_count; i++) { if(i % 15 == 0) fbList.add(i-1,"FizzBuzz"); else if(i % 3 == 0) fbList.add(i-1,"Fizz"); else if(i % 5 == 0) fbList.add(i-1,"Buzz"); else fbList.add(i-1,Integer.toString(i)); } for(String str : fbList) System.out.println(str); } }
public class Sample { public static void main(String[] args) { FizzBuzz fb = new FizzBuzz(); fb.fizzBuzz(Integer.parseInt(args[0])); } }