프로그래밍 입문자에게 가장 익숙한 데이터 형(data type)은 숫자와 문자일 것이다. 이번 시간에는 실제로 가장 많이 사용되는 데이터 형인 문자와 숫자를 프로그래밍에서는 어떻게 표현하고 연산하는지 알아보자.
숫자
루비에서는 큰따옴표나 작은따옴표가 붙지 않은 숫자는 숫자로 인식한다.
puts 1+1
결과 : 2
puts 1.2+1.3
결과 : 2.5
루비에서는 숫자 내에 _(언더바)를 허용하는데, 이것은 자리수를 사람이 보기 편하게 하는 용도로 사용될 수 있다. 실제로 해석될 때는 무시된다.
puts 1_000_000+1_000
결과 : 1001000
puts 2-1
결과 : 1
곱하기를 할 때는 *(에스터리스크, Asterisk, 키보드 자판 상으로 숫자 8 위)를 사용한다.
puts 2*5
결과 : 10
나누기를 할 때는 /(슬래쉬, slash, 키보드 자판 상으로 오른쪽 shift 키 왼쪽)를 사용한다.
puts 6/2
결과 : 3
참조
문자
문자는 "(큰 따옴표) 혹은 '(작은 따옴표) 중의 하나로 감싸야 한다. 큰 따옴표로 시작하면 큰 따옴표로 끝나야하고, 작은 따옴표로 시작하면 작은 따옴표로 끝나야 한다. String이라고 한다.
puts "coding everybody"
puts 'coding everybody'
숫자를 따옴표로 감싸면 문자가 된다. 아래는 문자다. .class는 값의 데이터 형을 알려주는 기능이다.
puts "1".class
결과 : string
아래와 같이 따옴표 없는 숫자는 Fixnum이 출력된다. Fixnum은 숫자다.
puts 1.class
결과 : Fixnum
만약 문자열 안에 작은 따옴표나 큰따옴표를 넣고 싶다면 어떻게 해야 할까?
puts 'egoing's ruby'
위와 같은 구문은 문자의 시작과 끝을 컴퓨터에게 알려줄 수 없다. 따라서 아래와 같이 한다.
puts "egoing's ruby"
또는 아래처럼 ' 앞에 \(역슬래쉬로 에터 위에 위치한다)
puts 'egoing\'s ruby'
\를 ' 앞에 위치시키면 ' 를 문자열의 시작과 끝을 구분하는 구분자가 아니라 단순히 문자로 해석하도록 강제 할 수 있다. 이러한 기법을 이스케이프(escape)라고 한다.
여러줄의 표시
여러줄을 표시하기 위해서는 아래와 같이 한다. \n는 줄바꿈을 의미하는 특수한 문자다. \n 사용하는 경우 큰따옴표를 사용해야 한다. 작은 따옴표를 사용하면 \n이 그대로 출력될 것이다.
puts "안녕하세요.\n생활코딩의 세계에 오신 것을 환영합니다"
문자연산
문자와 문자를 더할 때는 아래와 같이 한다.
puts "coding"+" everybody"
결과 : coding everybody
문자를 곱할 때는 '*'를 사용한다.
puts "coding everybody"*3;
결과 : coding everybodycoding everybodycoding everybody