모든 프로그래밍의 기본은 입출력(I/O)에서 시작된다. 프로그램이란 입력받은 데이터에 따라 결과를 연산하고 다른 시스템에 이를 전달 하는 것이다. 전달 받게되는 값을 우리는 출력값이라고 부른다. 모든 프로그램은 사용자가 데이터를 입력하는 방법이 존재해야 한다. 그리고 사용자는 그 결과를 받아내야한다. Java 언어에서 어떤 방식으로 프로그램에 입출력을 하는지 알아보자. 이번 글에대해 이해하기 위해서는 Java언어에서 변수의 종류와 선언 방법, 그리고 클래스 개념에 대해서는 기본적으로 숙지하고 있어야 이해하기 수월할 것이다. 1. 콘솔 입력 Java에서 입출력은 크게 2가지 방법으로 나뉜다. 바로 콘솔 입출력과 파일 입출력이다. 콘솔 입출력은 프로그램 실행 환경에 따라 각각 달라진다. Java의 경우 많은..
수학적 귀납법은 모든 자연수에 대하여 주어진 성질이 만족하는가 판단하는 중요한 증명 방법이다. 앞으로 프로그래밍을 하면서 풀게 되는 여러 명제들의 증명 방법에 대해 알기 쉬워지고, 동적 프로그래밍과도 연관성이 있기 때문에 수리논리학에서 기초적으로 많이 나오는 방법이다. 수학적 귀납법을 통하여 여러가지 명제에 대해 증명하는 법을 배워보자. 1. 공리와 귀납 논증 수학적 귀납법을 이해하기 위해서는 우선 공리에 대한 이해가 필요하다. 우리는 "1+1=2이다."라는 명제를 직관적으로 사용한다. 이와 같은 명제는 별도의 증명이 필요가 없다. 우리가 사용하는 수학 체계에서는 위 명제는 마치 진리와 같게 사용된다. 귀납 논증은 바로 공리에서 부터 시작된다. 귀납 논증은 '구체적 사실로 부터 보편적인 사실을 추론해 내..
1. 논리와 명제 논리는 한가지 현상에 대해서 주장하고 이를 증명하는 것을 의미한다. 예를들어 "사람들은 화장실에 가면 소변을 본다"라는 한가지 문장이 있다고 하자. 이 문장을 우리는 명제라고 한다. 이 처럼 한가지 현상을 주장하는 것을 논증이라 하고, 이미 우리가 알고있는 사실들을 통해 위 명제가 참인지 거짓인지 밝혀 내는 작업을 추론이라고 한다. 이와 같은 행위 자체를 논리라고 말하고, 논리를 연구하는 학문을 논리학이라고 한다. 명제란 앞에서 설명했듯이 참인지 거짓인지를 판별 할 수 있는 문장이어야 한다. 참인지 거짓인지 판별할 수 없는 문장은 명제가 아니다. 아래에 3가지 문장에 대해 명제인지 아닌지 판별한다면 다음과 같다. 지구는 둥글다. (참인 명제)프랑스는 아시아 대륙에 있다. (거짓인 명제)..