Tutorial Bahasa C/C++: Program Penyeleksi dan Penampil Bilangan Prima


Dalam matematika, bilangan prima adalah bilangan asli yang lebih besar dari 1, yang faktor pembaginya adalah 1 dan bilangan itu sendiri. 2 dan 3 adalah bilangan prima. 4 bukan bilangan prima karena 4 bisa dibagi 2. Sepuluh bilangan prima yang pertama adalah 2, 3, 5, 7, 11, 13, 17, 19, 23 dan 29. (Sumber: Wikipedia)

Menyeleksi bilangan prima dari deret bilangan asli tidaklah sesulit yang dibayangkan. However, membuat program untuk menampilkan bilangan prima sangatlah baik untuk mengasah kemampuan kita dalam menyusun algortima pemrograman dan sekaligus mengimplementasikannya menjadi sebuah program yang berfungsi dengan benar.

Pada tulisan ini saya akan membahas secara singkat sebuah program penyeleksi bilangan prima dari deret bilangan asli.

Sesuai dengan namanya yakni penyeleksi bilangan prima dari deret bilangan asli, maka program akan menyeleksi bilangan prima dari deret bilangan asli. Bagaimana programnya? Mari kita simak bersama-sama.

Pertama-tama program harus memiliki deret bilangan asli. Kita dapat merepresentasikannya menggunakan array integer sebagai berikut:

int prima[200];

//inisialisasi array prima[]
for (x=2; x<200; x++)
   prima[x] = x;

Dengan program tersebut, sekarang kita memiliki deret bilangan asli 2-199 yang disimpan dalam variabel array integer prima[].

Catatan:
Kita mulai dari 2 dan mengabaikan 0 dan 1 karena bilangan prima adalah bilangan asli yang lebih dari 1.

Selanjutnya kita tinggal menyeleksi bilangan prima dari bilangan asli 2-199. Programnya adalah sebagai berikut:

//seleksi bilangan prima
for (x=2; x<200; x++)
{
   for (y=x+x; y<200; y+=x)
       prima[y] = 0;
}

Pada perulangan x, nilai x bergerak dari 2, 3, 4, 5, dst. hingga 199. Pada perulangan y, ketika nilai x=2, nilai y akan bergerak dari 4, 6, 8, 10, dst. Variabel y digunakan sebagai index dari variabel array integer prima[] dan memberikan nilai 0 pada elemen dengan index tersebut. Sehingga dengan demikian semua bilangan asli dengan kelipatan 2 akan “hilang” dari deret bilangan asli 0-199.

Proses tersebut berulang untuk nilai x=3, x=4, dst. Pada akhir proses variabel array prima[] akan berisi data sebagai berikut:

Program seleksi bilangan prima
    2    3    0    5    0    7    0    0    0   11    0   13    0    0    0
   17    0   19    0    0    0   23    0    0    0    0    0   29    0   31
    0    0    0    0    0   37    0    0    0   41    0   43    0    0    0
   47    0    0    0    0    0   53    0    0    0    0    0   59    0   61
    0    0    0    0    0   67    0    0    0   71    0   73    0    0    0
    0    0   79    0    0    0   83    0    0    0    0    0   89    0    0
    0    0    0    0    0   97    0    0    0  101    0  103    0    0    0
  107    0  109    0    0    0  113    0    0    0    0    0    0    0    0
    0    0    0    0    0  127    0    0    0  131    0    0    0    0    0
  137    0  139    0    0    0    0    0    0    0    0    0  149    0  151
    0    0    0    0    0  157    0    0    0    0    0  163    0    0    0
  167    0    0    0    0    0  173    0    0    0    0    0  179    0  181
    0    0    0    0    0    0    0    0    0  191    0  193    0    0    0
  197    0  199

Selanjutnya, kita tinggal menampilkan deret bilangan prima antara 2-200 dengan program sebagai berikut:

    printf("Deret bilangan prima 2-200\n");
    y = 0;
    for (x=2; x<200; x++)
    {
        if (y>15)
        {
            printf("\n");
            y = 1;
        }
        if (prima[x]>0)
        {
            printf("%5d", prima[x]);
            y++;
        }
    }

Hasilnya adalah sebagai berikut:

Deret bilangan prima 2-200
    2    3    5    7   11   13   17   19   23   29   31   37   41   43   47   53
   59   61   67   71   73   79   83   89   97  101  103  107  109  113  127
  131  137  139  149  151  157  163  167  173  179  181  191  193  197  199

Dan berikut adalah screenshot program penyeleksi bilangan prima dari deret bilangan asli hasil eksekusi interpreter Ch.

image

Semoga bermanfaat dan selamat belajar!

🙂

Iklan
Perihal

Cek situs kami di http://teknikelektrolinks.com. Blog Raspberry Pi: http://raspi.teknikelektrolinks.com

Tagged with: , , ,
Ditulis dalam C/C++, Software/Programming

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s

Kategori

Bergabunglah dengan 2.498 pengikut lainnya

Display Counter 3-Digit Dengan Koneksi Wi-Fi
Display Nomor Antrian WiFi Android
Mengontrol Relay Via USB/Serial dan Wi-Fi
Blog Linux dan Raspberry Pi


USB Relay USB-2REL
USB Relay USB-4REL
Water Level Control WLC-02
Serial Relay SER-4REL
NEO STARDUINO SMS ALARM

Alarm SMS Berbasis NEO STARDUINO

1 PC – 6 Unit USB-2REL

Testing 6 USB-2REL Pada 1 Komputer

Standard Pengujian USB-2REL

Pengujian USB-2REL Sebelum Dikirim

LPT-4REL on Knoppix 7.0.5

Testing LPT-4REL on Knoppix Linux

T101 Inkubator Telur

T101 Inkubator Penetas Telur

KONTROL PERALATAN LISTRIK VIA PORT LPT KOMPUTER

Demo Kontrol Kontaktor via Port LPT

STARDUINO meets ANDROID

Demo Kontrol Bluetooth Relay Android

STARDUINO SMS RELAY

Kontrol Relay Via SMS Dengan Starduino

STARDUINO WEB RELAY

Demo Kontrol Relay Via Web/Internet

JustBASIC USB-2REL Control

Demo Kontrol USB-2REL + JustBASIC

STARDUINO + GPS + LCD

Demo Starduino GPS Dengan LCD

USB-2REL EXTREME TEST

Demo Kontrol On/Off Lampu USB-2REL

THERMOSTAT T101 IN ACTION

Demo Thermostat T101 Pada SV=37.5°C

WATER LEVEL CONTROL WLC-02

Demo Kontrol Level Air Tandon WLC-02

HUMIDITY CONTROLLER H103

Demo Kontrol Kelembaban H103 (DHT11)

%d blogger menyukai ini: