본문 바로가기

전체 글135

(Python) 숫자 up & down 게임 좀전에 만들었던 숫자야구를 통해 이번 게임은 비교적 쉽게 만들 수 있었다. 이런 프로그램을 만들며 공부를 하니 더 재미있고 열심히 공부하게 되는것 같다. import random while True: num = random.randrange(1,30) ans = 0 count = 0 while num != ans: ans = int(input('숫자를 입력하시오 : ')) count += 1 if num ans: # max = num - ans 두 수의 차 print(f'up') else : print (f'축하합니다 {count}번 만에 맞췄습니다') 2022. 5. 7.
(Python) 숫자 야구 만들기 오늘은 강의시간이 비어 남는 시간에 숫자야구를 만들어보았다. 이런 프로그램을 혼자 처음 만들어봐서 완성했을때 뿌듯함도 컸고 나름 재미있었다. 다음에는 def와 class를 이용해서 코드를 조금 더 보기 쉽게 보완할 생각이다. # 1 import random base_ball = [] strike = 0 ball = 0 # 첫번째 게임이 끝난 후에도 게임이 지속되게 반복 running = True while running: for i in range(4): a = (random.randint(1,9))# 랜덤수를 a에 저장 후 중복이 아니라면 base_ball 리스트에 저장 while a in base_ball: a = random.randint(1,9) base_ball.append(a) base_bal.. 2022. 5. 6.
(Python) if 를 이용한 조건문 사람은 여러 상황에 따라 행동을 한다. 예를 들어 내가 배가 고프면 밥을 먹고 졸리면 잔다 와 같은 것이다. if 는 직역하면 '만약' 이다. 따라서 만약 ~~한다면 ~~해라 라는 문장을 만들 수 있다는 것이다. 이는 우리가 컴퓨터에게 어떤 상황에 닥쳤을 때 이렇게 해결하라는 해결책을 미리 제시해주는 것과 같다. if 문의 기본 구조는 가장 먼저 조건이 나온다. 예를 들어 집에 가야하는 상황에 택시를 탈지 버스를 탈지 고민한다고 해보자. 그럼 가장 먼저 '내가 돈이 얼마나 있는가'를 생각할 것이다. 내가 돈이 3만원 이상이 있다면 택시를 타고 3만원 이하면 버스를 탄다고 가정했을 때 if 문으로 만든다면 이러한 문장을 만들 수 있다.if money >= 30000:# 만약 내가 돈이 3만원 이상이라면 p.. 2022. 5. 4.
(Python) While()을 이용한 반복문 이제 입출력과 변수 선언에 대해 충분히 알았으니 이것을 이용한 다양한 프로그램을 만드는데 같은 코드를 계속 써야하는 번거로움이 있다. 예를들면 1부터 100까지 더하는 프로그램을 만들고싶은데 그걸 하나하나 다 치기엔 코드도 더러워질 뿐더러 내가 너무 힘들다. 그럴땐 반복문을 이용하여 쓰는 것이 좋다. 쉽게 말하자면 게임 매크로 같은 것이다. 매크로를 사용하는 사람들은 자고있으면서 계속 같은 행동을 반복하며 사냥을 하고 쉽게 레벨을 올린다. 이것은 컴퓨터에게 '언제까지 이 코드를 몇 번 반복해' 라고 말하고 그 '언제'와 '몇 번'을 내가 지정하는 것이다. while 문을 사용하는 방법은 다음과 같다.while count < 100:# count = 횟수 print("배고파")# 반복하고자 하는 코드 co.. 2022. 4. 26.
(Python) 리스트 할당 앞에 글에서는 입출력과 변수를 공부했다. 이번에는 리스트에 대해 배웠는데 리스트란 여러개의 숫자/문자를 하나의 리스트에 담는 것이다. 고등학교땐가 중학교때 배우는 집합을 생각하면 쉽다. 변수는 하나의 변수에 하나의 숫자가 들어가지만 리스트에는 하나의 리스트에 여러개의 수를 넣을 수 있다는 점에서 다르다. 이를 이용해 리스트에 몇 개의 수가 있는지 만약 수를 입력받았다면 어떤 수가 가장 크고 작은지도 알 수 있기 때문에 유용하게 쓰인다. 리스트 생성 리스트를 만드는 법은 간단하다.jaehwi = [1,2.5,'A','ABC']이렇게 [ ] 안에 넣고싶은 것을 넣는다면 파이썬은 리스트로 인식을 한다. 따라서 리스트의 이름도 원하는 대로 만들 수 있다. 그래서 내 이름으로 했다 ㅋ 위에서 넣은 데이터를 통해 .. 2022. 4. 19.
(Python) 입출력과 변수 OS를 마친 후 이제는 언어를 알아야 추후 공부에도 조금 더 쉽게 이해 할 수 있을 것 같아 언어중 가장 난이도가 쉽다는 파이썬을 공부했다. 사실 1학년때 배운 내용이 어느정도 있어 이해가 더 쉬웠고 재미있게 공부할 수 있었다.이번에 다룰 내용은 입출력과 변수이다.1. 입력과 출력 먼저 입/출력은 모니터에 입력과 출력을 할 수 있다는 뜻이다. 파이썬에서는 여러 함수가 내장되어있는데 그 중 print(), input() 함수는 입출력을 담당한다. 먼저 print() 는 '따옴표 안에 있는 모든 글자/숫자를 사용자에게 보여준다. print('안녕하세요')파이썬에서 위 코드를 입력한다면 '안녕하세요'가 출력되는 것을 볼 수 있다. 또한, print() 함수안에는 수식도 들어갈 수 있다. print(1+2) p.. 2022. 4. 17.
네트워크와 분산 시스템 이 책을 시작할 때에 P2P에 대해 배운적이 있었다. P2P는 서버의 과부하를 줄이기 위해 여러 사용자의 컴퓨터를 조금씩 사용하여 부담을 나누는 기법이다. 하지만 실제로 P2P기법은 사용자의 컴퓨터를 사용한다는 점에서 부정적인 시선이 있을 수밖에 없다. 하지만 점차 컴퓨터가 좋아져 사용자의 부담이 덜하고 사용자에게 혜택을 준다면 머지않아 P2P가 많이 사용될 거라고 생각한다. 또한, 전화선의 발전 중 1세대와 2세대를 나누는 기준이 데이터를 보낼 때 아날로그와 디지털의 차이라고 배웠다. 디지털 데이터가 같은 대역에 더 많은 사용자를 수용할 수 있다고 하는데 디지털 데이터로 어떻게 음성을 보내는지, 왜 디지털 데이터를 쓰면 더 많은 사용자를 수용할 수 있는지에 대해서도 궁금증이 생겼다. 1. 네트워크와 인.. 2022. 4. 17.
파일 시스템 (2) 이번 단원에서는 디스크의 할당 방식에 대해 다룬다. 디스크의 할당 방식도 메인 메모리의 할당 방식과 유사하다. 연속 할당과 불연속 할당은 메모리의 가변분할과 고정분할이라고 생각하면 쉽게 공부할 수 있다. 3. 디스크 파일 할당 3-1 연속할당과 불연속 할당 연속 할당 : 데이터를 디스크 상에 연속적으로 배열하는 간단한 방식 (가변 분할 방식) 비연속 할당 : 데이터를 비어있는 블록에 분산하여 저장하여 이에 관한 정보를 파일 시스템이 관리하는 방식 1. 연결할당 : 비연속 할당의 방식 중 하나이다. 처음 시작하는 블록에서 다음 블록의 주소를 가지고 있고 끝까지 연결하여 가는 방식 ex) 윈도우의 FAT 2. 인덱스 할당 : 비연속 할당의 방식 중 하나이다. 여러 블록에 데이터가 나누어 저장되어 있고 테이블.. 2022. 4. 16.
파일 시스템 (1) 이번 단원은 내가 컴퓨터를 다루는데 가장 많은 궁금증이 있었고 가장 어렵다고만 느꼈었던 파일에 대해 다룬다. 그 동안 C 드라이브는 뭐고 파일의 속성, 등등 알고는 있었지만 자세히 알려고 하지 않았던 기능을 알게 되어 나름 되게 뿌듯했다. 앞에 나왔던 내용이 생각보다 많이 나와 공부하는데 어렵다거나 이해가 되지 않는 부분은 없었고 신기하다는 생각을 많이 하며 공부했던 단원인 것 같다. 1. 파일과 파일 시스템 1-1 파일 시스템의 개요 컴퓨터는 사용자가 직접 컴퓨터에 저장하지 않고 운영체제에 맞겨 데이터를 저장한다. 그 이유는 앞서 많이 설명했듯이 사용자가 직접 저장을 하게되면 다른 사용자의 파일을 훼손하거나 저장장치의 내부를 어지럽힐 수 있기 때문이다. 이 때에 운영체제가 파일 관리자를 두어 파일을 저.. 2022. 4. 12.