본문 바로가기

Programming/과제

(11)
홀짝 판별 1. n % 2 == 0 짝수의 수학적 정의는 '2로 나누어 떨어지는 정수'다. 바꿔 말하면 '2로 나눴을 때 나머지가 0인 정수'이며, 이를 식으로 표현하면 위와 같다. 정의에 입각한 식이기 때문에 통상적으로 쓰이는 방법이다. 2. n&1 == 0 1의 이진수는 00000001이다. 즉 LSB(Least Significant Bit, 제일 오른쪽 비트)가 1이다. 반면 짝수를 이진수로 나타내면 bbbbbbb0이 된다(b는 임의의 비트). 즉 LSB는 무조건 0이다. 즉 1과 짝수의 LSB는 서로 다를 수밖에 없다. 따라서 (짝수) AND 1은 0이 되고, (홀수) AND 1은 1이 된다. $Let\; n\,=\, 13$ $then$ $n\; AND\; 1$ $=\;00001011_{(2)}$ $\;\;..
[과제] 수강신청 프로그램 친구의 부탁으로 도와준 프로젝트....였는데 하다 보니 내가 거의 다 하게 됐다. 자바를 이번에 처음 배우는 친구들이라 내 코드를 이해하지 못 하는 바람에 내가 다 맡았다. 나도 대단한 걸 한 건 아닌데... 점수를 잘 받게 해주려고 예외 처리도 넣고, 인터페이스도 쓰고 추상 클래스도 쓰고 다양한 요소들을 (억지로) 넣으려고 하다 보니 시간이 너무 촉박해져서 급하게 마무리지었다. 그래서 버그도 좀 있고 구현하려다 못 한 기능도 있고, 애초에 코드 자체가 굉장히 조악한 것 같다.  모든 소스 코드는 아래에 첨부한다.
피보나치 수열 피보나치 수열(Fibonacci sequence)은 다음과 같이 정의된다. 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 32 #include int seq(int n); int main() { int len; int i; printf("How long?: "); scanf("%d", &len); for (i = 1; i