본문 바로가기

2007/07

동굴 띠오리 똑똑하기로 소문난 김영재군. 그는 강원도 삼척시 대이리 동굴지대에 놀러갔다가 길을 잃어버렸다. 업친데 덥친격으로 폭우가 쏟아지기 시작했고 그는 비를 피해 동굴 밑으로 몸을 숨겼다. 그는 호기심이 많은 청년이라 동굴속에 무엇이 있는지 궁금해 계속 들어가게 되었는데 갑자기 동굴 신령이 나타나 무언가를 건내밀려 퀴즈를 내었다. "영재야, 여기 판위에 동전이 n개 있단다. 그 중에 앞면이 위로 향한 동전이 a개 있고, 나머지는 뒷면이 위를 향하고 있지. 이 동전을 두 집합으로 쪼개봐라. 단! 각 집합에 있는 위로 향한 동전의 개수가 똑같아야해. 조건에 맞게 동전을 두 집합으로 만들면 집으로 가는 길을 알려주지. 동전을 뒤집거나 해도 상관은 없지만 두 집합의 동전의 개수는 처음 n개 이어야해" 예를 들자면 동전 .. 더보기
2진수 표현에서 1의 개수 세기 요즘은 그런 일이 잘 없지만 예전에는 프로그램을 짜면서 bit operation을 잘 써야하는 경우가 있었다. bit operation을 쓰는 이야라하면 bit operation이 대부분 가벼운 명령어로 + 정도의 로드를 가졌기 때문에 속도가 빨랐랐고, 컴퓨터가 bit를 기반으로 하기 때문에 코드 좀 더 깜끔하게 짤 수 있었다. 가끔 메모리가 부족할 때면 1byte 변수하나를 8개의 bit로 나눠 쓰려는 목적으로 사용하기도 했다. 요즘에야 컴퓨터도 좋아지고 자원이 넉넉해져서 효율적인 측면 보다는 프로그램의 구조적인 측면을 더 중요하게 보는 경향이 있어서 bit operation을 굳이 쓰지 않아도 되기 때문에 크게 쓸 일은 없지만 컴퓨터 아키텍쳐상 bit operation은 여전히 cpu 기본 opera.. 더보기
이번 영재 캠프 수업 내용 - GUI를 이용한 자리 배치 프로그램 만들기 - Another Programming Paradigm, Functional Language - 그래프 이론 - 디지털시스템 및 실험 - 군 부호와 부호 이론 - Python을 이용하는 다중프로그래밍(multiprogramming)과 다중처리(multithreading) 더보기
오늘 Multithreading 수업 오늘 Multithreading 수업시간에 학생들에게 실습으로 줄 프로그램을 생각해봤는데요, 한 쓰레드에서는 계속해서 소수(prime number)를 구하고 있고, 다른 쓰레드에서는 사용자 입력을 기다리고 있다가 사용자가 enter를 치면 최근에 구한 소수를 출력하는 프로그램을 짜라고 실습을 내줄까 합니다ㅎㅎ 너무 쉬운 문제라서 시간이 너무 짧게 걸릴 것 같아서 살짝 걱정인데, 혹시 적당한 난이도의 복잡한 문제가 생각나면 좀 알려주세요 ㅋㄷ @ 만들고 아무도 글을 안쓰시길레 먼저 하나 써봅니다 ㅋㄷ 더보기