Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

โปรแกรมพิมพ์เลขที่ไม่ใช่เลขยกกำลังสอง (Non-Square Numbers) ในภาษา C

คำอธิบายโปรแกรม

กำลังสองของตัวเลข คือตัวเลขคูณตัวมันเอง

เลขยกกำลังสอง (Square Number) หรือ Perfect Square คือจำนวนเต็มที่เป็นกำลังสองของจำนวนเต็ม

เลขยกกำลังสองสมบูรณ์คือกำลังสองของจำนวนเต็มบวก:

1, 4, 9, 16, 25, 36, 49, 64, 81, 100

รากที่สองของเลขยกกำลังสองสมบูรณ์จาก 1 ถึง 100:

√1 = 1 เพราะ 1² = 1
√4 = 2 เพราะ 2² = 4
√9 = 3 เพราะ 3² = 9
√16 = 4 เพราะ 4² = 16
√25 = 5 เพราะ 5² = 25
√36 = 6 เพราะ 6² = 36
√49 = 7 เพราะ 7² = 49
√64 = 8 เพราะ 8² = 64
√81 = 9 เพราะ 9² = 81
√100 = 10 เพราะ 10² = 100

เลขที่ไม่ใช่กำลังสองสมบูรณ์ (Non-perfect square) คือทุกตัวเลขที่ไม่ใช่ผลคูณจำนวนเต็มกับตัวมันเอง

2, 3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15, 17, 18, 19, 20, 21, 22, 23, 24, 26 ...

อัลกอริทึม

ตรวจสอบทุกตัวเลขจาก 1 ถึงตัวเลขที่ผู้ใช้กำหนด
ตรวจสอบว่าเป็นเลขยกกำลังสองสมบูรณ์หรือไม่
ถ้าไม่ใช่ ให้พิมพ์เลขที่ไม่ใช่กำลังสองสมบูรณ์

ตัวอย่างโค้ด

/* Program to print non square numbers */
#include <stdio.h>
#include <math.h>

int main() {
    int number, i, x;
    int times = 0;
    // clrscr();
    printf("Print the Non Square Numbers till: ");
    scanf("%d", &number);
    printf("The Non Square Numbers are:\n");
    for (i = 1; times < number; i++, times++) {
        x = sqrt(i);
        if (i != x * x) {
            printf("%d\t", i);
        }
    }
    // getch();
    return 0;
}

เอาต์พุต

แสดงรายการเลขที่ไม่ใช่กำลังสองสมบูรณ์ จนถึงจำนวนที่กำหนด