Sabtu, 20 Oktober 2012

SI 2011 : Sukses Garap Praktikum ketujuh ALPRO 1

Mahasiswa dari jurusan Sistem Informasi ITS 2011 (kelas B) hari ini, Kamis (08/12/2011) telah sukses praktikum ketujuh dari matakuliah ALPRO1. Mahasiswa SI ITS 2011 tersebut  menilai bahwa praktikum kali ini memang sedikit sulit dibanding praktikum sebelumnya, namun karena persiapannya yang begitu matang, mereka dapat menyelesaikannya dengan mulus. Hal ini dibuktikan dengan ungkapan salah satu mahasiswa tersebut.

"Praktikum ALPRO minggu ini memang sedikit sulit, namun kami dapat menyelesaikannya dengan rapi dan baik. Hal ini karena dibatalkannya praktikum minggu lalu, sehinnga persiapan kami untuk mengerjakan praktikum ini lebih matang", ujar  Leonika Sari dalam ruangan LPSI ITS Surabaya, Kamis (8/12/2011).

Kali ini mereka praktikum tentang sorting data. Dimana mereka membuat sebuah project java di Netbeans dan program tersebut mampu membaca suatu data di dalam komputer kita yang berbentuk .txt. Selanjutnya program tersebut akan mengurutkan data yang ada dalam file .txt tersebut. Pengurutan program diawali dengan pilihan (1. Urutkan dari depan, 2. Urutkan dari Belakang). Sehingga semisal kita membuat data nama atau yang lainnya dalam keadaan tidak urut, dengan bantuan ini kita dapat membuat data tersebut menjadi urut sesuai pilihan kita.

Saya berhasil mendapatkan sebuah source code program tersebut dari salah seorang mahasiswa SI ITS 2011 yang praktikum hari ini.

"Ini adalah souce code program yang saya buat dalam praktikum kali ini, dimana program ini memiliki dua kelas, yang pertama yaitu "Main_Shorting.java" sebagai pemanggil dari class yang kedua yaitu "Submain_Shorting.java", ujar Rachmat Arif dalam ruangan LPSI ITS Surabaya, Kamis (8/12/2011).

Bagi kalian yang ingin mencoba hasil praktikum ketujuh ALPRO1 SI ITS 2011 , dapat copy-paste source-code programnya dibawah ini.

Main_Shorting.java

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package shorting;

/**
 *
 * @author Rachmat Arif
 */

import java.io.*;
import java.io.IOException;
import java.util.Scanner;

public class Main_Shorting {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here
        BufferedReader buffered = new BufferedReader(new InputStreamReader(System.in));
        Anak_Shorting baca = new Anak_Shorting();
        System.out.println("Masukan alamat file yang ingin dibaca ?");
         //kita inputkan tempat file yang kita simpan beserta nama file tersebut
        //contoh D:\Praktikum7 Alpro1\DataNama.txt (bila file terdapat di D:)
       
        try {
            String namaFile = buffered.readLine();
            baca.setnamaFile(namaFile);
        } catch (IOException exp) {
            System.out.println("E R R O R !");
        }
        System.out.println("\nPilihan pengurutan nama :");
        System.out.println("1. Urutan dati kalimat pertama");
        System.out.println("2. Urutan dari kalimat terakhir");
        System.out.println("3. Keluar");
        Scanner scan = new Scanner(System.in);
        int pilihan = scan.nextInt();




        while (true) {
            if (pilihan == 1) {
                baca.readFileDepan();
                String[] files = {"DataNama.txt"};
                for (int x = 0; x < files.length; x++) {


                    String[] sortTest = baca.mergesort(baca.getarrayFile());
                    for (int d = 0; d < sortTest.length; d++) {
                        if (d == sortTest.length - 1) {
                            System.out.println(sortTest[d] + ".");
                        } else {
                            System.out.println(sortTest[d] + ";");
                        }
                    }
                    System.out.print("\n");
                }
                System.exit(0);

            } else if (pilihan == 2) {
                baca.readFileBelakang();
                String[] files = {"DataNama.txt"};
                for (int x = 0; x < files.length; x++) {


                    String[] sortTest = baca.mergesort(baca.getarrayFile());
                    for (int d = 0; d < sortTest.length; d++) {
                        if (d == sortTest.length - 1) {
                            System.out.println(sortTest[d] + ".");
                        } else {
                            System.out.println(sortTest[d] + ";");
                        }
                    }
                    System.out.print("\n");
                }
                System.exit(0);
            } else if (pilihan == 3) {
                System.exit(0);
            } else {
                System.out.println("Pilihan Salah!");
            }
        }
    }

}

Submain_Shorting.java

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package shorting;

/**
 *
 * @author Rachmat Arif
 */

import java.io.*;

import java.util.Scanner;

public class Submain_Shorting {

    private String isiFile = "", namaFile = "";
    private int penghitung = 0;
    private String[] arrayFile = new String[220];

    public String getisiFile() {
        return isiFile;
    }

    public String getnamaFile() {
        return isiFile;
    }

    public int getPenghitung() {
        return penghitung;
    }

    public String[] getarrayFile() {
        return arrayFile;
    }

    public void setnamaFile(String x) {
        namaFile = x;
    }

    public void printarrayFile() {
        for (int i = 0; i < arrayFile.length; i++) {
            System.out.print(arrayFile[i] + ";");
        }
    }

    public void readFileDepan() {
        try {
            String isiFileini = "";
            FileReader bacaNamaFileIni = new FileReader(namaFile);
            BufferedReader bacaFileIni = new BufferedReader(bacaNamaFileIni);
            isiFile = "";
            System.out.println("Isi file " + namaFile + " adalah :");
            System.out.println("------------------------------");
            while ((isiFileini = bacaFileIni.readLine()) != null) {
                isiFile += isiFileini + ";";
                arrayFile[penghitung] = isiFileini;
                penghitung++;
            }
            bacaNamaFileIni.close();
            bacaFileIni.close();
        } catch (FileNotFoundException exp) {
            System.out.println("File tidak ada !");
            System.exit(1);
        } catch (IOException exp) {
            System.out.println("Coba Lagi");
            System.exit(1);
        }
    }

    public void readFileBelakang() {
        try {

            String isiFileini = "";
            FileReader bacaNamaFileIni = new FileReader(namaFile);
            BufferedReader bacaFileIni = new BufferedReader(bacaNamaFileIni);
            isiFile = "";
            System.out.println("Isi file " + namaFile + " adalah :");
            System.out.println("------------------------------");
            while ((isiFileini = bacaFileIni.readLine()) != null) {
                isiFile += isiFileini + ";";
                Scanner scanner1 = new Scanner(isiFileini);
                String isiFile1 = scanner1.next();
                String isiFile2 = "";
                if (scanner1.hasNext()) {
                    isiFile2 = scanner1.nextLine();
                } else {
                    isiFile2 = " " + isiFile1;
                }
                arrayFile[penghitung] = (isiFile2 + "," + isiFile1);
                penghitung++;
            }
            bacaNamaFileIni.close();
            bacaFileIni.close();
        } catch (FileNotFoundException exp) {
            System.out.println("File tidak ditemukan !");
            System.exit(1);
        } catch (IOException exp) {
            System.out.println("Coba Lagi");
            System.exit(1);
        }
    }

    public String[] mergesort(String[] list) {
        String[] sorted = new String[list.length];
        if (list.length == 1) {
            sorted = list;
        } else {
            int mid = list.length / 2;
            String[] left = null;
            String[] right = null;
            if ((list.length % 2) == 0) {
                left = new String[list.length / 2];
                right = new String[list.length / 2];
            } else {  //
                left = new String[list.length / 2];
                right = new String[(list.length / 2) + 1];
            }
            int x = 0;
            int y = 0;
            for (; x < mid; x++) {
                left[x] = list[x];
            }
            for (; x < list.length; x++) {
                right[y++] = list[x];
            }
            left = mergesort(left);
            right = mergesort(right);
            //sorted = merge(left,right);
            sorted = mergeArray(left, right);
        }

        return sorted;
    }


    private String[] mergeArray(String[] left, String[] right) {
        String[] merged = new String[left.length + right.length];
        int leftIndex = 0;
        int rightIndex = 0;
        int midIndex = 0;
        int comp = 0;
        while (leftIndex < left.length || rightIndex < right.length) {
            if (leftIndex == left.length) {
                merged[midIndex++] = right[rightIndex++];
            } else if (rightIndex == right.length) {
                merged[midIndex++] = left[leftIndex++];
            } else {  
                comp = left[leftIndex].compareTo(right[rightIndex]);
                if (comp > 0) {
                    merged[midIndex++] = right[rightIndex++];
                } else if (comp < 0) {
                    merged[midIndex++] = left[leftIndex++];
                } else {
                    merged[midIndex++] = left[leftIndex++];
                }
            }

        }
        return merged;
    }
}
Read more

Matematika Diskrit


Matematika Diskrit adalah salah satu matakuliah yang saya ambil di semester satu ini. Matakuliah ini seru tapi kadang juga menjengkelkan menurutku. Dibilang seru karena ilmu ini memang benar-benar baru dalam sejarah hidupku, selain itu pembahasannya tidak seperti matematika umumnya yang hanya menghitung melulu. Mungkin sebagian dari kita belum mengetahui apa itu Matematika Diskrit ? oleh karena itu ada baiknya jika kita mengetahui terlebih dahulu tentang cabang ilmu matematika satu ini,

Matematika diskrit atau diskret adalah cabang matematika yang membahas segala sesuatu yang bersifat diskrit. Diskrit disini artinya tidak saling berhubungan (lawan dari kontinyu). Objek yang dibahas dalam Matematika Diskrit - seperti bilangan bulat, graf, atau kalimat logika - tidak berubah secara kontinyu, namun memiliki nilai yang tertentu dan terpisah. Beberapa hal yang dibahas dalam matematika ini adalah teori himpunan, teori kombinatorial, permutasi, relasi, fungsi, rekursif, teori graf, dan lain-lain. Matematika diskrit merupakan mata kuliah utama dan dasar untuk bidang ilmu komputer atau informatika. (wikipedia.org)
Definisi diatas merupakan definisi dari matematika diskrit yang saya ambil dari wikipedia. Lanjut cerita, terkadang juga matakuliah ini terasa menjengkelkan dan membosankan menurutku, hal ini mungkin terjadi karena saya memang pada dasarnya sangat benci dengan istilah "MATEMATIKA". Walaupun materinya tidak melulu menghitung seperti yang sudah saya tulis sebelumnya tetapi terkadang tetap saja saya berjumpa dengan angka-angka yang menjengkelkan.

Mungkin hanya ini yang dapat saya tulis tentang matematika diskrit, karena setiap kali mendengar kata matematika kepala ini pusing rasanya oleh sebab itu sebaiknya kita akhiri saja tulisan ini.
Oh iya...  namun sebelm itu, jika ingin mengetahui atau mencicipi matematika satu ini bisa download materinya di bawah ini.

Materi Dalam Bahasa Indonesia :


Materi Dalam Bahasa Inggris :


Ebook :



Read more

Sistem Informasiku

Jujur, sebelum saya masuk kuliah, saya bingung. Bingung memilih antara jurusan Sistem Informasi dan Teknik Informatika. Minimnya info yang saya dapatkan membuat saya ragu dalam memilih. Ada yang bilang "Informatika aja, prospek kerjanya bagus, jadi programmer..". Sedangkan yang lain bilang, "Mending di Sistem Informasi aja, masih baru, lulusannya masih sedikit".
Seberapa canggihnya suatu teknologi, tetap saja tidak akan bisa bermanfaat apabila tidak adanya suatu sistem yang dapat mendayagunakan teknologi tersebut. Sistem tersebutlah yang mengatur bagaimana kinerja dari suatu teknologi dihubungkan dengan teknologi lainnya. Hal itulah yang mendasari akan pentingnya Jurusan Sistem Informasi atau yang lebih dikenal dengan SI. Serta hal ini yang melatar belakangi saya untuk memilih jurusan ini.

Sebenarnya jurusan SI masih dalam satu rumpun dengan jurusan Teknik Informatika (TC). Perbedaan yang terdapat antara keduanya yaitu Jurusan Sistem Informasi mempelajari tentang bagaimana management dari IT(Information Teknologi), sedangkan Teknik Informatika lebih fokus kepada Teknik Programming. Maka dari itu, Sistem Informasi juga bisa disebut sebagai jurusan yang komplit karena didalamnya terdapat Teknik Informatika dan Management.

Saat sekarang ini tercatat lulusan dari SI masih bisa dibilang sedikit. Hal itu berbanding terbalik dengan kebutuhan negara yang memerlukan banyak tenaga IT Management. Atas dasar itulah, sebagai Institut yang turut membangun bangsa Institut Teknologi Sepuluh Nopember (ITS) juga membuka Jurusan SI terhitung dimulai sejak tahun 2001. Awalnya, sebagai Jurusan yang baru terbentuk, cita-cita yang pertama dari Sistem Informasi adalah agar dapat dikenal di kancah nasional. Dan kini, dengan motto "They built it, we make fortune from it" cita-cita selanjutnya yaitu meyakinkan internasional lulusan dari Jurusan SI ITS dapat bersaing baik dengan lulusan Teknik Informatika ataupun lulusan berbasis IT lainnya di seluruh Indonesia.

Karena SI merupakan jurusan management IT, maka mata kuliah yang dipelajari di SI ITS tidak lepas dari pemrograman dan keterampilan management. Di antaraya yaitu Algoritma dan Pemrograman, Matematika Diskrit, Keterampilan Interpersonal, Sistem Fungsional Bisnis dan lain-lain. Pada 2 tahun awal walaupun tidak semuanya, tapi mahasiswa akan lebih cenderung akan menghadapi mata kuliah yang identik dengan pemrograman. Dan 2 tahun selanjutnya mahasiswa akan banyak mendapatkan mata kuliah tentang management.
Read more