반복문도 알고 메소드도 배웠다.
이제 구구단을 만들자. 이것도 우습게 여기는 사람 많지만 여기서부터가 시작이다. 구글, 페이스북도 초기는 초라했다.
언어를 떠나 프로그래밍의 가장 핵심은 논리구조다.
누구나 이해 할 수 있게 말하자면, Flow(흐름)이라고 할 수 있다.
지금 짜려는 것은 특정 단을 입력하면 해당 단의 9까지의 곱셈을 출력하는 것이다.
2단 이러면
2 * 1 = 2
...
..
.
2 * 9 = 18
이런 형식을 말한다.
해보자.
무엇이 필요로 할까부터 생각한다!
우선 반복문이 필요하다.
2 * 1 = 2 이런 표현의 경우 2의 경우는 사용자가 단을 입력 하는 것이다.
즉, 내가 고려 할 게 아니다. 그럼 난 반복문으로 표현 할 것은 1~9까지다.
반복문으로 하면 for i in 1..9 이렇게 된다.
그리고 출력 형식은 puts "2 * #{i} = #{2*i}" 이렇게 되겠지요??
아직 미완성이다.
무엇이 더 필요할까?
이 코드를 계속 호출 할 수 있었으면 좋겠다. 10번이던지 100번이던지? 그럴때 필요한 것은 메소드!
for i in 1..9
puts "2 * #{i} = #{2*i}"
end
이 형식을 메소드로 이름을 붙이자.
def gugudan
for i in 1..9
puts "2 * #{i} = #{2*i}"
end
end
자 이제 겉껍질을 감싸보았다.
2%부족하다.
아직 조금 부족하다.
우리는 2단만 완성하는게 아니다 특정 단 모두를 포함해야 한다.
그럼 우리는 어떻게 할까?
바로 , 메소드의 인자!
def gugudan(dan) -> dan이라는 변수명에 분명 사용자가 입력한 데이터가 입력 될 것이다.(가정하자)
그럼
puts "2 * #{i} = #{2*i}" 이 문장도 puts "#{dan} * #{i} = #{dan*i}" 이렇게 바꾼다.
그럼 완전하다. 코드는 이렇다!
def gugudan(dan) for i in 1..9 puts "#{dan} * #{i} = #{dan*i}" end end이제 실행 해보자!
irb(main):049:0> gugudan 2 2 * 1 = 2 2 * 2 = 4 2 * 3 = 6 2 * 4 = 8 2 * 5 = 10 2 * 6 = 12 2 * 7 = 14 2 * 8 = 16 2 * 9 = 18 => 1..9 irb(main):050:0> gugudan 10 10 * 1 = 10 10 * 2 = 20 10 * 3 = 30 10 * 4 = 40 10 * 5 = 50 10 * 6 = 60 10 * 7 = 70 10 * 8 = 80 10 * 9 = 90 => 1..9 irb(main):051:0>
복습이 중요한듯 싶지만, 프로그래밍은 호기심이 중요하다.
'프로그래밍 > Ruby' 카테고리의 다른 글
Ruby 프로그래밍 - 이클립스에 Aptana3 plugin (0) | 2015.02.20 |
---|---|
Ruby 프로그래밍 - Rubygem 설치하기 (0) | 2015.02.20 |
Ruby 프로그래밍 - 6. 메소드(함수) (0) | 2015.02.19 |
Ruby 프로그래밍 - 5. 반복문 (0) | 2015.02.19 |
Ruby 프로그래밍 - 4. 조건문 (0) | 2015.02.19 |