Perkalian Dua Matriks dengan elemen acak

berikut ini ada sebuah soal UAS pemrograman Java,

“Buatlah Program Perkalian dua matriks dengan ordo masing-masing matriks diinputkan,

dan elemen tiap matriks merupakan bilangan acak antara 25-75,

setelah itu simpan hasil outputnya ke sebuah file “.

hmmm ternyata gampang-gampang sussah… hehehehehe…

kebanyakan bingung bagaimana menentukan bilangan acak antara 25-75,

kebanyakan contoh program hanya menyebut angka 0-100 sebagai hasil random.

oke mari kita simak contoh source code berikut ini…

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

package UAS;

import java.io.DataInputStream;
import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author xp
 */

public class SoalUAS {

    public static void main(String[] args) {
        int A[][];
        int B[][];

        int BA = 1, KA = 1, BB = 1, KB = 1;
        DataInputStream dis = new DataInputStream(System.in);

        try {
            System.out.println("PROGRAM PERKALIAN DUA MATRIKS");
            System.out.println("MATRIKS A");
            System.out.print("Masukkan Jumlah Baris : ");
            BA = Integer.parseInt(dis.readLine());
            System.out.print("Masukkan Jumlah Kolom : ");
            KA = Integer.parseInt(dis.readLine());
            System.out.println("Matriks B");
            System.out.print("Masukkan Jumlah Baris : ");
            BB = Integer.parseInt(dis.readLine());
            System.out.print("Masukkan jumlah Kolom : ");
            KB = Integer.parseInt(dis.readLine());
            if (KA != BB) {
                System.out.println("MAAF, KOLOM MATRIKS A DAN BARIS MATRIKS B HARUS SAMA");
                System.exit(0);
            }
            A = new int[BA][KA];
            B = new int[BB][KB];

            for (int i = 0; i < A.length; i++) {
                for (int j = 0; j < A[i].length; j++) {
                    A[i][j] = (int) Math.round(Math.random() * 50 + 25);
                }
            }
            for (int i = 0; i < B.length; i++) {
                for (int j = 0; j < B[i].length; j++) {
                    B[i][j] = (int) Math.round(Math.random() * 50 + 25);
                }
            }

            //String yang menjadi output disimpan dalam satu variable
            String hasil = "HASIL DARI PERKALIAN MATRIKS  \n" + toPrintMatriks(A)
                    + "X\n" + toPrintMatriks(B) + "=\n" + toPrintMatriks(perkalianMatriks(A, B));
            System.out.println(hasil);
            String FileName = "";
            System.out.print("\nMasukkan Nama File : ");
            FileName = dis.readLine();
            saveToFile(FileName, hasil);
            System.out.println("DATA SAVED");

        } catch (IOException e) {
        }
    }

    /**
     * Fungsi untuk menghitung perkalian dua matriks yang dilewatkan melalui
     * parameter fungsi.
     *
     * @param A Matriks A (berupa Array 2 Dimensi)
     * @param B Matriks B (berupa Array 2 Dimensi)
     * @return Matriks hasil perkalian A dan B
     */
    private static int[][] perkalianMatriks(int[][] A, int[][] B) {
        int C[][] = new int[A.length][B[0].length];
        for (int i = 0; i < A.length; i++) {
            for (int j = 0; j < B[0].length; j++) {
                C[i][j] = 0;
                for (int k = 0; k < B.length; k++) {
                    C[i][j] += A[i][k] * B[k][j];
                }
            }
        }
        return C;
    }

    /**
     * Fungsi untuk mengembalikan String berupa tampilan matriks yang siap cetak
     * @param M Matriks yang ingin dicetak (berupa Array 2 Dimensi)
     */
    private static String toPrintMatriks(int[][] M) {
        String h = "";
        for (int i = 0; i < M.length; i++) {
            h += "[\t";
            for (int j = 0; j < M[i].length; j++) {
                h += M[i][j] + "\t";
            }
            h += "]\n";
        }
        return h;
    }

    /**
     * Fungsi untuk menyimpan String ke sebuah File
     * Nama file dijadikan sebuag parameter supaya kita bisa
     * merubah nama file yang akan disimpan sesuai dengan keinginan kita
     *
     * @param FileName nama File yang diinginkan
     * @param data Data String yang akan disimpan
     */
    private static void saveToFile(String FileName, String data) {
        try {
            FileOutputStream fos = null;
            File f = new File("C:/folder coba/" + FileName + ".uas");
            fos = new FileOutputStream(f);
            fos.write(data.getBytes());
            fos.close();
        } catch (IOException ex) {
            Logger.getLogger(SoalUAS.class.getName()).log(Level.SEVERE, null, ex);
        }
    }
}

hmmm… ternyata tak sesulit yang kita kira bukan…???
Math.random() akan menghasilkan bilangan acak antara 0.00 s/d 1.0
jadi kita cuman perlu memanipulasi hasil acakannya supaya sesuai dengan yang kita inginkan.

Semoga bermanfaat… yah

Konsumsi Coklat Tingkatkan Kemampuan Matematika

cokelat
LONDON – Anda kesulitan memahami pelajaran matematika, atau lemah dalam urusan hitung-hitungan? Jika iya, ada baiknya Anda mulai banyak-banyak mengonsumsi coklat.

Berdasarkan studi yang dilakukan para peneliti dari Northumbria University, Inggris, mengonsumsi coklat dapat meningkatkan kemampuan dalam pelajaran matematika.

Menurut seorang peneliti, David Kennedy, kandungan zat aktif Flavanol dalam coklat dapat meningkatkan kerja otak. Aliran darah ke otak menjadi lebih lancar karena Flavanol dan juga kandungan kimia polyphenols yang terdapat dalam coklat. Demikian dilansir Times of India, Minggu (5/4/2009).

Studi itu dilakukan terhadap sekira 30 sukarelawan. Sebelum melakukan ujian matematika berupa hitung-hitungan angka antara 800 hingga 999 angka, para sukarelawan mengonsumsi minuman coklat yang mengandung 500 miligram Flavanol. Hasilnya para sukarelawan dapat melakukan hitung-hitungan seperti kali, tambah, kurang, dan bagi dengan lebih cepat dan akurat. (srn)

sumber : okezone.com

Praktikum Java

Yang lagi ngambil praktikum Pemrograman Java……
nich…… silahkan ambil filenya di :

Praktikum Java

semoga sukses… oh ya filenya mungkin ada beberapa yang kurang
dilengkapin sendiri yaaaa…
kalau modulnya berubah jangan salahkan saya…
wekekekekekekekekek…

terima kasih

Pria Butuh 8,2 Detik untuk Jatuh Cinta

Anda para wanita mulai sekarang harus sering-sering melihat sekeliling. Jika ada seorang pria yang “cukup lama” memandang Anda, awas, bisa jadi pria tersebut jatuh cinta kepada Anda.

Berdasarkan sebuah hasil penelitian di Inggris, tempo “cukup lama” tadi tepatnya hanya 8,2 detik. Penelitian yang dimuat di jurnal Archives of Sexual Behavior itu membuktikan, jika seorang pria memandang seorang wanita yang pertama dijumpainya minimal 8,2 detik tadi, bisa dipastikan pria tersebut telah jatuh cinta pada pandangan pertama.

Jika lebih lama dari itu, semakin besar pula ketertarikan si pria. Bagaimana kalau kurang dari itu, misalnya hanya empat detik? Berarti bisa disimpulkan kalau si pria tak tertarik kepada si wanita.

Tapi, hal yang sama tidak berlaku untuk kaum hawa. Menurut para peneliti, sebagaimana dikutip Daily Telegraph, kala seorang wanita memandang pria yang baru dikenalnya dalam rentang waktu yang sama, yakni 8,2 detik tadi, itu baru dalam tahap menentukan apakah si pria menarik atau tidak.

Penelitian itu menggunakan metode kamera tersembunyi untuk merekam gerakan mata 115 mahasiswa dan mahasiswi yang menjadi objek penelitian. Mereka dipertemukan dengan sejumlah aktor dan aktris.

“Kami menemukan, mahasiswa menghabiskan waktu minimal 8,2 detik untuk memandang aktris yang mereka anggap cantik. Tapi, menurun menjadi hanya 4,5 detik bila yang diajak bicara aktris yang kurang menarik,” tulis para peneliti di jurnal.

Adapun untuk para mahasiswi, mereka memandang semua aktor, baik yang ganteng maupun yang tidak, dalam rentang waktu yang sama. Menurut para peneliti, itu memperlihatkan, pria memanfaatkan kontak mata agar bisa lebih agresif dalam bertindak, sedangkan para wanita memilih lebih berhati-hati dalam mencari pasangan. Maklum, para wanita kan punya risiko lebih besar: menanggung kehamilan yang tidak diingankan atau menjadi orang tua tunggal.

Sumber : http://www.jawapos.com/

Niat dalam Sholat….

Belum lama ini aku dan temen2ku pernah memperdebatkan status niat dalam sholat…

T1:”Bagaimana hukumnya mengucapkan usholli fardlu…dst dalam Sholat ???”

AQ:”ya…Wajib…lha!!!”(tanpa pikir panjang)

T2:”Tapi…. kata guruku kita cukup baca Bismillah saja………”.

T1:”Trus… niat kamu mana?”

T2:”Ya Bismillah itu…….”

Kedua teman ku itu saling berdebat tentang niat sholat, mereka saling beradu argumentasi. satu mengatakan bahwa sholat itu wajib niat (usholli …dst) dan yang lain mengatakan cukup dengan membaca Basmalah.

Setelah itu aku mulai buka-buka kitab lamaku yang mulai kangen karena jarang sekali ku baca….(duh kasian). setelah lama baca akhirnya ketemu juga hehehe……. disitu tertulis rukun sholat itu ada delapan dan yang pertama sendiri adalah niat…

terus kubaca keterangan dari kitab-kitab yang lain. eh….. akhirnya nemu lagi yang lebih komplit disana dijelaskan bahwa niat adalah menyengaja untuk melakukan sesuatu yang dibarengkan dengan waktu melakukan sesuatu hal tersebut, dan tempat niat adalah dihati.

dibawahnya juga dijelaskan jika Sholat yang hendak dikerjakan itu adalah sholat wajib, wajib niat bahwa sholat itu sholat fardlu, wajib menyengaja melakukan sholat, dan wajib menjelaskan sholat apa (subuh, dhuhur,dll).

jika sholat itu adalah sholat sunnah dan sholat sunnah itu mempunyai waktu tersendiri (ex: Sholat Ied) atau sholat sunnah yang mempunyai sebab (ex: Sholat Minta Hujan) maka wajib menyatakan sholat sunnah apa yang dikerjakan.

dari sini bisa disimpulkan terserah itu mau pake bacaUsholli…dst atau cuma membaca Basmalah di awal Sholat, yang pasti wajib niat itu dalam hati dengan ketentuan diatas.(Wallahu a’lam)

Sholat Jum’at Tertinggal Satu Roka’at…

Kebanyakan orang ketika melakukan Sholat Jum’at lalu mereka tertinggal satu roka’at dari imam, mereka menambahkan satu roka’at lagi setelah imam melakukan salam. Benarkah yang demikian…..???

Sholat Jum’at adalah sholat yang dilakukan pada hari jum’at dalam waktu sholat dhuhur, Sholat Jum’at sendiri wajib bagi orang laki-laki, merdeka, sehat dan orang yang menetap disuatu desa. syarat tersebut merupakan tambahan dari syarat untuk melakukan sholat secara umum (Fatchul Qorib-Kutubush-Sholah).

Menurut pengarang kitab Fatchul Wahhab (Syaikh al-Islam Abi Yahya Zakariya al-Anshari) Sholat Jum’at wajib digantikan dengan Sholat Dhuhur jika:

  • Jika diwaktu yang tersisa dari waktu Sholat dhuhur tidak memungkinkan untuk dilaksanakannya rangkaian sholat jum’at (2 khutbah dan Sholat 2 roka’at)
  • Orang yang ragu-ragu. apakah waktu yang tersisa cukup atau tidak.
  • Orang yang belum melaksanakan Sholat Jum’at dan waktu Dhuhur telah habis.
  • Orang yang tertinggal satu rokaat imam.

Dengan demikian ketika, sholat jum’at kita tertinggal satu roka’at, maka wajib bagi kita menambahkan bukan satu roka’at melainkan 3 roka’at seperti halnya sholat Dhuhur (Wallahu a’lam).

public, private, protected… apa sich maksudnya..!!

Bahasa Pemrograman Java dalam menangani class,method atau variabel mempunyai 3 modifier, modifier ini digunakan untuk menentukan hak akses atas class, method atau variabel tersebut.

Tiga modifier tersebut adalah public, private, protected. Trus… bagaimana kalau kelas yang tidak menggunakan salah satu modifier tersebut?. Java akan menganggap class, method, atau variable tersebut bernilai default.

Lha… Fungsi dari tiap modifier itu apa….???

public

Modifier public akan membuat class, method, variabel yang menggunakanya bersifat umum, alias dapat dipanggil oleh semua kelas. baik dari satu paket yang sama atau berlainan paket. public juga akan memperbolehkan akses terhadap semua kelas yang diinstan dari kelas tersebut.

private

Modifier private, menunjukkan bahwa suatu class, method atau variabel hanya dapat diakses dari dalam kelas tersebut. modifier ini biasanya digunakan untuk kelas, method, atau variabel yang memang ingin disimpan atau tidak dapat digunakan oleh kelas yang lain (tidak berguna untuk kelas yang lain).

protected

Modifier protected, digunakan kalau suatu class, method atau variabel ingin digunakan hanya oleh kelas-kelas yang satu paket dengan kelas tersebut atau sub kelas dari kelas tersebut baik yang satu paket atau lain paket.

Yang default bagaimana?

class, method atau variable yang tidak dibumbui dengan salah satu modifier diatas, oleh java dianggap menggunakan modifier default.  hal ini membuat class, method atau variabel tersebut tidak dapat diakses oleh kelas lain dari luar paket kelas tersebut.

Merokok,,,, Haramkah?

Negara kita Indonesia adalah salah satu negara penghasil tembakau terbaik didunia, tidak heran kalau kebanyakan penduduk di Indonesia banyak merokok, hal ini dikarenakan merokok merupakan adat atau kebiasaan masyarakat Indonesia sejak zaman dahulu.

trus…. gimana hukum merokok itu???

Menurut pendapat yang paling masyhur(terkenal) merokok hukumnya makruh, yaitu suatu tindakan yang bila dilakukan tidak mendapatkan dosa tapi jika ditinggalkan itu akan lebih baik.

sesuatu hal yang makruh itu bisa berubah menjadi haram karena beberapa sebab, sebab-sebab itu diantaranya adalah: menyebabkan madhorot (kerugian) terhadap orang itu sendiri atau orang lain. begitu pula dengan merokok hukum merokok itu bisa haram jika merokok tersebut menimbulkan kerugian bagi si perokok atau orang lain disekitar perokok, seperti halnya merokok haram bagi orang wanita karena bisa mengakibatkan gangguan kehamilan, merokok juga haram jika disekitar anda ada orang yang merasa terganggu asap rokok anda………

jadi berhati-hatilah anda jika anda perokok, jika seseorang disekitar anda merasa terganggu dengan rokok anda maka anda akan berdosa karena mengganggu kenyamanan orang lain dan tentunya menghilangkan hak orang lain untuk menghirup udara segar dan menyehatkan,,,,,,,,,,,,,,,,,

Looping dalam C++

Dalam Pemrograman C++ ada beberapa metode looping yang sering digunakan, diantaranya :

1. Metode for

for digunakan untuk looping dari keadaan (state) awal selama nilai perbandingannya adalah =true

cotoh :

#include<iostream.h>
void main() {
// mengulang dan menampilkan bilangan dari 1 s/d 10 dengan metode for
for(int i=1;i<=10;i++) {
cout<<i<<endl;
}
}

2. Metode while

cara penggunaannya adalah:

#include<iostream.h>
void main() {
// mengulang dan menampilkan bilangan dari 1 s/d 10 dengan metode while
int i=1;
while(i<=10){
cout<<i<<endl;
i++;
}
}

3. Metode do while

cara penggunaannya adalah:

#include<iostream.h>
void main() {
// mengulang dan menampilkan bilangan dari 1 s/d 10 dengan metode do while
int i=1;
do {
cout<<i<<endl;
i++;
} while(i<=10);
}

4. Metode goto

Metode ini jarang digunakan karena agak membingungkan (mungkin karena terlalu mudah),

jadi jika  anda juga bungung dan kurang menguasai logika mending jangan gunakan metode ini.

karena sebenarnya ini bukan metode looping, tapi metode untuk lompat  dari sebuah blok program

ke blok program yang lain.

contoh :

#include<iostream.h>
void main() {
// mengulang dan menampilkan bilangan dari 1 s/d 10 dengan metode goto

int i=1;
a:{
cout<<i<<endl;
i++;
}
if(i<=10){
goto a;
}
}

Selamat Mencoba……………………………..

Modul 1

mungkin tulisan ini agak penting buat temen-temen yang lagi mengambil praktikum pemrograman Java atau mau ngambil, jadi…. jangan hanya di co-past oke coba dulu jalan pa gak, makanya aku gak nampilkan hasil runningnya….

sory yaaa……..

Modul 1
Praktikum :
1.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class Relational {

public static void main(String[] md1a) {
int x = 7;
int y = 11;
int z = 11;
System.out.println((“x : ” + x));
System.out.println(“y : ” + y);
System.out.println(“z : ” + z);
System.out.println(“x < y : ” + (x < y));
System.out.println(“x > z : ” + (x > z));
System.out.println(“x <= z : ” + (x <= z));
System.out.println(“x >= y : ” + (x >= y));
System.out.println(“y == z : ” + (y == z));
System.out.println(“x != y : ” + (x != y));
}
}2.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class Conditional {

public static void main(String []md1b) {
int x = 0;
boolean isEven = false;
System.out.println(“x = ” + x);
x = isEven ? 4 : 7;
System.out.println(“x=” + x);
}
}
3.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class TMP03A {

public static void main(String[] md1c) {
int[] a = new int[md1c.length];
for (int i = 0; i < md1c.length; i++) {
a[i] = Integer.parseInt(md1c[i]);
}
if (a[0] > a[1]) {
System.out.println(“Jumlah :” + (a[0] + a[1]));
} else if (a[0] < a[1]) {
System.out.println(“Kali :” + (a[0] * a[1]));
} else {
System.out.println(“Kedua Bilangan Sama :” + a[0]);
}
}
}
4.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class Faktorial {

public static void main(String[] md14) {
int h = 1;
for (int i = 1; i <= 10; i++) {
h = i * h;
System.out.println(i + “! = ” + h);
}
}
}

Tugas Praktikum
1.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class operasiLogika {

public static void main(String []md15) {
boolean a = false;
boolean b = false;
boolean opAnd, opOr, opNand, opNor, opXor;
System.out.println(“A\tB\tAND\tOR\tNAND\tNOR\tXOR”);
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
opAnd = a & b;
opOr = a | b;
opNand = !(a & b);
opNor = !(a | b);
opXor = a ^ b;
System.out.println(a + “\t” + b + “\t” + opAnd + “\t” + opOr + “\t” + opNand + “\t” + opNor + “\t” + opXor);
b = !b;
}
a = !a;
}
}
}

2.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class operasiLogika {

public static void main(String []md15) {
boolean a = false;
boolean b = false;
boolean opAnd, opOr, opNand, opNor, opXor;
System.out.println(“A\tB\tAND\tOR\tNAND\tNOR\tXOR”);
for (int i = 0; i < 2; i++) {
for (int j = 0; j < 2; j++) {
opAnd = a & b;
opOr = a | b;
opNand = !(a & b);
opNor = !(a | b);
opXor = a ^ b;
System.out.println(a + “\t” + b + “\t” + opAnd + “\t” + opOr + “\t” + opNand + “\t” + opNor + “\t” + opXor);
b = !b;
}
a = !a;
}
}
}

3.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package VadSoft.PraktikumJava.Modul1;/**
*
* @author zabrina
*/
public class faktorialRekursif {

public static void main(String[] md17) {
faktorialRekursif FR = new faktorialRekursif();
for (int i = 1; i <= 10; i++) {
System.out.println(i + “! = ” + FR.faktorialRek(i));
}
}

private int faktorialRek(int a) {
if (a > 1) {
a *= faktorialRek(a – 1);
} else {
a = 1;
}
return a;
}
}

Lha aku iki wong Jowo…………………..!!!!!!

Ikuti

Get every new post delivered to your Inbox.