Ruby Examples
This commit is contained in:
10
level4/31.rb
Executable file
10
level4/31.rb
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
사람의 이름과 나이를 해시로 표현
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", age: 13 }
|
||||
|
||||
puts person
|
||||
10
level4/32.rb
Executable file
10
level4/32.rb
Executable file
@@ -0,0 +1,10 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
해시에서 특정 키의 값 출력
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", age: 13 }
|
||||
|
||||
puts person[:name]
|
||||
18
level4/33.rb
Executable file
18
level4/33.rb
Executable file
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
모든 키와 값을 "이름: 나이" 형식으로 출력
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", age: 13 }
|
||||
|
||||
person.each do |key, value|
|
||||
puts "#{key}: #{value}"
|
||||
end
|
||||
|
||||
|
||||
people = [{ name: "Charlie", age: 13 },
|
||||
{ name: "Steve", age: 34 },
|
||||
{ name: "Anne", age: 23 }]
|
||||
people.each { |item| puts "#{item[:name]}: #{item[:age]}"}
|
||||
14
level4/34.rb
Executable file
14
level4/34.rb
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
가장 나이가 많은 사람 찾기
|
||||
=end
|
||||
|
||||
people = [{ name: "Charlie", age: 13 },
|
||||
{ name: "Steve", age: 34 },
|
||||
{ name: "Anne", age: 23 }]
|
||||
|
||||
person = people.max_by { |_| _[:age] }
|
||||
|
||||
puts person[:name]
|
||||
14
level4/35.rb
Executable file
14
level4/35.rb
Executable file
@@ -0,0 +1,14 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
점수 해시에서 평균 점수 계산
|
||||
=end
|
||||
|
||||
people = [{ name: "Charlie", score: 13 },
|
||||
{ name: "Steve", score: 34 },
|
||||
{ name: "Anne", score: 23 }]
|
||||
|
||||
avg = people.sum { |_| _[:score] } / people.length.to_f
|
||||
|
||||
puts avg
|
||||
12
level4/36.rb
Executable file
12
level4/36.rb
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
해시에 새로운 요소 추가
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", score: 13 }
|
||||
|
||||
person[:address] = "Seoul"
|
||||
|
||||
puts person
|
||||
13
level4/37.rb
Executable file
13
level4/37.rb
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
해시에서 특정 조건(나이 ≥ 30)인 항목만 출력
|
||||
=end
|
||||
|
||||
people = [{ name: "Charlie", score: 13 },
|
||||
{ name: "Steve", score: 34 },
|
||||
{ name: "Anne", score: 23 }]
|
||||
|
||||
people.select { |item| item[:score] >= 30 }
|
||||
.each { |item| puts "#{item[:name]}: #{item[:score]}" }
|
||||
12
level4/38.rb
Executable file
12
level4/38.rb
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
해시 키 목록만 배열로 추출
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", score: 13 }
|
||||
|
||||
keys = person.keys
|
||||
|
||||
puts keys
|
||||
12
level4/39.rb
Executable file
12
level4/39.rb
Executable file
@@ -0,0 +1,12 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
해시 값 목록만 배열로 추출
|
||||
=end
|
||||
|
||||
person = { name: "Charlie", score: 13 }
|
||||
|
||||
keys = person.values
|
||||
|
||||
puts keys
|
||||
13
level4/40.rb
Executable file
13
level4/40.rb
Executable file
@@ -0,0 +1,13 @@
|
||||
#!/usr/bin/ruby
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
=begin
|
||||
단어 빈도수 계산 프로그램
|
||||
=end
|
||||
|
||||
words = "This is a test This is only a test".downcase.split(" ")
|
||||
|
||||
result = Hash.new
|
||||
words.each { |w| result[w] = result[w]?result[w]+1:1}
|
||||
|
||||
puts result
|
||||
Reference in New Issue
Block a user