어떤 수를 2로 나누었을 때 나누어 떨어지면 짝수이고, 나누어 떨어지지 않으면 홀수입니다.짝수의 예는 다음과 같습니다.2, 4, 6, 8, 10, 12, 14, 16홀수의 예는 다음과 같습니다.1, 3, 5, 7, 9, 11, 13, 15, 17나머지 연산자(%)를 사용한 짝수·홀수 판별나머지 연산자(%)를 사용하면 숫자가 짝수인지 홀수인지 간단하게 확인할 수 있습니다. 예제 코드는 다음과 같습니다.예제#include <iostream> using namespace std; int main() { &
영어 알파벳에서 a, e, i, o, u는 모음(Vowel)이며, 나머지 알파벳은 모두 자음(Consonant)으로 분류됩니다. 이 글에서는 C++를 사용하여 입력된 문자가 모음인지 자음인지 판별하는 방법을 단계별로 살펴보겠습니다.1. 기본 구현: 소문자 판별가장 간단한 방법은 if-else 조건문을 사용하여 문자가 a, e, i, o, u 중 하나와 일치하는지 비교하는 것입니다.예제 코드#include <iostream> using namespace std; int main() { char c = a; i
프로그래밍을 배우는 과정에서 가장 기본적이면서도 자주 등장하는 문제 중 하나가 바로 세 개의 숫자 중 가장 큰 값(최댓값)을 찾는 것입니다. C++에서는 if 문을 여러 번 사용하여 이를 손쉽게 해결할 수 있습니다. 아래 예제 프로그램을 통해 그 방법을 자세히 살펴보겠습니다.예제 코드#include <iostream> using namespace std; int main() { int a = 5 ,b = 1 ,c = 9; if(a>b) { &nb
이차 방정식은 일반적으로 ax2 + bx + c = 0(단, a ≠ 0) 형태로 표현되며, 그 근은 다음과 같은 근의 공식을 통해 구할 수 있습니다. x = ( −b ± √(b2 − 4ac) ) / 2a 여기서 b2 − 4ac 부분을 판별식(discriminant)이라고 합니다. 판별식의 값에 따라 근의 성질은 다음과 같이 세 가지 경우로 나뉩니다. b2 < 4ac : 근은 실수가 아니며, 서로 다른 두 복소수(허수)입니다. b2 = 4ac : 근은 실수이며, 두 근이 서로 같습니다(중근). b2 > 4ac : 근은
자연수(natural number)란 1부터 시작하는 양의 정수를 의미합니다.자연수의 나열은 다음과 같습니다.1, 2, 3, 4, 5, 6, 7, 8, 9, 10……처음 n개의 자연수 합은 for 루프를 이용하거나 수학 공식을 이용하는 두 가지 방법으로 계산할 수 있습니다. 각각의 방법을 사용한 C++ 프로그램을 아래에서 소개합니다.방법 1: for 루프를 사용한 자연수의 합for 루프를 반복 실행하면서 각 숫자를 누적하는 방식입니다. n개의 자연수 합을 계산하는 프로그램은 다음과 같습니다.예제#include<iostream&
윤년(leap year)은 달력 연도와 천문학적 연도 사이의 오차를 보정하기 위해 하루를 추가로 넣은 해를 말합니다.일반적으로 4로 나누어 떨어지는 해를 윤년이라고 부릅니다. 다만 100으로 나누어 떨어지는 해는 윤년에서 제외되며, 그중에서도 400으로 나누어 떨어지는 해는 다시 윤년으로 인정됩니다.윤년 판별 규칙 정리4로 나누어 떨어지지 않는 해 → 평년 (예: 2019)4로 나누어 떨어지고 100으로 나누어 떨어지지 않는 해 → 윤년 (예: 2016, 2020)100으로 나누어 떨어지지만 400으로 나누어 떨어지지 않는 해 →
팩토리얼(Factorial)이란?음이 아닌 정수 n의 팩토리얼은 1부터 n까지의 모든 양의 정수를 곱한 값입니다. 수학에서는 느낌표(!) 기호를 사용하여 표현합니다.예를 들어, 5의 팩토리얼은 다음과 같이 계산됩니다.5! = 5 × 4 × 3 × 2 × 1 5! = 120C++에서는 반복문(for loop)을 사용하는 비재귀 방식과 재귀 함수(recursive function)를 사용하는 방식, 두 가지 방법으로 팩토리얼을 구할 수 있습니다. 아래에서 각각의 구현 방법을 자세히 살펴보겠습니다.방법 1: 반복문을 사용한 팩토리얼 계산
구구단(곱셈표)이란?곱셈표는 임의의 수에 대한 곱셈 연산을 정의하는 표로, 일반적으로 10진법을 기반으로 하는 초등 산술 연산의 기초를 다지는 데 널리 활용됩니다.어떤 수의 곱셈표는 보통 10까지 작성하며, 각 행에는 해당 숫자와 1부터 10까지의 곱이 차례대로 표시됩니다. 다음은 4의 곱셈표 예시입니다.4 * 1 = 4 4 * 2 = 8 4 * 3 = 12 4 * 4 = 16 4 * 5 = 20 4 * 6 = 24 4 * 7 = 28 4 * 8 = 32 4 * 9 = 36 4 * 10 = 40C++ 구구단 생성 프로그램주어진 숫자
최대공약수(GCD, Greatest Common Divisor)는 두 수를 모두 나눌 수 있는 수 중에서 가장 큰 수를 의미합니다.예를 들어, 45와 27이라는 두 수가 있다고 가정해 보겠습니다.45 = 5 * 3 * 3 27 = 3 * 3 * 3두 수의 공통 약수는 3과 9이며, 이 중 가장 큰 수는 9입니다. 따라서 45와 27의 최대공약수는 9입니다.이제 C++을 사용하여 두 수의 GCD를 구하는 다양한 방법을 살펴보겠습니다.방법 1: 유클리드 호제법(나머지 연산) 활용가장 널리 사용되는 방식은 유클리드 호제법으로, 나머지 연
최소공배수(LCM, Least Common Multiple)란 두 수의 공통 배수 중 가장 작은 수를 의미합니다.예를 들어, 15와 9라는 두 수가 있다고 가정해 보겠습니다.15 = 5 * 3 9 = 3 * 3두 수의 공통 인수는 3이므로, 15와 9의 최소공배수는 45입니다.방법 1: 반복문을 이용한 LCM 계산두 수의 최소공배수를 구하는 첫 번째 방법은 반복문을 사용하는 것입니다. 아래 예제 코드를 살펴보겠습니다.예제#include <iostream> using namespace std; int main() {
숫자 뒤집기란 무엇인가?숫자를 뒤집는다는 것은 해당 숫자의 자릿수를 역순으로 배치하여 새로운 숫자를 만드는 것을 의미합니다.예를 들어, 입력된 숫자가 6529라면 프로그램은 9256을 출력해야 합니다.다음은 C++로 작성한 숫자 뒤집기 프로그램입니다.예제 코드#include <iostream> using namespace std; int main() { int num = 63972, rev = 0; while(num > 0) { rev = rev*10 + num%10; nu
숫자의 거듭제곱은 x^y 형태로 표현할 수 있으며, 여기서 x는 밑(base)이 되는 숫자이고 y는 지수(exponent)입니다.예를 들어 다음과 같습니다.x = 2, y = 10일 때x^y = 2^10 = 1024거듭제곱은 반복문을 사용하는 비재귀 방식과 재귀 함수를 사용하는 방식, 두 가지 방법으로 계산할 수 있습니다. 각각의 구현 방법을 아래에서 자세히 살펴보겠습니다.반복문을 이용한 거듭제곱 계산 (비재귀 방식)반복문을 사용해 숫자의 거듭제곱을 구하는 프로그램은 다음과 같습니다.예제 코드#include<iostream&g
연산자 오버로딩이란?C++에서는 대부분의 내장 연산자에 대해 연산자 오버로딩(Operator Overloading)을 적용할 수 있습니다. 오버로딩된 연산자는 operator 키워드 뒤에 정의하려는 연산자 기호가 붙는 함수 형태로 구현되며, 일반적인 함수처럼 반환 타입과 매개변수 목록을 가집니다.아래 프로그램은 연산자 오버로딩을 활용하여 두 복소수의 뺄셈을 수행하는 예제입니다.예제 코드#include<iostream>using namespace std;class ComplexNum { private:
ASCII란 무엇인가?ASCII(American Standard Code for Information Interchange, 미국 정보 교환 표준 부호)는 총 128개의 문자로 구성된 문자 인코딩 체계로, 각 문자에는 0부터 127까지의 고유한 숫자 값이 할당되어 있습니다. 컴퓨터는 내부적으로 모든 문자를 이러한 숫자 값으로 처리하기 때문에, 프로그래밍에서 ASCII 값의 개념을 이해하는 것은 매우 중요합니다.대표적인 문자들의 ASCII 값은 다음과 같습니다.문자ASCII 값A65a97Z90z122$36&38?63여기서 눈여
두 숫자 a와 b를 곱하면 그 결과값인 곱(product)을 얻을 수 있습니다. 수학적으로 곱셈은 a라는 값을 b번만큼 더하는 것과 같으며, 이를 통해 a와 b의 곱이 계산됩니다.예를 들어 다음과 같습니다.5 * 4 = 20 7 * 8 = 56 9 * 9 = 81 * 연산자를 사용한 두 숫자 곱셈 프로그램 C++에서는 * 연산자를 사용하면 가장 간단하게 두 숫자의 곱을 구할 수 있습니다. 아래 예제 코드를 살펴보겠습니다. 예제 코드 #include <iostream> using namespace std; int main(
회문 수(팰린드롬 수)란 자릿수를 거꾸로 뒤집어도 원래 값과 동일하게 유지되는 숫자를 말합니다. 즉, 값이 전혀 변하지 않는 수이며, 대칭 수(symmetric number)라고도 부릅니다.예를 들어 12321, 1551, 11 같은 숫자들은 자릿수를 뒤집어도 그대로이므로 회문에 해당합니다.회문 판별 프로그램 예제다음은 입력받은 숫자가 회문인지 아닌지를 판별하는 C++ 프로그램입니다.#include<iostream>using namespace std;void palindrome(int num) { i
소수(素數)란 1보다 큰 자연수 중에서 약수가 오직 1과 자기 자신뿐인 수를 의미합니다. 즉, 1과 자신 외에는 어떤 수로도 나누어 떨어지지 않는 수입니다.가장 작은 소수들은 다음과 같습니다.2, 3, 5, 7, 11, 13, 17이번 글에서는 함수를 사용하여 특정 숫자가 소수인지 아닌지 판별하는 C++ 프로그램을 살펴보겠습니다.예제 코드#include <iostream> using namespace std; void isPrime(int n) { int i, flag = 0; for(i=2; i<=n
C++에서 두 수에 대한 덧셈, 뺄셈, 곱셈, 나눗셈 연산을 수행하는 간단한 계산기 프로그램을 살펴보겠습니다. 이 프로그램은 switch...case 문을 사용하여 입력된 연산자에 따라 알맞은 연산을 선택하는 방식으로 동작합니다. 전체 예제 코드 #include <iostream> using namespace std; void calculator(int a, int b, char op) { switch (op) {  
계승(Factorial)이란?음이 아닌 정수 n의 계승(factorial)은 n보다 작거나 같은 모든 양의 정수를 차례대로 곱한 값입니다. 수학 기호로는 n!처럼 느낌표를 붙여 표현합니다.예를 들어 7의 계승은 다음과 같이 계산되며 그 결과는 5040입니다.7! = 7 * 6 * 5 * 4 * 3 * 2 * 17! = 5040그렇다면 C++에서 재귀(recursion)를 사용하여 어떤 숫자든 계승을 손쉽게 구하려면 어떻게 해야 할까요? 지금부터 전체 코드와 함께 살펴보겠습니다.재귀를 이용한 계승 계산 코드#include <io
최대공약수(Greatest Common Divisor, GCD)란 두 수를 모두 나누어 떨어지게 하는 수 중 가장 큰 수를 의미합니다.예를 들어, 두 수 63과 42가 있다고 가정해 보겠습니다.63 = 7 * 3 * 3 42 = 7 * 3 * 2 따라서 63과 42의 GCD는 21입니다.이번 글에서는 재귀(recursion)를 이용하여 두 수의 최대공약수를 구하는 C++ 프로그램을 소개합니다.방법 1: 뺄셈을 이용한 재귀#include<iostream> using namespace std; int gcd(int a, in