본문 바로가기

studio/programmazione

[python] 인터프리터로 프로그램 파일 실행하기


오늘도 박소영 선생님이 안 계신 관계로 python 두 번째 수업


그런데 조금 더 체계적으로 가르쳐 주셨으면;;


아무리 우리가 C를 배웠다지만, 엄연히  python은 다른 언어인데


여기서 콜론이 뭔지도 모르겠고;;;;


글을 쓰는 지금도 모르겠다


대충 여기서 콜론 찍는 게 C에서 콜론 안 찍는 거고,


여기서 콜론 안 찍는게 C에서 세미콜론 찍는 거랑 비슷한 것 같은데


설명을 좀 해 주셔야죠;;









삼각형의 넓이 구하기.


그것도 무려 직각이등변삼각형...;;;


모든 프로그램에서 삼각형 넓이 구하는 건 기본인가보다.




[File]>[New Window]를 눌러 새 창을 띄우고


위와 같이 입력한다.


python은 들여쓰기가 중요하므로 건들지 마라고 하셨다...


가장 첫 줄은 말 그대로 출력하는 부분.


두 번째 줄에서,  raw_input이 C에서의 scanf와 비슷한 기능을 하는 것 같다.


(왜 설명을 감으로 적어야 하는 건지 아직도 이해가 안 간다...;;)


그리고 그렇게 입력받은 변수를 int형으로 받기 위해, 괄호를 씌우고 int를 써 준다.


아, 이 때 연두색 부분은 저렇게 입력한 문자열 뒤에 입력된 문자를 받는다는 거니까 별 상관은 없다..


그리고 for문 시작하니까 한 줄 띄우고....(사실 띄워야 하는지 안 그래도 되는지는 잘 모르겠다만)


for문을 시작한다! 사실 이 부분은 넓이 구하는 데에 영향을 미치는 부분은 아니고


그냥 삼각형을 별이 쌓여 있는 모양으로 시각화해서 보기 위한 부분...


i를 d+1까지의 범위까지 1씩 더한다는 뜻에서,


for i in range(d+1):


이라고 써 준다.


근데... 이거 i가 자동적으로 1이나 0으로 초기화되있는 건가..?


너무 초간단해서 오히려 이해하기 어렵다....


그리고 d+1은... 아마도 1씩 더한다는 뜻이겠지..


print '*' * i


위 문장으로 별을 직각삼각형 모양으로 출력한다.(밑의 출력 화면을 보면 안다)


그 다음이 넓이를 구하는 부분.


넓이를 area로 잡고, 직각이등변삼각형의 넓이는 (d**2)/2이니까(python에서 **은 거듭제곱과 같다)


그리고 float형으로 지정해서


area=float((d**2)/2)


이렇게 쳐 준다


그리고 나서... 값을 받기 위해서인지 뭐 어째서인지 여튼


raw_input()을 쳐 준다..!


그리고 실행 화면



단점이 바로 보인다!


넓이가 소수로 나타나긴 하나, 정수인 결과가 나온다.


area의 형이 float이긴 하나 d^2을 나누는 수가 2로, 정수이기 떄문에 나타나는 현상이다.


따라서, 2를 2.0으로 바꾸어주자.




그리고 실행을 하면...




12.5가 나온다.


이렇게 간단하게 직각삼각형의 넓이 구하기를 마치겠다...!











확실히 python이 간단하긴 한데


C에 익숙해져서 그런지 선생님의 설명이 희한한건지


난 왠지 정신이 ㅇ벗다...









'studio > programmazione' 카테고리의 다른 글

[python] 글자 수 구하기  (1) 2010.10.27
[python] range의 기능  (1) 2010.10.27
[C/C++] OPP의 개요 - Project  (0) 2010.06.23
[C/C++] OPP의 개요 - Training  (0) 2010.06.23
[C/C++] OOP의 개요 - Core  (2) 2010.06.23