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

Chương trình C in "Chẵn" hoặc "Lẻ" không dùng câu lệnh điều kiện


Trong phần này, xem cách kiểm tra số chẵn/lẻ không dùng câu lệnh điều kiện (<, <=, !=, >, >=, ==).

Dễ dàng kiểm tra bằng điều kiện: chia 2 lấy dư, nếu 0 thì chẵn, ngược lại lẻ. Hoặc dùng AND bitwise với 1: nếu kết quả 0 thì chẵn, else lẻ.

Ở đây không dùng điều kiện. Sẽ thấy hai phương pháp.

Phương pháp 1

Tạo mảng chuỗi. Index 0 chứa "Chẵn", index 1 chứa "Lẻ". Dùng phần dư chia 2 làm chỉ số truy xuất mảng.

Ví dụ Code

#include <stdio.h>
main() {
    int n;
    char* arr[2] = {"Chan", "Le"};
    printf("Nhap mot so: ");
    scanf("%d", &n);
    printf("So nay la: %s", arr[n % 2]);
}

Kết quả 1

Nhap mot so: 40
So nay la: Chan

Kết quả 2

Nhap mot so: 89
So nay la: Le

Phương pháp 2

Dùng kỹ thuật toán tử logic và bitwise. Thực hiện AND bitwise với 1. Sau đó dùng AND logic để in chẵn/lẻ. Khi bitwise AND = 1 (số lẻ), logic AND trả về "le", ngược lại "chan".

Ví dụ Code

#include <stdio.h>
main() {
    int n;
    char *arr[2] = {"Chan", "Le"};
    printf("Nhap mot so: ");
    scanf("%d", &n);
    (n & 1 && printf("le")) || printf("chan");
}

Kết quả 1

Nhap mot so: 40
chan

Kết quả 2

Nhap mot so: 89
le