teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

他サイトの利用規約に反している可能性があるため該当部分を削除しました。

2019/01/03 15:39

投稿

Ces_
Ces_

スコア13

title CHANGED
File without changes
body CHANGED
@@ -1,33 +1,18 @@
1
1
  ### 前提・実現したいこと
2
2
 
3
- 私はつい最近プログラムをRubyにて始めたものなのですが、Paizaの問題にてどうしてもわからないことがあったので質問させてもらいます。
3
+ 私はつい最近プログラムをRubyにて始めたものなのですが、どうしてもわからないことがあったので質問させてもらいます。
4
4
 
5
- paizaのD105:長さの一致 https://paiza.jp/challenges/ranks/d/info
6
- ”2つの文字列が入力されるので文字列の長さが一致していれば "Yes" 、違う場合は "No" と出力するプログラムを作成してください。”
5
+ ”2つの文字列が入力され
7
6
 
8
7
  入力は
9
- paiza
8
+ abcde
10
- paiza
9
+ 12345
11
- という風に改行区切りで入力されます。末尾に改行が 1 つ入ります。
10
+ という風に改行区切りで入力され末尾に改行が 1 つ入ります。
12
11
 
13
- という問題でlengthメソッドにて文字数を求めて==で比較し、等しければ"yes"を出力し、そうでなければ"No"を出力するといったコードを書きました。
12
+ という条件をlengthメソッドにて文字数を求めて==で比較し、等しければ"yes"を出力し、そうでなければ"No"を出力するといったコードを書きました。
14
- 最初に書いたコード(下記に添付したコードの1つめ)では上記のpaizaを入力したら"No"の値が帰ってきました。
13
+ 最初に書いたコード(下記に添付したコードの1つめ)では上記のもの入力したら"No"の値が帰ってきました。
15
14
  色々試すと、getsに.chompメソッドをつければうまくいくことがわかりました(下記のコードの2)。
16
- ということは改行コードで文字数に差があると判定されてるということだと思い、
17
- 試しに
18
15
 
19
- m = gets
20
- n = gets
21
-
22
- p m
23
- p n
24
-
25
- と実行しどういう入力がされてるのか試してみたら 
26
-
27
- paiza/n
28
- paiza/n
29
-
30
- と帰って来ました。
31
16
  ここで気になったのですが、なぜ入力は改行含め同じ数なのにchompをつけなければうまくいかないのでしょうか。
32
17
 
33
18
  知識がないためまとまりのない文、説明になってしまい申し訳ありません。
@@ -39,8 +24,8 @@
39
24
 
40
25
  ```ruby
41
26
  #入力値は
42
- paiza
27
+ abcde
43
- paiza
28
+ 12345
44
29
  #という風に改行区切りで入力されます。末尾に改行が 1 つ入ります。
45
30
 
46
31
  # 1 ~~~~~~~~~~~~~~~~~