소개
이 랩에서는 C 프로그램을 작성하여 숫자가 회문 (palindrome) 인지 확인하는 방법을 배웁니다. 주어진 단계를 따라 이를 수행할 것입니다.
참고: 코딩을 연습하고 gcc 를 사용하여 컴파일하고 실행하는 방법을 배우려면 직접
~/project/main.c파일을 생성해야 합니다.
cd ~/project
## main.c 생성
touch main.c
## main.c 컴파일
gcc main.c -o main
## 실행
./main
회문 (Palindrome) 이해하기
**회문 (Palindrome)**은 앞에서 읽거나 뒤에서 읽을 때 동일하게 읽히는 숫자 또는 문자열입니다. 예를 들어, 121 또는 "racecar"가 있습니다.
변수 초기화
프로그램에 필요한 변수를 초기화하는 것으로 시작합니다. 주어진 프로그램에서는 a, b, c, s의 네 개의 변수를 사용했습니다. 이러한 변수를 사용하여 필요한 연산을 수행할 것입니다.
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
}
숫자 뒤집기
회문인지 확인하기 위해 원래 숫자와 비교할 수 있도록 숫자를 뒤집습니다. while 루프를 사용하여 숫자를 뒤집습니다.
while(a > 0)
{
b = a % 10; //extract last digit
s = (s * 10) + b; //add the last digit to the reversed number
a = a / 10; //remove the last digit from the original number
}
원본 숫자와 뒤집힌 숫자 비교
마지막으로, 뒤집힌 숫자를 원래 숫자와 비교하여 회문인지 확인합니다.
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
전체 코드
다음은 프로그램의 전체 코드입니다.
#include<stdio.h>
int main()
{
int a, b, c, s = 0;
printf("Enter a number: ");
scanf("%d", &a);
c = a;
while(a > 0)
{
b = a % 10;
s = (s * 10) + b;
a = a / 10;
}
if(s == c)
{
printf("%d is a Palindrome", c);
}
else
{
printf("%d is not a Palindrome", c);
}
return 0;
}
요약
이 랩에서는 숫자가 회문 (palindrome) 인지 확인하는 C 프로그램을 작성하는 방법을 배웠습니다. 회문 확인의 논리를 배우고 프로그램을 통해 구현했습니다. 이제 이 개념에 대한 이해도가 높아졌으며, 더 복잡한 프로그램에서도 이를 구현할 수 있습니다.



