6.13.2 탑-다운(보텀-업) 구현 (Top-Down and/or Bottom-Up Implementation) 이전 포스트 함수 추상화와 단계적 개선(1) 을 보려면 ●클릭하기● *printCalendar 도식화 - 앞서 분할-정복으로 문제를 세분화 시켰다면, 이제는 그 문제들을 해결할 코드를 구현 할 차례다. - 일반적으로, 서브 문제(subproblem, 분할-정복 시 생겼던 하위 문제들)들은 함수를 구현한 코드에 상응하지만, 일부는 불필요할 정도로 단순하다. - 우리는 어떤 모듈로 함수를 구현 할 지, 그리고 어떻게 다른 함수들과 조합할 지 결정해야 한다. - 이전 포스트 부터 배웠던 방법을 토대로 코드를 구현한다면, 코드를 해석할 때 훨씬 읽기 쉬워진다. - 이전 포스트에서 예로 들었던 pri..
6.12 사례 연구: 랜덤 ASCII 문자 생성하기(Generating Random ASCII Characters) - 문자는 정수로 작성이 가능하다. 랜덤 문자 생성은 정수를 생성하는 것과 같다. - 아스키 문자는 0부터 127 까지의 정수로 이루어진 아스키코드를 가지고 있다. - 랜덤 아스키 문자를 생성하기 위해서, 0부터 127까지 정수를 랜덤으로 발생시켜야 한다. - 그 후 chr 함수를 이용하여 정수로 부터 문자를 얻을 수 있다. chr(randint(0, 127)) - 소문자의 아스키코드를 랜덤으로 생성하기 위해서 ord 함수를 이용할 수 도 있다. ord('a') - 그래서 소문자 a 부터 z까지의 아스키 코드를 얻기 위해선 ord('a') 와 ord('z')를 이용해 아래와 같이 코드를 얻..
6.8 사례 연구: 10진수를 16진수로 변환하기(Converting Decimals to Hexadecimals) 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 #10진수를 16진수 string으로 변환 def decimalToHex(decimalValue): hex = "" while decimalValue != 0: hexValue = decimalValue % 16 hex = toHexChar(hexValue) + hex decimalValue = decimalValue // 16 return hex #정수를 단일 16진수 digit 문자로 바꾸기 def toHexChar(hexValue): if 0
6.6 레퍼런스값(=참조 값)에 의한 인자 전달(Passing Arguments by Reference Values) *tip 레퍼런스값(=참조 값)의 개념이 헷갈린다면, c언어의 주소 값과 같다고 생각하면 이해하기 쉽다. * 앞선 내용의 용어 복습 def 함수이름 (매개변수1, 매개변수2): print("함수가 호출 되었습니다.") 함수이름(인자1, 인자2) # 함수를 인자와 함께 호출한다. - 인자(arguments)를 이용해 함수를 호출 할 때, 각 인자의 레퍼런스(argument's reference)는 함수의 매개변수에 전달됩니다. - 파이썬의 모든 데이터는 사실 객체(object)이기 때문에, 한 객체를 가르키는 변수는 사실상 한 객체를 가르키는 레퍼런스(reference)이다. - 인자(ar..
*4.1 (Algebra: solve quadratic equations) The two roots of a quadratic equation, for example, can be obtained using the following formula: is called the discriminant of the quadratic equation. If it is positive, the equation has two real roots. If it is zero, the equation has one root. If it is negative, the equation has no real roots. Write a program that prompts the user to enter values for a,..
6.4 반환값이 있는 함수 혹은 반환값이 없는 함수(Functions with/without Return Values) - 함수가 반드시 반환 값을 가지고 있어야 하는 것은 아니다. - 값을 반환하지 않는 함수를 void 함수(void function)이라고 부른다. *반환 값이 없는 함수 예제 - 성적 출력 프로그램 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 def printGrade(score): if score >= 90.0: print('A') elif score >= 80.0: print('B') elif score >= 70.0: print('C') elif score >= 60.0: print('D') else : print('F')..
6.1 함수(Functions) - 함수(Functions)는 코드를 재사용할 일이 있거나, 좀 더 조직적으로, 좀 더 간단하게 코드를 만들 때 사용한다. - 예를 들어 코드 1 에서 10 까지의 덧셈, 20에서 37까지의 덧셈, 50에서 60 까지의 덧셈의 결과를 출력하는 프로그램을 작성할 경우, 덧셈을 할 값들만 다르지 다른 코드는 다 비슷하다. - 이렇게 연산할 값만 다르고 공통된 작업을 하는 코드를 재사용한다면 더 효율적으로 코드를 작성 할 수 있다. - 이럴 때 이용하는 기능이 바로 함수(Functions)이다. * 함수를 사용하지 않았을 때 1 2 3 4 5 6 7 8 9 10 11 12 13 14 sum = 0 for i in range(1,11): sum += i print("Sum fro..
5.7 break와 continue 키워드(Keywords break and continue) - break와 cotininue 기능은 루프문의 사용성(controls)을 더 높여준다. - break 키워드를 이용하여 루프를 즉각적으로 종료시킬 수 있다. *break 키워드 예시 1 2 3 4 5 6 7 8 9 10 11 sum = 0 number = 0 while number = 100: break #sum이 100이 되면 while문을 종료하고 다음 명령어로 넘어간다. print("The number is ", number) print("The sum is ", sum) cs - while문은 변수 number가 20이 될 때까지 명령문을 반복해야한다. - 하지만 line 7, 8에 있는 sum >=..
- Total
- Today
- Yesterday
- 파이썬 객체
- 파이썬 문자열
- css
- 파이썬 진수 변환
- 자바스크립트 그래프
- css 박스
- 자바스크립트 자료구조
- 버츄어박스
- 파이썬 연산자
- 파이썬 if문
- 파이썬 for
- 파이썬 while
- css 그리드
- 파이썬 터틀
- 자료구조
- 백준 1874
- 백준 11501
- 파이썬 단계적 개선
- 파이썬
- 파이썬 리스트
- 웹
- 명품 c++ 실습
- 백준
- 백준 10451
- 자바 에센셜 실습문제
- 파이썬 함수
- 파이썬 클래스
- 파이썬 예제
- 파이썬 선택문
- 자바
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |