1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Ruby 標準入力と様々なメソッド

Last updated at Posted at 2020-10-12

はいじめに

これは学習用のメモになります。

標準入力とは?

もともとはLINUXなどのUnix系OSで用意されていた仕組みです。
標準入力に対応するようにプログラムを作っておけば、プログラム実行時に、ファイルを読み込んだり、キーボードからデータを読み込んだり、パラメータを指定したりというように、入力先を切り替えることができます。

getsメソッド

標準入力から一行入力

line = gets
puts line

to_iメソッド

標準入力から一行読み込み、整数に変換

line = gets.to.i
puts line

//入力された数字が出力される
例題)
標準入力で2つの整数が2行で与えられます。
1つ目の数値から2つ目の数値までを、1ずつ増加させながら、1行ずつ順番に出力するプログラムを作成してください。たとえば、3と5という数値が与えられた場合、次のように出力します。

3
4
5
num1 = gets.to_i
num2 = gets.to_i
for i in num1..num2
    puts i
end

* to_sメソッド

データを文字列に変換する

* to_fメソッド

データを小数点付きに変換すること

chompメソッド

文字列の末尾の改行コードを取り除きます

line = gets.chomp
puts = "#{line}は、スライムを攻撃した"       //改行コードを取り除いた状態で出力される

splitメソッド

splitメソッドとは簡単に言うと文字列を分割して配列にするためのメソッドです。

str = "samurai engineer blog"
 
array = str.split
 
p array

[実行結果]

["samurai", "engineer", "blog"]

区切り文字を指定して分割する方法

文字列.split(区切り文字)

str = "samurai,engineer,blog"
 
array = str.split(",")
 
p array

[実行結果]

["samurai", "engineer", "blog"]

timesメソッド

「times」メソッドは、変数に「0」から「対象のオブジェクトが持つ数値 - 1」を順に代入しながら「{」から「}」までの処理(又は「do」から「end」までの処理)を実行します。1回繰り返す毎に1ずつ数値は増加します。(「|変数|」の部分は省略可能です)。

オブジェクト.times do |変数|
  実行する処理1
  実行する処理2
end

lengthメソッド

lengthとは「長さ」の事です。Rubyでlengthは「文字列の長さ」と「配列の長さ(配列の要素の数)」を 調べるためのメソッドです。

「文字列の長さ」を調べる際のlenghtメソッドを使う方法と「 配列の長さ」を調べる際のlenghtメソッドを使う方法それぞれ説明します。

「文字列の長さ」を調べる際のlenghtメソッドを使う方法

str = '123456789'
str.length
# => 9

「配列の長さ」を調べる際のlenghtメソッドを使う方法

data = [1,2,3,4,5,6,7,8,9]
data.length
# => 9

最後に

この他にも様々なメソッドあると思います。
日々更新していこうと思います。
また、間違っているところがあればご指摘していただけると幸いです。

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?