품목정보
출간일 | 2014년 02월 26일 |
---|---|
쪽수, 무게, 크기 | 302쪽 | 596g | 180*230*30mm |
ISBN13 | 9788965400592 |
ISBN10 | 8965400597 |
출간일 | 2014년 02월 26일 |
---|---|
쪽수, 무게, 크기 | 302쪽 | 596g | 180*230*30mm |
ISBN13 | 9788965400592 |
ISBN10 | 8965400597 |
프로그래머를 위한 수학 책 이 책은 프로그래머가 매일매일의 프로그래밍 작업을 더 잘 이해할 수 있도록 하는 데 도움이 되는 책이다. 프로그래밍의 기본은 컴퓨터 과학이며 컴퓨터 과학의 기본은 수학이다. 그러므로 수학을 배운다는 것은 프로그래밍의 기본을 탄탄히 하는 것으로, 수학을 배우면 제대로 된 프로그램을 만드는 데 많은 도움을 준다. 이 책을 통해 프로그래밍에 도움이 되는 '수학적 사고방식'을 배우고, 수학이 가진 아름다움과 즐거움을 느껴보기 바란다. |
Chapter 01 0 이야기: '없다'는 것이 '있다'라는 것의 의미 1. 이 장에서 배울 내용 2. 초등학교 1학년의 추억 3. 2진법 4. 위치값 기수법 5. 지수법칙 6. 0의 역할 7. 인간의 한계와 구조의 발견 8. 이 장에서 배운 내용 Chapter 02 논리: true와 false 둘로 나누기 1. 이 장에서 배울 내용 2. 왜 논리가 중요한가? 3. 승차 요금 문제: 빠짐없이 겹치지 않게 나누기 4. 복잡한 명제 만들기 5. 드 모르간의 법칙 6. 카르노 맵 7. 정의되지 않음을 포함한 논리 8. 이 장에서 배운 내용 Chapter 03 나머지: 주기성과 그룹 나누기 1. 이 장에서 배울 내용 2. 요일 퀴즈 (1) 3. 요일 퀴즈 (2) 4. 거듭제곱 퀴즈 5. 오셀로 게임을 이용한 통신 6. 친구 찾기 퀴즈 7. 타일 깔기 퀴즈 8. 한붓 그리기 퀴즈 9. 이 장에서 배운 내용 Chapter 04 수학적 귀납법: 수많은 도미노를 쓰러뜨리려면 1. 이 장에서 배울 내용 2. 소년 가우스, 덧셈을 구하다 3. 수학적 귀납법: 수많은 도미노를 쓰러뜨리려면 4. 홀수의 합 구하기: 수학적 귀납법의 예 5. 오셀로 퀴즈: 잘못된 수학적 귀납법 6. 프로그램과 수학적 귀납법 7. 이 장에서 배운 내용 Chapter 05 순열과 조합: 세지 않기 위한 법칙 1. 이 장에서 배울 내용 2. 센다는 것: 정수와의 대응 3. 나무 세기: 0을 잊지 말자 4. 덧셈 법칙 5. 곱셈 법칙 6. 치환 7. 순열 8. 조합 9. 퀴즈로 연습하기 10. 이 장에서 배운 내용 Chapter 06 재귀: 자신으로 자신을 정의 1. 이 장에서 배울 내용 2. 하노이의 탑 3. 두 번째 계승 4. 피보나치 수열 5. 파스칼의 삼각형 6. 재귀적인 도형 7. 이 장에서 배운 내용 Chapter 07 지수적 폭발: 곤란한 문제와의 싸움 1. 이 장에서 배울 내용 2. 지수적 폭발이란 무엇인가? 3. 2배 게임: 지수적 폭발이 일으키는 문제 4. 이진 검색: 지수적 폭발을 이용한 검색 5. 로그: 지수적 폭발을 다루는 도구 6. 암호: 지수적 폭발로 비밀을 지킴 7. 지수적 폭발에 대처하려면 8. 이 장에서 배운 내용 Chapter 08 계산할 수 없는 문제: 셀 수 없는 수, 프로그래밍할 수 없는 프로그램 1. 이 장에서 배울 내용 2. 귀류법 3. 셀 수 있음 4. 대각선 논법 5. 계산할 수 없는 문제 6. 정지 판정 문제 7. 이 장에서 배운 내용 Chapter 09 프로그래머 수학이란?: 정리를 대신하여 1. 이 책을 되돌아보며 2. 문제를 해결한다는 것 찾아보기 |
이 책은 프로그래밍에서 수학이 어떻게 쓰이는 지 보여줍니다. 작가가 프로그래머이자 소설가이기 때문에 더 재밌고 쉽게 설명된 것 같습니다. 이 작가의 다른 책들도 좋은 내용일 것 같습니다. 이 책을 읽고 수학의 중요성을 실감했습니다. 논리적으로 생각하고 코드를 짜기 위해 수학이 기본이 되고 창의성의 배경에 수학적 지식이 있음을 알게 되었습니다. 특히 순열과 조합이나 수학적 귀납법 같은 부분은 실제로 학교에서 배운 내용이기 때문에 더 인상 깊었고 저 말고 다른 고등학생 독자들도 아는 개념이 나오기 때문에 더 잘 이해하고 오래 기억할 수 있으리라 생각합니다. 고등학교 수준의 쉬운 개념만을 다루기 때문에 수학적 설명 부분은 쉽게 이해할 수 있었고, 프로그래밍에서 수학이 어떤 형태로 쓰이는 지 알 수 있었습니다. 다만 중간 중간 코드가 나오고 기본적이긴 하지만 전문 용어가 자연스럽게 쓰이기 때문에 저와 같은 비전공자나 인문계 고등학교 학생들보단 수학적 개념이 부족하고 어느 정도 프로그램 기초 지식이 있는 분들에게 더 적절한 것 같습니다. 하지만 단순히 수학의 중요성을 깨달을 정도라면 비전공자분들도 읽기 좋은 책입니다.
지금 고등학교 수학 교육과정에서 십진법과 이진법이 삭제되었다.
컴퓨터는 이진법 체계인데, 이제 수학 교육과정에서 이진법이 빠졌으니 정보시간에 이진법을 배울 지도 모르겠다. 컴퓨터 프로그래머들 중에서 전산과를 나온 사람들보다 수학과를 나온 사람들의 프로그램이 짧고 간결하다고 한다. 프로그램은 그만큼 컴퓨터에서 더 효율적일 것이다.
불행하게도 순서도 또한 수학과 교육과정에서 사라진 지 몇 년 되었다.
수학의 유용성을 알고자 선택한 책인데, 수학 책에서의 단원을 고려하여 짜임새있게 구성된 것이 인상적이었다. 수학적 귀납법과 도미노는 이미 많이 사용되고 있지만, 순열과 조합 그리고 지수와 로그(검색과 암호)에 대해 프로그램과 연관지어 설명한 부분은 매우 인상적이었다.
그래서 이 책을 구입한 것에 대해 매우 만족하였다.