Program menghitung rata-rata data kelompok,
mencari nilai maximum, dan nilai minimum :
Algoritmanya adalah :
1. Buat
classs baru pada package java
2. Menentukan
variabel yang akan digunakan.
3. Menentukan
batasan maksimum jumlah data yang dapat di input menggunakan array
4. Tuliskan
“statement” yang akan di keluarkan saat program dijalankan sebagai perintah untuk
menginput jumlah data yang di inginkan pengguna program
5. Buat
program perulangan yang akan mengulang inputa-an data sesuai yang diinginkan
oleh pengguna program dengan menggunakan salah satu program looping pada java
6. Buat
program perhitungan yang akan menghitung rata-rata dari data yang di input oleh
pengguna program
7. Buat
program yang akan menyeleksi secara otomatis nilai maksimum dan minimum dari
data yang di masukkan oleh pengguna program
8. Tuliskan
“statement” yang akan dikeluarkan sebagai output setelah semua program
perhitungan yang diinginkan telah dieksekusi oleh java
9. Tampilkan
pula nilai rata-rata, maksimum, dan minimum bersama “statement” output.
Berikut sintaks program mencari nilai rata-rata,
maksimum, dan minimum dari sekelompok data !
package thinaaa;
import java.util.Scanner;
public class rata2minmax {
public static void main(String []
args)
{
Scanner Scan = new Scanner (System.in);
int n, i, j, k, min, max;
double r;
int bil[] = new int[1000];
System.out.print ("Masukan
banyak data :");
n = Scan.nextInt();
System.out.println ("Masukan "+n+" Buah Nilai");
for (i=0; i<n; i++){
System.out.print ("Nilai
ke"+(i+1)+" : ");
bil[i] = Scan.nextInt();
}
j=0;
for(i = 0; i <= n; i++) {
j += bil[i];
}
r=j/n;
System.out.println("Nilai
Rata-Rata : "+r);
min=bil[1];
for (i=0;i<n;i++)
{
if (bil[i]<=min) min=bil[i];
}
System.out.println("Nilai
Terkecil : "+min);
max=bil[1];
for (i=1;i<n;i++)
{
if (bil[i]>max) max=bil[i];
}
System.out.println("Nilai
Terbesar : "+max);
for (i=0; i<n; i++)
for (j=0; j<n;
j++)
if (bil[j+1] <
bil [j]){
k=bil[j];
bil[j] = bil[j+1];
bil[j+1]=k;
}
}
}
Program
mencari nilai matriks 2x2 dan 4x4
Algoritmanya adalah :
1. Membuat
class baru pada package Java
2. Buat
pilihan program yang akan dijalankan oleh pengguna program, yang terdiri dari
pilihan perhitungan matriks ordo 2x2 atau ordo 4x4
3. Buat
program yang akan di proses untuk masing-masing matriks apabila dipilih oleh pengguna
program
4. Deklarasikan
terlebih dahulu ordo matriks yang akan di buat
5. Lakukan
penginputan matriks sesuai jumlah ordo yang dipilih dengan menggunakan metode
perulangan
6. Tuliskan
program yang akan menampilkan secara utuh matriks yang telah di input
7. Mulai
tuliskan program perhitungan matriks dimana untuk setiap matriks, dicari
terlebih dahulu determinan matriksnya.
8. Sesuai
rumus perhitungan matriks pada Matematika, setelah menghitung determinan
matriks, maka selanjutnya tuliskan sintaks program untuk mencari adjoin matriks
kemudian dilanjutkan dengan proses perhitungan invers
9. Rumus-rumus
yang dituliskan dalam bentuk sintaks program pada Java dituliskan sesuai dengan
rumus perhitungan matematika murni
10. Tuliskan
“statement” otuput yang akan mengeluarkan semua hasil perhitungan yang telah
dilakukan sebelumnya.
Berikut sintaks program mencari ivers dari matriks !
package thinaaa;
import java.io.*;
import java.util.*;
public class
invrsmatriks {
@SuppressWarnings("empty-statement")
public static void main(String []args)
throws IOException {
DataInputStream entry = new
DataInputStream(System.in);
try
{
Scanner input = new
Scanner(System.in);
System.out.print("\n\n************* PROGRAM MENCARI DETERMINAN DAN
INVERS MATRIKS ************* \n");
//Proses
pemilihan ordo 2x2 atau 4x4 oleh user
System.out.println("Pilih
ordo yang anda inginkan:\nA. 2x2 \t B. 4x4");
System.out.print("Ketik
'A' atau 'B' = ");
char pilih =
input.nextLine().charAt(0);
//Jika memilih A, ordo 2x2
switch(pilih){
case 'a':
case 'A':
System.out.print ("\n=====
Ordo Matriks = 2 x 2 =====");
int[][] MatriksX = new int
[2][2];
int temp;
//Proses memasukkan
elemen-elemen matriksnya
System.out.println("\nMasukkan elemen-elemen matriksnya : ");
for (int i=0; i<2 ;i++ )
{
for(int j=0; j<2;j++)
{
System.out.print("Elemen ["+(i+1)+","+(j+1)+"]
= ");
MatriksX[i][j]=Integer.parseInt(input.nextLine());
}
}
//Proses menampilkan matriks
System.out.print("\nBerikut tampilan matriksnya : \n");
{
for(int j=0;j<2;j++)
{
System.out.print(MatriksX[i][j]+"\t");
}
System.out.println();
}
//Proses perhitungan determinan
Matriks
float dtrm;
dtrm =
(MatriksX[0][0]*MatriksX[1][1])-(MatriksX[1][0]*MatriksX[0][1]);
//Proses menampilkan determinan
Matriks
System.out.println("\nMaka, determinan = "+dtrm);
//Proses membentuk adjoin
System.out.print("\nInvers
Matriks : \n");
temp = MatriksX[0][0];
MatriksX[0][0]=MatriksX[1][1];
MatriksX[1][1]=temp;
MatriksX[0][1]=MatriksX[0][1]*-1;
MatriksX[1][0]=MatriksX[1][0]*-1;
//Proses perhitungan Invers
for (int i=0;i<2;i++)
{
for (int j=0;j<2;j++)
{
System.out.print(MatriksX[i][j]/dtrm+"\t");
}
System.out.println();
}
break;
//Jika memilih B, ordo 4x4
case 'b':
case 'B':
System.out.print ("\n=====
Ordo Matriks = 4 x 4 =====");
int[][] MatriksY = new int
[4][4];
//Proses memasukkan
elemen-elemen matriksnya
System.out.println("\nMasukkan elemen-elemen matriksnya : ");
for (int i=0; i<4 ;i++ )
{
for(int j=0; j<4;j++)
{
System.out.print("Elemen ["+(i+1)+","+(j+1)+"]
= ");
MatriksY[i][j]=Integer.parseInt(input.nextLine());
}
}
//Proses menampilkan matriks
System.out.print("\nBerikut tampilan matriksnya : \n");
for (int i=0; i<4 ;i++ )
{
for(int j=0;j<4;j++)
{
System.out.print(MatriksY[i][j]+"\t");
}
System.out.println();
}
//Proses perhitungan determinan
matriks
float dtr;
dtr =
(MatriksY[0][0]*MatriksY[1][1]*MatriksY[2][2]*MatriksY[3][3])+(MatriksY[0][1]*MatriksY[1][2]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[0][2]*MatriksY[1][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[1][2]*MatriksY[2][1]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[2][2]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[2][3]*MatriksY[3][2]);
//Proses menampilkan determinan
matriks
System.out.println("\nMaka, determinan = "+dtr);
System.out.print("\nInvers
Matriks : \n");
//Proses Kofaktor
int m11, m12, m13, m14, m21,
m22, m23, m24, m31, m32, m33, m34, m41, m42, m43, m44;
m11 = (MatriksY[1][1]*MatriksY[2][2]*MatriksY[3][3])+(MatriksY[1][2]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[1][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[1][3]*MatriksY[2][2]*MatriksY[3][1])-(MatriksY[1][0]*MatriksY[2][3]*MatriksY[3][2])-(MatriksY[1][1]*MatriksY[2][0]*MatriksY[3][3]);
m12 =
-1*(MatriksY[1][0]*MatriksY[2][2]*MatriksY[3][3])+(MatriksY[1][2]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[1][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[1][3]*MatriksY[2][2]*MatriksY[3][0])-(MatriksY[1][0]*MatriksY[2][3]*MatriksY[3][2])-(MatriksY[1][1]*MatriksY[2][0]*MatriksY[3][3]);
m13 =
(MatriksY[1][0]*MatriksY[2][1]*MatriksY[3][3])+(MatriksY[1][1]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[1][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[1][3]*MatriksY[2][1]*MatriksY[3][0])-(MatriksY[1][0]*MatriksY[2][3]*MatriksY[3][1])-(MatriksY[1][1]*MatriksY[2][0]*MatriksY[3][3]);
m14=
-1*(MatriksY[1][0]*MatriksY[2][1]*MatriksY[3][2])+(MatriksY[1][1]*MatriksY[2][2]*MatriksY[3][0])+(MatriksY[1][2]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[1][2]*MatriksY[2][1]*MatriksY[3][0])-(MatriksY[1][0]*MatriksY[2][2]*MatriksY[3][1])-(MatriksY[1][1]*MatriksY[2][0]*MatriksY[3][2]);
m21 = -1*(MatriksY[0][1]*MatriksY[2][2]*MatriksY[3][3])+(MatriksY[0][2]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[2][2]*MatriksY[3][1])-(MatriksY[0][0]*MatriksY[2][3]*MatriksY[3][2])-(MatriksY[0][1]*MatriksY[2][0]*MatriksY[3][3]);
m22 =
(MatriksY[0][0]*MatriksY[2][2]*MatriksY[3][3])+(MatriksY[0][2]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[2][2]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[2][3]*MatriksY[3][2])-(MatriksY[0][1]*MatriksY[2][0]*MatriksY[3][3]);
m23 =
-1*(MatriksY[0][0]*MatriksY[2][1]*MatriksY[3][3])+(MatriksY[0][1]*MatriksY[2][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[2][1]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[2][3]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[2][0]*MatriksY[3][3]);
m24 =
(MatriksY[0][0]*MatriksY[2][1]*MatriksY[3][2])+(MatriksY[0][1]*MatriksY[2][2]*MatriksY[3][0])+(MatriksY[0][2]*MatriksY[2][0]*MatriksY[3][1])-(MatriksY[0][2]*MatriksY[2][1]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[2][2]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[2][0]*MatriksY[3][2]);
m31 =
(MatriksY[0][1]*MatriksY[1][2]*MatriksY[3][3])+(MatriksY[0][2]*MatriksY[1][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[1][1]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[1][2]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[1][3]*MatriksY[3][2])-(MatriksY[0][2]*MatriksY[1][1]*MatriksY[3][3]);
m32 =
-1*(MatriksY[0][0]*MatriksY[1][2]*MatriksY[3][3])+(MatriksY[0][2]*MatriksY[1][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[1][0]*MatriksY[3][2])-(MatriksY[0][3]*MatriksY[1][2]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[3][2])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[3][3]);
m33 =
(MatriksY[0][0]*MatriksY[1][1]*MatriksY[3][3])+(MatriksY[0][1]*MatriksY[1][3]*MatriksY[3][0])+(MatriksY[0][3]*MatriksY[1][0]*MatriksY[3][1])-(MatriksY[0][3]*MatriksY[1][1]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[3][3]);
m34=
-1*(MatriksY[0][0]*MatriksY[1][1]*MatriksY[3][2])+(MatriksY[0][1]*MatriksY[1][2]*MatriksY[3][0])+(MatriksY[0][2]*MatriksY[1][0]*MatriksY[3][1])-(MatriksY[0][2]*MatriksY[1][1]*MatriksY[3][0])-(MatriksY[0][0]*MatriksY[1][2]*MatriksY[3][1])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[3][2]);
m41=
-1*(MatriksY[0][1]*MatriksY[1][2]*MatriksY[2][3])+(MatriksY[0][2]*MatriksY[1][3]*MatriksY[2][1])+(MatriksY[0][3]*MatriksY[1][1]*MatriksY[2][2])-(MatriksY[0][3]*MatriksY[1][2]*MatriksY[2][1])-(MatriksY[0][1]*MatriksY[1][3]*MatriksY[2][2])-(MatriksY[0][2]*MatriksY[1][1]*MatriksY[2][3]);
m42=
(MatriksY[0][0]*MatriksY[1][2]*MatriksY[2][3])+(MatriksY[0][2]*MatriksY[1][3]*MatriksY[2][0])+(MatriksY[0][3]*MatriksY[1][0]*MatriksY[2][2])-(MatriksY[0][3]*MatriksY[1][2]*MatriksY[2][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[2][2])-(MatriksY[0][2]*MatriksY[1][0]*MatriksY[2][3]);
m43=
-1*(MatriksY[0][0]*MatriksY[1][1]*MatriksY[2][3])+(MatriksY[0][1]*MatriksY[1][3]*MatriksY[2][0])+(MatriksY[0][3]*MatriksY[1][0]*MatriksY[2][1])-(MatriksY[0][3]*MatriksY[1][1]*MatriksY[2][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[2][1])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[2][3]);
m44=(MatriksY[0][0]*MatriksY[1][1]*MatriksY[2][3])+(MatriksY[0][1]*MatriksY[1][3]*MatriksY[2][0])+(MatriksY[0][3]*MatriksY[1][0]*MatriksY[2][1])-(MatriksY[0][3]*MatriksY[1][1]*MatriksY[2][0])-(MatriksY[0][0]*MatriksY[1][3]*MatriksY[2][1])-(MatriksY[0][1]*MatriksY[1][0]*MatriksY[2][3]);
//Proses Adjoin (Transpose dari Kofaktor)
MatriksY[0][0] = m11;
MatriksY[0][1] = m21;
MatriksY[0][2] = m31;
MatriksY[0][3] = m41;
MatriksY[1][0] = m12;
MatriksY[1][1] = m22;
MatriksY[1][2] = m32;
MatriksY[1][2] = m42;
MatriksY[2][0] = m13;
MatriksY[2][1] = m23;
MatriksY[2][2] = m33;
MatriksY[2][3] = m43;
MatriksY[3][0] = m14;
MatriksY[3][1] = m24;
MatriksY[3][2] = m34;
MatriksY[3][3] = m44;
//Proses perhitungan Invers
for (int i=0;i<4;i++)
{
for (int j=0;j<4;j++)
{
System.out.print(MatriksY[i][j]/dtr+"\t");
}
System.out.println();
}
break;
default:
}
}
catch (Exception e)
{
System.out.println("Anda salah
memasukkan data");
}
System.out.println("\n=================================
PROGRAM SELESAI =================================\n");
}
}
Program mencari nilai Eigen dari matriks 2x2 :
Algoritmanya adalah :
1. Membuat class baru pada package Java
2. Tuliskan sintaks yang berfungsi untuk menginput matrik berukuran 2x2 yang akan di cari nilai eigennya dengan menggunakan array.
3. Dalam pencarian nilai eigen, akan memunculkan persamaan kuadrat, maka gunakan rumus abc atau yang biasa di kenal dengan rumus kecap untuk mengeksekusi.
4. Deklarasikan variabel-variabel yang di anggap perlu dalam perhitungan dengan menggunakan rumus abc tersebut
5. Lakukan perhitungan dengan variabel-variabel yang di anggap perlu untuk mencari nilai X1 dan X2
6. Tuliskan sintaks atau statement yang akan mengeluarkan hasil eksekusi dari perhitungan-perhitungan yang telah di lakukan.
Berikut sintaks program mencari nilai eigen matriks 2x2 !
package praktikum4array;
import java.io.*;
import java.util.*;
public class nilaieigen {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print ("\n===== Ordo Matriks = 2 x 2 =====");
int[][] MatriksX = new int [2][2];
int temp;
//Proses memasukkan elemen-elemen matriksnya
System.out.println("\nMasukkan elemen-elemen matriksnya : ");
for (int i=0; i<2 ;i++ )
{
for(int j=0; j<2;j++)
{
System.out.print("Elemen ["+(i+1)+","+(j+1)+"] = ");
MatriksX[i][j]=Integer.parseInt(input.nextLine());
}
}
//Proses menampilkan matriks
System.out.print("\nBerikut tampilan matriksnya : \n");
for (int i=0; i<2 ;i++)
{
for(int j=0;j<2;j++)
{
System.out.print(MatriksX[i][j]+"\t");
}
System.out.println();
}
int b = -(MatriksX[0][0]+MatriksX[1][1]);
int c = (MatriksX[0][0]*MatriksX[1][1]-MatriksX[0][1]*MatriksX[1][0]);
double x1 = (-b + Math.sqrt(b*b-4*c))/2;
double x2 = (-b - Math.sqrt(b*b-4*c))/2;
System.out.println("Nilai dari x1 adalah " +x1);
System.out.println("Nilai dari x2 adalah " +x2);
}
}
0 komentar:
Posting Komentar