Selamat Sore agan2 :D  Kali ini ane mau posting program java lagi. Program ini namanya Magic square. Udah tau Apa itu Magic Square??? Kalo belum tau ane jelasin. Magic Square adalah sebuah game Matematika yang berbentuk matriks.  Disini kita harus mengisi matriks - matriks tersebut dengan angka agar  apabila dijumlahkan, hasil nya sama. baik horizontal, ataupun vertical. Berikut ilustrasinya



Kita akan membuat program dengan java agar mengisi kotak - kotak tersebut secara otomatis.
Program ini menggunakan Array 2D.


package magicsquare;
import java.util.Scanner;
/**
 *
 * @author wiratmoko11
 */
public class MagicSquare {
    public static void main(String[] args) {
        // TODO code application logic here
        Scanner input = new Scanner(System.in);
        System.out.print("Masukkan panjang dan lebar : ");
        int n = input.nextInt();
        if(n % 2 == 0){
            System.out.println("harus ganjil !!!");
            System.exit(0);
        }
        int square[][] = new int[n+2][n+2];
        int i = 1, j = (n / 2) + 1 ;
        for (int m = 1; m <= Math.pow(n, 2); m++) {
            square[i][j] = m;
            if(i - 1 < 1){
                i = n;
            }else{
                i = i - 1;
            }
            if(j + 1 > n){
                j = 1;
            }else{
                j = j + 1;
            }
            if(square[i][j] != 0){
               i = i + 1;
               j = j - 1;
               if(i > n){
                   i = 1;
               }
               if(j < 1){
                   j = n;
               }
               i++;
            }           
        }
        for (int k = 1; k <= n; k++) {
            for (int l = 1; l <= n; l++) {
                System.out.print("" + square[k][l] + "\t");
            }
            System.out.println("");
        }
    }
}

Gambaran programnya adalah sebagai berikut
Nah mudahkan :D, oke sekian saja, semoga bermanfaat.
Tapi ingat, program tersebut hanya bisa untuk matriks ganjil.
   
   Selamat malam kawan" programmer. Ini adalah artikel baru saya yang lain tentang pemrograman. Pasti tidak banyak dari kalian yang tahu kalau programmer pertama di dunia adalah seorang wanita. Banyak orang beranggapan bahwa pekerjaan programmer identik dengan pekerjaan kaum pria, dan mungkin kalian juga beranggapan demikian. Tapi tahukah Anda bahwa programmer pertama di dunia adalah seorang “wanita”?

   Augusta Ada King, Countess of Lovelace (10 December 1815 – 27 November 1852), atau lebih dikenal dengan sapaan Lovelace, seorang wanita berasal dari Inggris yang dinobatkan sebagai programmer pertama di dunia. Lovelace merupakan putri seorang penyair bernama George Gordon, Lord Byron ke-6, dan ibunya Anne Isabella “Annabella” Milbanke, Baroness Wentworth. Ibunda Lovelace berpisah dengan ayahnya sejak Lovelace masih kecil, dan Lovelace dibesarkan oleh ibundanya.

     Sewaktu kecil Lovelace sering sakit-sakitan. Saat Lovelace berumur 8 tahun dia mengalamai sakit kepala sangat hebat yang mempengaruhi pengelihatannya, bahkan pada tahun 1829, Lovelace pernah mengalami kelumpuhan yang menyebabkannya harus terbaring untuk beristirahat selama hampir setahun. Dan pada tahun 1931, Lovelace kembali bisa berjalan, meskipun masih dengan bantuan tongkat.

   Lovelace melanjutkan pendidikan melalui home schooling akibat kesehatannya yang buruk. Lovelace diajarkan matematika pada umur yang muda oleh William Frend, William King dan Mary Somerville. Selain itu, salah seorang guru Lovelace adalah seorang ahli matematika dan logika, Agustus De Morgan. Lovelace sangat menikmati waktunya mempelajari matematika, bahkan dia menganggap matematika merupakan bagian dari hidupnya.

    Karena kemampuannya yang tinggi dalam bidang matematika, Charles Babbage, merupakan salah satu tokoh terkenal dalam bidang komputer, mempekerjakan Lovelace dalam pengerjaan mesin analitis. Pada saat itu, mesin analitis merupakan mesin yang digunakan untuk menerapkan kerja sebuah algoritma, dan dianggap merupakan awal mulanya mesin komputer. Dengan menggunakan mesin analitis inilah, Lovelace dipekerjakan menjadi seorang programmer.

   Adapun program yang pertama kali dibuat oleh Lovelace adalah pengimplementasian algoritma Bernouli’s Numbers dengan menggunakan mesin analitis milik Babbage. Lovelace memulai memprogram algoritma tersebut ketika Charles Babbage menyuruh Lovelace untuk menerjemahkan paper dari Luigi Menabrea, seorang insinyur dari Italia. Paper tersebut dikenal dengan Menabrea’s paper. Dari situlah Lovelace mulai membuat program algoritma tersebut selama hampir satu tahun. Kemudian pada tahun 1952, seratus tahun setelah kematiannya, ditemukan catatan milik Lovelace mengenai mesin analitis milik Babbage. Catatan tersebut kemudian disusun berdasarikan label dari A sampai G. Dari catatan berlabel G itulah diketahui program pertama yang dibuat oleh Lovelace, dan Lovelace pun dinobatkan sebagai programmer yang pertama di dunia.

    Bukan hanya itu, departemen pertahanan Amerika Serikat menciptakan sebuah bahasa pemrograman bernama ADA yang merupakan nama dari Lovelace. Sejak tahun 1998, Lovelace diberikan mendali atas namanya oleh masyarakat Inggris dan kompetisi tahunan bagi wanita dalam bidang komputer. Dan pada tanggal 24 Maret sudah ditetapkan sebagai “Ada Lovelace Day”, hari untuk memperingati prestasi wanita di dalam teknologi dan pengetahuan. Lovelace merupakan salah satu inspirator baru para kaum hawa, sebagai teladan dari semangat dan kemauannya yang tinggi dalam menuntut ilmu. Keterpurukkan dalam keluarga maupun kemerosotan kesehatannya waktu kecil tidak pernah menyurutkan semangatnya dalam belajar dan berkarya.


Pada akhir bulan september beberapa hari yang lalu, Microsoft telah mengenalkan sistem operasi terbaru, namun yang diperkenalkan adalah bukan Windows 9, namun langsung Windows 10. Public pasti bertanya-tanya kenapa yang dikeluarkan bukan Windows 9 dulu, langsung ke Windows 10?
Dari kabar-kabar sebelumnya diprediksi bahwa OS terbaru Microsoft pasti Windows 9, karena biasanya seperti windows-windows generasi terdahulu versi yang digunakan berupa penggunaan angka secara tersusun seperti angka 7, 8 dan diprediksi setelah Windows 8 pastilah Windows 9.
Namun ternyata Microsoft malah mengeluarkan langsung Windows 10, bukan Windows 9. Ternyata pengenalan nama Windows 10 ini karena Microsoft mengharapkan agar Windows yang baru ini tidak memerlukan banyak update dalam pengoperasiannya dan hal seperti itu diklaim akan menyulitkan pengguna.

Namun bukan berarti Windows 10 tidak akan mendapatkan update, Windows 10 tetap akan ada update namun tidak sebesar dan sesering Windows terdahulunya. Pihak Microsoft juga telah mengakui bahwa Windows 8 tidak terlalu populer pada saat diluncurkan karena mengusung banyak tampilan yang baru terlebih lagi dengan menghilangkan tombol start menu, seperti dikutip dari merdeka news.

Karena demikian itu, Windows 7 masih dianggap Windows terbaik dan lebih mudah digunakan dibandingkan dengan Windows 8, dan kecepatan operasi Windows 7 di anggap hampir sama cepat dengan OS Windows XP.

Microsoft langsung memilih Windows 10 dan meloncati Windows 9, karena jika menggunakan Windows 9 maka tidak menutup kemungkinan dari waktu ke waktu mereka akan disibukan juga dengan banyaknya update yang harus dilakukan sampai seri 9 naik menjadi 10.
Selain itu Microsoft juga akan menggunakan code base yang mengambil banyak fitur-fitur dari Windows 7 dan mengambil beberapa bagian tampilan dari Windows 8. Hal ini akan membuat pengguna Windows 10 akan lebih mudah beradaptasi dengan OS baru-nya.

sumber : http://skemaku.com/2014/10/03/inilah-alasan-kenapa-tidak-ada-windows-9-langsung-windows-10/
Malam semuanya, malam minggu gini sebenernya enak keluar sama pacar, tapi berhubung saya lagi males keluar jomblo :D, jadi lebih baik update blog dulu aja  lah, karena update status  di facebook sudah biasa. :D

Oke malam ini saya mau membagikan sebuah program Java tentang konversi bilangan ke dalam kata yang merupakan tugas project saya semester 1 ini .
contoh :
1156785 =  satu juta seratus lima puluh enam ribu tujuh ratus delapan puluh lima
1010101010 = satu milyar sepuluh juta seratus satu ribu sepuluh 

Program ini menggunakan inputan dalam bentuk String, dan maksimal sepanjang 15 digit, atau ratusan Trillliun. berikut adalah kode nya :


/*
 * progam ini digunakan untuk mengkonversi bilangan ke dalam bentuk kalimat,
 * dengan panjang maksimal 15 digit.
 * 
 * Penjelasan Program :
 * awal nya kita inputkan bilangannya
 * Contoh : 1996
 * 
 * maka di Array 
 * indeks |3| |2| |1| |0|
 *         1   9   9   6
 * jadi indeks nya dibalik.
 * 
 * kalo tidak di balik,
 * indeks |0| |1| |2| |3|
 *         1   9   9   6
 * letak indeks akan selalu berubah bergantung pada jumlah data.
 * Tapi jika dibalik maka letak ratusan, ribuan, puluhan, jutaan akan tetap.
 * contoh letak ribuan akan tetap di indeks 5 - 3, tidak akan berubah walau jumlah data nya berubah
 */
package pembilang;
import java.util.Scanner;

/**
 *
 * @author moko
 */
public class Pembilang {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);//inisialisasi variabel input sebagai Scanner
        String bilangan = input.nextLine(); //inputan untuk bilangan
        String nol = "0";//
        if(bilangan.length() % 3 == 1){//jika panjang bilangan di mod 3 = 1
            bilangan = nol.concat(nol).concat(bilangan); //bilangan = 0 + 0 + bilangan
        }else if(bilangan.length() % 3 == 2){//jika panjang bilangan di mod 3 = 2 
            bilangan = nol.concat(bilangan);//bilangan = 0 + bilangan
        }
        int panjangbil = bilangan.length();//panjangbil = panjang bilangan
        String angka[] = new String[panjangbil];//inisialisasi array angka dalam bentuk string
        int n = 0;//inisialiasasi n, n digunakan untuk membantu dalam membalik isi array
        
        
        for (int i = panjangbil-1; i >=0 ; i--) {//untuk memasukkan setiap karakter ke dalam string angka, dengan membalik urutan angka
            angka[i] = bilangan.substring(n, n+1);
            n++;
        }
        //menampilkan isi array
        for (int i = panjangbil - 1; i >=0; i--) {//untuk mencocokkan angka yang di Array            
            switch (angka[i]) {
                case "1"://jika angka indeks i sama dengan 1
                    if(i == 1 || i == 4 || i == 7 || i == 10 || i == 13){//untuk mengecek apakah angka belas an
                        if(!(angka[i-1].equals("1") || angka[i-1].equals("0"))){//mengecek apakah bukan 10 atau 11
                            System.out.print("");
                        }else if(angka[i-1].equals("1")){//jika angka index ke i - 1 sama dengan 1, berati 11
                            System.out.print("sebelas ");
                        }else if(angka[i-1].equals("0")){//jika angka index ke i - 1 sama dengan 0, berarti 10
                             System.out.print("sepuluh ");
                        }
                    }else if(i == 2 ||(i == 3 && (angka[4].equals("0") && angka[5].equals("0") && !angka[4].equals("1"))) || i == 5 || i == 8 || i == 11 || i == 14){//untuk mengecek apakah i dalam posisi ratusan dan seribu
                        System.out.print("se");
                    }else if(i == 0 || i == 3 || i == 6 || i == 9 || i == 12){//untuk mengecek nilai i di posisi satuan
                        if(!angka[i+1] .equals("1")){//apakah di depan nilai i bukan 1
                            System.out.print("satu ");
                        } 
                    }
                    break;
                case "2"://jika angka indeks i sama dengan 2
                    System.out.print("dua ");
                    break;
                case "3"://jika angka indeks i sama dengan 3
                    System.out.print("tiga ");
                    break;
                case "4"://jika angka indeks i sama dengan 4
                    System.out.print("empat ");
                    break;
                case "5"://jika angka indeks i sama dengan 5
                    System.out.print("lima ");
                    break;
                case "6"://jika angka indeks i sama dengan 6
                    System.out.print("enam ");
                    break;
                case "7"://jika angka indeks i sama dengan 7
                    System.out.print("tujuh ");
                    break;
                case "8"://jika angka indeks i sama dengan 8
                    System.out.print("delapan ");
                    break;
                case "9"://jika angka indeks i sama dengan 9
                    System.out.print("sembilan ");
                    break;
            }
            if((i == 14 || i == 11|| i == 8 || i == 5 || i == 2) && !angka[i].equals("0")){//untuk mengecek nilai ratusan dan angka nya tidak b0leh 0
                System.out.print("ratus ");  
            }else if((i==13 || i==10 || i==7 || i == 4 || i == 1) && (!angka[i].equals("0") && !angka[i].equals("1")) ){//untuk mengecek nilai puluhan dan membedakan antara 10 dan belasan.
                System.out.print("puluh ");
            }else if(i==0 || i == 3 || i == 6 || i== 9 || i == 12){//untuk mengecek nilai belasan
                if((!angka[i].equals("1") && !angka[i].equals("0")) && (angka[i+1].equals("1"))){//apabila bukan 10 atau 11
                    System.out.print("belas ");
                }
            }
            if(i == 12){//untuk mengecek nilai trilliun
                System.out.print("trilliun ");
            }else if(i == 9 && !(angka[9].equals("0") && angka[10].equals("0") && angka[11].equals("0"))){//untuk mengecek nilai milyar dan digit milyar apakah 000, jika 000 maka milyar tidak dibaca
                System.out.print("miliiar ");
            }else if(i == 6 && !(angka[6].equals("0") && angka[7].equals("0") && angka[8].equals("0"))){//untuk mengecek nilai juta dan digit juta apakah 000, jika 000 maka juta tidak dibaca
                System.out.print("juta ");
            }else if(i == 3 && !(angka[3].equals("0") && angka[4].equals("0") && angka[5].equals("0"))){//untuk mengecek nilai ribu dan digit ribu apakah 000, jika 000 maka ribu tidak dibaca
                System.out.print("ribu ");
            }
        }
    }
}

itu tadi adalah program yang saya buat menggunakan java.
Semoga Bermanfaat :)