ALGORITMA PROGRAM

 

Pada dasarnya, program yang saya gunakan sangat sederhana. Hanya menggunakan penyeleksian biasa.

Adapun pada intinya adalah sebagai berikut.

if(number<=9)
        { printf("%ld\n",number);
        }
else if(number<=189)
        {  temp=number-9;
            /*penambahannya*/
            number=(temp+1)/2;
            digit=9+number;
            /*digit kedua*/
            if(temp%2==0) printf("%ld\n",digit%10);
            else if(temp%2==1) printf("%ld\n",digit/10);
        }

Input yang di berikan merupakan number yang akan di cari. Kita akan memlalui tahapan seleksi sebanyak 8 kali. Setiap seleksi mewakili angka dengan jumlah digit yang berbeda.

Setiap kali number dimasukkan, program akan menyeleksi berada diposisi manakah number tersebut.  Adapun menentukan posisi number, terlebih dulu saya mencari jumlah digit seleksi secara manual (dengan kalkulator).

Jika sudah diketemukan posisi numbernya, maka dengan menggunakan perhitungan matematika biasa, kita akan dapat menemukan digit mana yang dicari. Pertama-tama kita harus mencari angka yang memuat digit yang dicari. Setelah itu, untuk memecah angka tersebut menjadi digit, saya menggunakan logik pembagian dan modulus biasa. Tidak perlu semuanya dipecah. Dengan kondisi if else tersebut, saya hanya memisahkan digit yang dicari.

Pembuktian secara matematikanya, dapat Anda lihat di bagian Penjelasan Secara Metematika.

bullet

INDEX

 

 

 

 

 

 

 

Hosted by www.Geocities.ws

1