Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình C

Chương trình C tìm số Palindrome dùng vòng lặp while


Số Palindrome là số không thay đổi khi đảo ngược. Chương trình cho phép nhập số nguyên dương và kiểm tra có phải Palindrome hay không bằng while loop.

Ví dụ 1: Kiểm tra số Palindrome

#include <stdio.h>

int main() {
    int num, temp, rem, rev = 0;
    printf("Nhập số:\n");
    scanf("%d", &num);
    temp = num;
    
    while (temp > 0) {
        rem = temp % 10;
        rev = rev * 10 + rem;
        temp = temp / 10;
    }
    
    printf("Số đảo ngược = %d\n", rev);
    if (num == rev)
        printf("%d là số Palindrome.\n", num);
    else
        printf("%d không phải số Palindrome.\n", num);
    return 0;
}

Kết quả chạy ví dụ 1

Nhập số: 1234
Số đảo ngược = 4321
1234 không phải số Palindrome.

Nhập số: 1221
Số đảo ngược = 1221
1221 là số Palindrome.

Ví dụ 2: Kiểm tra chuỗi Palindrome

#include <stdio.h>
#include <string.h>

void pal(char string[]);

int main() {
    char string[100];
    printf("Nhập chuỗi: ");
    gets(string);
    pal(string);
    return 0;
}

void pal(char string[]) {
    int i = 0;
    int length = strlen(string) - 1;
    while (length > i) {
        if (string[i++] != string[length--]) {
            printf("\n%s không phải chuỗi Palindrome\n", string);
            return;
        }
    }
    printf("\n%s là chuỗi Palindrome\n", string);
}

Kết quả chạy ví dụ 2

Nhập chuỗi: tutorial
tutorial không phải chuỗi Palindrome

Nhập chuỗi: saas
saas là chuỗi Palindrome