Beginner_Coder 1303 : 숫자사각형1 JUNGOL www.jungol.co.kr 문제 사각형의 높이 n과 너비 m을 입력받은 후 n행 m열의 사각형 형태로 1부터 n*m번까지 숫자가 차례대로 출력되는 프로그램을 작성하시오. 숫자의 진행 순서는 처음에 맨 윗줄의 왼쪽에서 오른쪽으로 1부터 차례대로 너비 m만큼 출력한 후 다음 줄로 바꾸어서 다시 왼쪽에서 오른쪽으로 1씩 증가하면서 출력하는 방법으로 n번 줄까지 반복한다. 입력 형식 사각형의 높이n와 너비m(n과 m의 범위는 100 이하의 정수)이 주어진다. 출력 형식 위에서 형태의 직사각형을 입력에서 들어온 높이 n과 너비 m에 맞춰서 출력한다. 숫자 사이는 공백으로 구분한다. 입력 예 4 5 출력 예 1 2 3 4 5 6 7..
Language_Coder 533 : 선택제어문 - 자가진단6 JUNGOL www.jungol.co.kr 문제 남자는 'M' 여자는 'F'로 나타내기로 하고 18세 이상을 성인이라고 하자. 성별('M', 'F')과 나이를 입력받아 "MAN"(성인남자), "WOMAN"(성인여자), "BOY"(미성년남자), "GIRL"(미성년여자)을 구분하여 출력하는 프로그램을 작성하시오. 입력 예 F 15 출력 예 GIRL 문제 풀이 - Python3 gender, age = input().split() age = int(age) if gender == 'M': if age >= 18: print('MAN') else: print('BOY') else: if age >= 18: print('WOMAN') else: pri..
Language_Coder 122 : 선택제어문 - 형성평가3 JUNGOL www.jungol.co.kr 문제 년도를 입력받아 윤년(leap year)인지 평년(common year)인지 판단하는 프로그램을 작성하시오. 입력 예 2008 출력 예 leap year Hint! 400으로 나누어떨어지면 윤년이다. 또는 4로 나누어떨어지고 100으로 나누어떨어지지 않으면 윤년이다. 나머지는 모두 평년이다. 문제 풀이 - Python3 year = int(input()) if year % 4 == 0 and year % 100 != 0 or year % 400 == 0: print('leap year') else: print('common year')
SCE 논리 연산자 and, or 표현식과의 관계이다. 참, 거짓 판정에 이어 논리 연산자의 결과는 expresstion 값이 되는데, 이를 short-circuit evaluation(SCE) 혹은 lazy evaluation이라고 한다. or 왼쪽이 참인 경우 왼쪽 값 반환 왼쪽이 거짓인 경우 오른쪽 값 반환 and 왼쪽이 참인 경우 오른쪽 값 반환 왼쪽이 거짓인 경우 왼쪽 값 반환 bool 타입은 당연하게 Ture, False 값들이 나온다. bool 타입이 아닌 다른 타입의 값들을 비교해본다. 파이썬에서 0은 False이므로 0 or 100 결과 값은 or의 오른쪽 값인 100이 반환된다. 'hello'와 'python'은 빈 문자열이 아니므로 True이다. 따라서 'hello' or 'pytho..
💭 비교 연산자와 논리 연산자 조건식에 사용 가능한 비교 연산자와 논리 연산자가 있다. 비교 연산자와 논리 연산자의 결과 값은 항상 True 아니면 False이다. 비교 연산자 > >= 참 ^ (xor) : eXclusive OR (XOR, 배타적 논리합) 같으면 거짓, 다르면 참 💭 비교 연산자 chaining 비교 연산자는 임의로 체이닝 된다. 파이썬에는 범위 조건을 표현할 때 a
💭 대입 연산 (Assignment) 대입 연산은 객체 복사가 아니다. 따라서 지금부터 설명할 대입과 복사는 연관된 것이 아닌 별개이다. id() 함수는 변수의 주소 값을 반환한다. 대입 연산은 주소 값을 복사하여 대입하는 것이기 때문에 b의 주소도 a의 주소와 같은 것을 확인할 수 있다. 이후 a 값을 변경한 뒤에 b의 값도 변화하는지 확인해본다. a에 1을 더하였다. a와 b는 주소 값이 같았었지만 b 값은 변화되지 않았고, a의 주소가 바뀌었다. 이를 이해하려면 iterable과 immutable의 개념에 대해서 알아야 한다. 지금은 간단히 그림으로만 설명한다. int 타입은 immutable 한 타입이다. 따라서 값 별로 개개인의 메모리 공간을 하나 갖고 있는 것이다. 파이썬에서는 중복된 immu..
파이썬의 집합 데이터 타입 list 순서 있음. 중복 허용. mutable tuple 순서 있음. 중복 허용. immutable set 순서 없음. 중복 허용 안 함. dict 순서 없음. key와 value 쌍으로 구성. dict dictionary 타입은 key-value 쌍으로 저장되는 데이터 집합이다. list, tuple, set은 value 중심지만 알고보면 key-value쌍으로 구성되어 있다. dict에서 key-value 쌍은 순서가 고정되지 않으므로 순서가 없고, key는 중복될 수 없다. 'name'과 'email'이라는 key 값이 있고, 'name' key에 대응하는 value 값인 '홍길동'과 'email' key에 대응하는 값인 'hong@mail.com' value 값이 있는..
파이썬의 집합 데이터 타입 list 순서 있음. 중복 허용. mutable tuple 순서 있음. 중복 허용. immutable set 순서 없음. 중복 허용 안 함. dict 순서 없음. key와 value 쌍으로 구성. Set 데이터 간 순서가 없고 중복을 허용하지 않는 집합 데이터이다. set은 set() 함수 또는 {}로 만들 수 있다. 중복을 허용하지 않는다고 하였으므로 'dog' 데이터 한 개는 인정되지 않는다. 따라서 animals set에는 'dog', 'cat', 'bird' 세 가지 데이터만 존재한다. 만약 list나 tuple에서 중복된 데이터를 제거하고 싶으면 set으로 형 변환한 뒤 다시 list나 tuple로 형 변환하면 된다. 순서가 없는 집합이므로 인덱스를 사용할 수 없다. ..
파이썬의 집합 데이터 타입 list 순서 있음. 중복 허용. mutable tuple 순서 있음. 중복 허용. immutable set 순서 없음. 중복 허용 안 함. dict 순서 없음. key와 value 쌍으로 구성. tuple 콤마로 구분된 집합 데이터 타입이다. 원소 값은 immutable 한 값이기 때문에 list와 달리 원소 값을 변경할 수 없다는 게 특징이다. 따라서 주로 변경되지 말아야 할 데이터들을 저장할 때나, 복수의 값을 전달하는 목적으로 자주 쓰인다. 보통 튜플은 리스트와 비교하기 위해 ()로 선언하여 많이 쓰지만, 사실 ()가 없어도 콤마로 구분되어 있는 데이터 값들이면 튜플로 인식한다. 가장 중요한 점은 콤마(,)가 있어야 한다는 것이다. In [1]에서 보면 ()로 감싸 져 ..
파이썬 리스트 관련 함수 .index(value) list 안에 value 값이 있으면 해당 value 값의 index를 반환한다. 만약 찾는 value 값이 여러 개 있는 경우 가장 처음에 발견한 데이터의 index 값을 반환한다. 찾는 value 값이 없다면 ValueError가 발생한다. .remove(value) 특정 value 값을 가진 원소를 삭제한다. 같은 value가 여러 개 있다면 첫 번째로 찾은 원소만 삭제한다. 찾는 value 값이 없다면 ValueError가 발생한다. .pop() list 맨 뒤에 위치한 원소를 반환하고, 해당 값을 list에서 제거한다. 매개변수를 넣어 해당 index의 원소를 pop 할 수도 있다. .sort() list 원소들을 정렬하는 함수이다. 기본으로는 ..
1차원 list index를 하나만 사용하는 리스트이다. 리스트 내에 들어가는 데이터 타입은 어떠한 타입도 가능하다. list의 원소가 list인 경우 이를 다차원 리스트라고 말한다. 다차원 list list index를 여러 개 사용할 수 있다. 2차원 list data를 만들었다. data list의 길이는 3이다. [1, 2, 3] 1개, [10, 20, 30] 1개, [40, 50, 60] 1개 해서 총 3인 것이다. 인덱스 하나로만 접근하는 경우 위와 같이 리스트 내의 리스트가 출력된다. 리스트 내의 리스트의 원소를 출력하고 싶은 경우 [][]로 접근해야 한다. 다차원 리스트에서 각각의 원소들의 length는 다를 수 있다. 또한 꼭 다차원 list라 해서 list만 들어가야 하는 게 아닌, 다..
파이썬의 집합 데이터 타입 파이썬에는 여러 개의 데이터를 담는 집합 데이터 타입들이 있다. list 순서 있음. 중복 허용. mutable tuple 순서 있음. 중복 허용. immutable set 순서 없음. 중복 허용 안 함. dict 순서 없음. key와 value 쌍으로 구성. list list는 []으로 만들고, 각 데이터(원소)들은 콤마로 구분한다. 데이터(원소) 타입은 어떠한 타입도 가능하다. 비어있는 리스트(empty list)도 만들 수 있다. 인덱싱(index) list의 데이터는 순서가 존재한다. 따라서 배열처럼 index 값을 이용해 접근할 수 있다. 파이썬도 다른 언어들과 마찬가지로 index 값의 시작은 0이다. 만약 존재하지 않는 index를 참조하려고 하는 경우 IndexE..