1. Jelaskan pengertian Entrepreneurship dan Entrepreneur ?
Entrepreneurship (kewirausahaan )adalah proses mengidentifikasi, mengembangkaan, dan membawa visi ke dalam kehidupan. Visi tersebut bisa berupa ide inovatif, peluang, cara yang lebih baik dalam menjalankan sesuatu. Hasil akhir dari proses tersebut adalah penciptaan usaha baru yang dibentuk pada kondisi risiko atau ketidakpastian. Entrepreneur (wirausaha )adalah orang yang pandai atau berbakat mengenali produk baru, menentukan cara produksi baru, menyusun operasi untuk pengadaan produk baru, memasarkannya, serta mengatur permodalan operasinya.
2. Bandingkan aliran pemikiran Makro dan Mikro dalam entrepreneurship ?
Pandangan makro menjabarkan faktor-faktor yang mempengaruhi sukses gagalnya suatu perusahaan entreprenurial, sedangkan pandangan mikro mengevaluasi faktor spesifik pada entrepreneurship.
3. Jelaskan mengapa Entrepreneurship penting bagi suatu Negara ?
Entrepreneurship memiliki dampak positif bagi suatu perkonomian dan masyarakat. salah satu dampak terpenting adalah penyediaan lapangan pekerjaan. entrpreneurship telah mampu mengatasi tingkat pengangguran melalui penciptaan lapngan pekerjaan oleh entrepreneur. selain itu entrepreneur juga dikenal sebagai inidikator perubahan dalam struktur bisnis dan masyarakat. entreprreneurship juga berperan dalam menjembatani kesejangan antara pengetahuan ddan pasar, menciptakan binis baru dan membawa produk kepasar
4. Uraikan aktifitas dalam proses Entrepreneurial ?
Fase identifikasi dan evaluasi peluang : fase ini merupakan fase tersulit karena peluang bisnis yang bagus tidak muncul begitu saja namun merupakan kejelian entrepreneur terhadap lingkungannya. peluan ini kemudaian perlu dievaluasi. kegiatan evaluasi ,erupakan eleme n paling kritis dalam proses entreprenurial arena melalui kegiatan ini entrepreneur dapat menilai apakah produk tertentu akan memberikan hasil yang memadai dibandingkan dengan sumber daya yang diperlukan. peluang ini juga harus sesuai dengan ketrampilan persoal dan tujuan seorang entrepreneur.
Fase pengembangan rencana bisnis : suatu rencana bisnis diperlukan untuk memanfaatkan peluan dan menetapkan sumber daya yang diperlukan, memperoleh sumber daya tersebit dan menngelola dengan usaha yang terbentuk.
Fase penentuan sumber daya yang dibutuhkan : proses ini dimulai dengan menilai sumber daya yang dimiliki seorangg entrepreneur. Langkah selanjutya adalah berusaha memperoleh sumber daya yang diperlukan.
Fase pengelolaan perusahaan yang dibentuk : setelah memperoleh sumber daya, entrepreneur menggunakan sumber daya ini untuk mengimplementasikan rencana bisnisnya.
Tampilkan postingan dengan label Materi. Tampilkan semua postingan
Tampilkan postingan dengan label Materi. Tampilkan semua postingan
12/07/2011
11/03/2011
Contoh Program Java - Bab 5
1.
// Nama file: CariData.java
// Mencari suatu data dalam array
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class CariData
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35, 87, 4, 90, 34, 23};
int i, nilaiX;
boolean ketemu;
// Menampilkan nilai array
for (i = 0; i < 10; i++)
System.out.print(nilai[i] + " ");
System.out.println();
// Memasukkan data yang dicari
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
nilaiX = Integer.parseInt(bilangan);
System.out.println("Data yang dicari adalah " + nilaiX);
ketemu = false;
for (i = 0; i < 10; i++)
{
if (nilai[i] == nilaiX)
{
ketemu = true;
break; // keluar
}
}
if (ketemu == true)
System.out.println("Data ditemukan pada elemen ke- " + (i + 1));
else
System.out.println("Data tidak ditemukan");
System.exit(0);
}
}
2.
// Nama file: ConStr.java
// Contoh penggabungan string
// -------------------------------------------------------------------------------------------
// Nama file: CariData.java
// Mencari suatu data dalam array
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class CariData
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35, 87, 4, 90, 34, 23};
int i, nilaiX;
boolean ketemu;
// Menampilkan nilai array
for (i = 0; i < 10; i++)
System.out.print(nilai[i] + " ");
System.out.println();
// Memasukkan data yang dicari
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
nilaiX = Integer.parseInt(bilangan);
System.out.println("Data yang dicari adalah " + nilaiX);
ketemu = false;
for (i = 0; i < 10; i++)
{
if (nilai[i] == nilaiX)
{
ketemu = true;
break; // keluar
}
}
if (ketemu == true)
System.out.println("Data ditemukan pada elemen ke- " + (i + 1));
else
System.out.println("Data tidak ditemukan");
System.exit(0);
}
}
2.
// Nama file: ConStr.java
// Contoh penggabungan string
// -------------------------------------------------------------------------------------------
public class ConcatStr
{
public static void main (String[ ] args)
{
String kata = "Bahasa ";
kata += "Pemrograman Java";
System.out.println(kata);
}
}
3.
// Nama file: ConcatStrInt.java
// Contoh penggabungan string
// -------------------------------------------------------------------------------------------
public class ConcatStrInt
{
public static void main (String[ ] args)
{
String kata1 = "Belajar ";
String kata2 = "Bahasa ";
String kata3 = "Pemrograman Java ";
String kalimat;
int bilangan = 20;
// Menggabungkan tiga string
kalimat = kata1 + kata2 + kata3;
System.out.println(kalimat);
// Konversi integer ke string, kemudian digabungkan dengan string
kalimat = bilangan + " adalah bilangan genap";
System.out.println(kalimat);
// Menggabungkan string dengan integer
kalimat = "dua puluh lima adalah " + 2 + 5;
System.out.println(kalimat);
// Menggabungkan integer dengan string
kalimat = 2 + 5 + " adalah tujuh";
System.out.println(kalimat);
}
}
4.
// Nama file: JumlahKarakter.java
// Menghitung huruf hidup, konsonan, dan spasi
// -------------------------------------------------------------------------------------------
public class JumlahKarakter
{
public static void main (String[ ] args)
{
// teks string yang diperiksa
String teks = "Array adalah kumpulan data yang bertipe sama "
+ "menggunakan nama yang sama pula. "
+ " Setiap identifier berhubungan dengan satu variabel.";
int spasi = 0,
hurufHidup = 0,
huruf = 0;
// Analisa semua karakter dalam string
int panjangTeks = teks.length(); // mendapatkan panjang string
for (int i = 0; i < panjangTeks; i ++)
{
// Periksa huruf hidup
char kar = Character.toLowerCase(teks.charAt(i));
if (kar == 'a' || kar == 'e' || kar == 'i' || kar == 'o' || kar == 'u')
hurufHidup ++;
// Periksa huruf
if (Character.isLetter (kar))
huruf ++;
// Periksa spasi
if (Character.isWhitespace(kar))
spasi ++;
}
System.out.println("Teks berisi: ");
System.out.println("huruf hidup = " + hurufHidup);
System.out.println("konsonan = " + (huruf - hurufHidup));
System.out.println("spasi = " + spasi);
}
}
5.
// Nama file: JumlahKata.java
// Menghitung kata pada teks.
// -------------------------------------------------------------------------------------------
public class JumlahKata
{
public static void main (String[ ] args)
{
// teks string yang diperiksa
String teks = "Array adalah kumpulan data yang bertipe sama "
+ "menggunakan nama yang sama pula. "
+ " Setiap identifier berhubungan dengan satu variabel.";
int jumlah = 0; // jumlah kata awal
int indeks = -1; // posisi indeks awal
String kata = "yang";
// Mencari kata "yang"
indeks = teks.indexOf(kata);
while (indeks >= 0)
{
++ jumlah;
indeks += kata.length();
indeks = teks.indexOf(kata, indeks);
}
System.out.println(teks);
System.out.println();
System.out.println("Teks berisi kata: " + "\n" + "yang = " + jumlah);
}
}
6.
// Nama file: Karakter.java
// Contoh deklarasi dan inisialisasi array dari karakter
// -------------------------------------------------------------------------------------------
public class Karakter
{
public static void main (String[ ] args)
{
char[ ] huruf = { 'A', 'c', 'D', 'm', 'o'};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + huruf[i]);
}
}
7.
// Nama file: Kata.java
// Contoh deklarasi dan inisialisasi array string
// -------------------------------------------------------------------------------------------
public class Kata
{
public static void main (String[ ] args)
{
String[ ] teks = {
"Andi", "Jakarta", "007", "bunga melati", "Jl. Thamrin 10"};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + teks[i]);
}
}
8.
// Nama file: Maksimum.java
// Mencari nilai maksimum dari bilangan random 1 - 100
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class Maksimum
{
public static void main (String[ ] args)
{
int[ ] nilai = new int [10];
int nilaiMaks;
// Memperoleh bilangan random
for (int i = 0; i < 10; i++)
nilai[i] = (int) (100 * Math.random());
// Mencari maksimum
nilaiMaks = nilai[0];
for (int i = 0; i < 10; i++)
{
System.out.println(nilai[i]);
if (nilai[i] > nilaiMaks)
nilaiMaks = nilai[i];
}
System.out.println("Nilai maksimum = " + nilaiMaks);
}
}
9.
// Nama file: Matriks.java
// Contoh deklarasi dan inisialisasi array dua dimensi
// -------------------------------------------------------------------------------------------
public class Matriks
{
public static void main (String[ ] args)
{
int [ ] [ ] bilangan = {
{1, 5, 2, 9, 7},
{2, 9, 5, 8, 9},
{34, 17, 10, 89, 67},
{14, 71, 24, 92, 10}
};
// Menampilkan nilai array
for (int i = 0; i < 4; i++)
{
for(int j = 0; j < 5; j ++)
System.out.print (bilangan[i][j] + " ");
System.out.println();
}
}
}
10.
// Nama file: MatSegitigaIn.java
// Contoh penggunaan array segitiga dengan input data dari keyboard
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class MatSegitigaIn
{
public static void main (String[ ] args)
{
int[ ] [ ] x = new int[4][ ];
x[0] = new int[1];
x[1] = new int[2];
x[2] = new int[3];
x[3] = new int[4];
int i, j;
for (i = 0; i < 4; i++) {
for (j = 0; j < i + 1; j ++) {
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
x[i][j] = Integer.parseInt(bilangan);
}
}
// Menampilkan nilai array
for (i = 0; i < 4; i++) {
for (j = 0; j < i + 1; j ++)
System.out.print(x[i][j] + " ");
System.out.println();
}
System.exit(0);
}
}
11.
// Nama file: Nilai.java
// Contoh deklarasi dan inisialisasi dan menampilkan elemen array
// -------------------------------------------------------------------------------------------
public class Nilai
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
}
}
12.
// Nama file: Nilai1.java
// Mendapatkan jumlah elemen array
// -------------------------------------------------------------------------------------------
public class Nilai1
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35};
// Mendapatkan jumlah elemen array
for (int i = 0; i < nilai.length; i ++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
}
}
13.
// Nama file: NilaiIn.java
// Contoh penggunaan array dengan input dari keyboard
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class NilaiIn
{
public static void main (String[ ] args)
{
float[ ] nilai = new float[5];
for (int i = 0; i < 5; i++)
{
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai[i] = Float.parseFloat(bilangan);
}
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
System.exit(0);
}
}
14.
// Nama file: NilaiRata.java
// Contoh menghitung nilai rata-rata dari elemen array
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class NilaiRata
{
public static void main (String[ ] args)
{
float[ ] nilai = new float[5];
float jumlah, nilaiRata;
int i;
for ( i = 0; i < 5; i++)
{
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai[i] = Float.parseFloat(bilangan);
}
// Menghitung rata-rata
jumlah = 0;
for (i = 0; i < 5; i++)
jumlah = jumlah + nilai[i];
nilaiRata = jumlah / i;
System.out.println("Nilai rata-rata = " + " " + nilaiRata);
System.exit(0);
}
}
{
public static void main (String[ ] args)
{
String kata = "Bahasa ";
kata += "Pemrograman Java";
System.out.println(kata);
}
}
3.
// Nama file: ConcatStrInt.java
// Contoh penggabungan string
// -------------------------------------------------------------------------------------------
public class ConcatStrInt
{
public static void main (String[ ] args)
{
String kata1 = "Belajar ";
String kata2 = "Bahasa ";
String kata3 = "Pemrograman Java ";
String kalimat;
int bilangan = 20;
// Menggabungkan tiga string
kalimat = kata1 + kata2 + kata3;
System.out.println(kalimat);
// Konversi integer ke string, kemudian digabungkan dengan string
kalimat = bilangan + " adalah bilangan genap";
System.out.println(kalimat);
// Menggabungkan string dengan integer
kalimat = "dua puluh lima adalah " + 2 + 5;
System.out.println(kalimat);
// Menggabungkan integer dengan string
kalimat = 2 + 5 + " adalah tujuh";
System.out.println(kalimat);
}
}
4.
// Nama file: JumlahKarakter.java
// Menghitung huruf hidup, konsonan, dan spasi
// -------------------------------------------------------------------------------------------
public class JumlahKarakter
{
public static void main (String[ ] args)
{
// teks string yang diperiksa
String teks = "Array adalah kumpulan data yang bertipe sama "
+ "menggunakan nama yang sama pula. "
+ " Setiap identifier berhubungan dengan satu variabel.";
int spasi = 0,
hurufHidup = 0,
huruf = 0;
// Analisa semua karakter dalam string
int panjangTeks = teks.length(); // mendapatkan panjang string
for (int i = 0; i < panjangTeks; i ++)
{
// Periksa huruf hidup
char kar = Character.toLowerCase(teks.charAt(i));
if (kar == 'a' || kar == 'e' || kar == 'i' || kar == 'o' || kar == 'u')
hurufHidup ++;
// Periksa huruf
if (Character.isLetter (kar))
huruf ++;
// Periksa spasi
if (Character.isWhitespace(kar))
spasi ++;
}
System.out.println("Teks berisi: ");
System.out.println("huruf hidup = " + hurufHidup);
System.out.println("konsonan = " + (huruf - hurufHidup));
System.out.println("spasi = " + spasi);
}
}
5.
// Nama file: JumlahKata.java
// Menghitung kata pada teks.
// -------------------------------------------------------------------------------------------
public class JumlahKata
{
public static void main (String[ ] args)
{
// teks string yang diperiksa
String teks = "Array adalah kumpulan data yang bertipe sama "
+ "menggunakan nama yang sama pula. "
+ " Setiap identifier berhubungan dengan satu variabel.";
int jumlah = 0; // jumlah kata awal
int indeks = -1; // posisi indeks awal
String kata = "yang";
// Mencari kata "yang"
indeks = teks.indexOf(kata);
while (indeks >= 0)
{
++ jumlah;
indeks += kata.length();
indeks = teks.indexOf(kata, indeks);
}
System.out.println(teks);
System.out.println();
System.out.println("Teks berisi kata: " + "\n" + "yang = " + jumlah);
}
}
6.
// Nama file: Karakter.java
// Contoh deklarasi dan inisialisasi array dari karakter
// -------------------------------------------------------------------------------------------
public class Karakter
{
public static void main (String[ ] args)
{
char[ ] huruf = { 'A', 'c', 'D', 'm', 'o'};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + huruf[i]);
}
}
7.
// Nama file: Kata.java
// Contoh deklarasi dan inisialisasi array string
// -------------------------------------------------------------------------------------------
public class Kata
{
public static void main (String[ ] args)
{
String[ ] teks = {
"Andi", "Jakarta", "007", "bunga melati", "Jl. Thamrin 10"};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + teks[i]);
}
}
8.
// Nama file: Maksimum.java
// Mencari nilai maksimum dari bilangan random 1 - 100
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class Maksimum
{
public static void main (String[ ] args)
{
int[ ] nilai = new int [10];
int nilaiMaks;
// Memperoleh bilangan random
for (int i = 0; i < 10; i++)
nilai[i] = (int) (100 * Math.random());
// Mencari maksimum
nilaiMaks = nilai[0];
for (int i = 0; i < 10; i++)
{
System.out.println(nilai[i]);
if (nilai[i] > nilaiMaks)
nilaiMaks = nilai[i];
}
System.out.println("Nilai maksimum = " + nilaiMaks);
}
}
9.
// Nama file: Matriks.java
// Contoh deklarasi dan inisialisasi array dua dimensi
// -------------------------------------------------------------------------------------------
public class Matriks
{
public static void main (String[ ] args)
{
int [ ] [ ] bilangan = {
{1, 5, 2, 9, 7},
{2, 9, 5, 8, 9},
{34, 17, 10, 89, 67},
{14, 71, 24, 92, 10}
};
// Menampilkan nilai array
for (int i = 0; i < 4; i++)
{
for(int j = 0; j < 5; j ++)
System.out.print (bilangan[i][j] + " ");
System.out.println();
}
}
}
10.
// Nama file: MatSegitigaIn.java
// Contoh penggunaan array segitiga dengan input data dari keyboard
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class MatSegitigaIn
{
public static void main (String[ ] args)
{
int[ ] [ ] x = new int[4][ ];
x[0] = new int[1];
x[1] = new int[2];
x[2] = new int[3];
x[3] = new int[4];
int i, j;
for (i = 0; i < 4; i++) {
for (j = 0; j < i + 1; j ++) {
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
x[i][j] = Integer.parseInt(bilangan);
}
}
// Menampilkan nilai array
for (i = 0; i < 4; i++) {
for (j = 0; j < i + 1; j ++)
System.out.print(x[i][j] + " ");
System.out.println();
}
System.exit(0);
}
}
11.
// Nama file: Nilai.java
// Contoh deklarasi dan inisialisasi dan menampilkan elemen array
// -------------------------------------------------------------------------------------------
public class Nilai
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35};
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
}
}
12.
// Nama file: Nilai1.java
// Mendapatkan jumlah elemen array
// -------------------------------------------------------------------------------------------
public class Nilai1
{
public static void main (String[ ] args)
{
int[ ] nilai = {3, 5, 18, 9, 35};
// Mendapatkan jumlah elemen array
for (int i = 0; i < nilai.length; i ++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
}
}
13.
// Nama file: NilaiIn.java
// Contoh penggunaan array dengan input dari keyboard
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class NilaiIn
{
public static void main (String[ ] args)
{
float[ ] nilai = new float[5];
for (int i = 0; i < 5; i++)
{
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai[i] = Float.parseFloat(bilangan);
}
// Menampilkan nilai array
for (int i = 0; i < 5; i++)
System.out.println("Elemen ke-" + i + " " + nilai[i]);
System.exit(0);
}
}
14.
// Nama file: NilaiRata.java
// Contoh menghitung nilai rata-rata dari elemen array
// -------------------------------------------------------------------------------------------
import javax.swing.*;
public class NilaiRata
{
public static void main (String[ ] args)
{
float[ ] nilai = new float[5];
float jumlah, nilaiRata;
int i;
for ( i = 0; i < 5; i++)
{
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai[i] = Float.parseFloat(bilangan);
}
// Menghitung rata-rata
jumlah = 0;
for (i = 0; i < 5; i++)
jumlah = jumlah + nilai[i];
nilaiRata = jumlah / i;
System.out.println("Nilai rata-rata = " + " " + nilaiRata);
System.exit(0);
}
}
11/02/2011
Contoh Program Java - Bab 4
1.
// Nama file: BreakFor.java
// Contoh penggunaan break dalam perulangan for
// -------------------------------------------------------------------------------------------
public class BreakFor
{
public static void main (String[ ] args)
{
int i; // pendefinisian variabel
for (i = 0; i < 5; i++)
{
System.out.println (i + " Program Java");
if (i == 2)
break;
}
}
}
2.
// Nama file: ContinueFor.java
// Contoh penggunaan continue dalam perulangan for
// -------------------------------------------------------------------------------------------
public class ContinueFor
{
public static void main (String[ ] args)
{
int i; // pendefinisian variabel
for (i = 0; i < 5; i++)
{
if (i == 3)
continue;
System.out.println (i + " Program Java");
}
}
}
3.
// Nama file: Faktorial.java
// Menghitung faktorial
// -------------------------------------------------------------------------------------------
public class Faktorial
{
public static void main (String[ ] args)
{
long limit = 20; // menghitung faktorial integer daeri 1 - 20
long faktorial = 1; // pendefinisian variabel faktorial
for (int i = 0; i <= limit; i++)
{
faktorial = 1;
for (int faktor = 2; faktor <= i; faktor ++)
faktorial *= faktor;
System.out.println (i + "!" + " adalah " + faktorial);
}
}
}
4.
// Nama file: PernyataanIf.java
// Contoh penggunaan pernyataan if sederhana
// -------------------------------------------------------------------------------------------
public class PernyataanIf
{
public static void main (String[ ] args)
{
int nilai = 70; // pendefinisian variabel
if (nilai >= 60)
System.out.println ("Nilai = " + nilai + " Lulus ujian");
}
}
5.
// Nama file: PernyataanIfelse
// Contoh penggunaan pernyataan if else
// -------------------------------------------------------------------------------------------
public class PernyataanIfelse
{
public static void main (String[ ] args)
{
int pembelian = 110; // pendefinisian variabel
System.out.println ("Jumlah pembelian = " + pembelian);
if (pembelian >= 100)
System.out.println ("Diskon = 20%");
else
System.out.println ("Diskon = 5%");
}
}
6.
// Nama file: PernyataanIfelsen..java
// Contoh penggunaan pernyataan if else
// -------------------------------------------------------------------------------------------
public class PernyataanIfelsen
{
public static void main (String[ ] args)
{
int nilai; // pendefinisian variabel
nilai = 75;
System.out.println ("Nilai = " + nilai);
if (nilai >= 80)
System.out.println ("Predikat A");
else if (nilai >= 69)
System.out.println ("Predikat B");
else if (nilai >= 56)
System.out.println ("Predikat C");
else if (nilai >= 40)
System.out.println ("Predikat D");
else
System.out.println ("Predikat E");
}
}
7.
// Nama file: PernyataanIfIn.java
// Dialog box untuk input data integer
// -----------------------------------------------------------------------------------------------
import javax.swing.*;
public class PernyataanIfIn
{
public static void main (String[] args)
{
int nilai;
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai = Integer.parseInt(bilangan);
if (nilai >= 60)
System.out.println ("Nilai = " + nilai + " Lulus Ujian");
System.exit(0);
}
}
8.
// Nama file: PernyataanIfNested.java
// Contoh penggunaan pernyataan bersarang
// -------------------------------------------------------------------------------------------
public class PernyataanIfNested
{
public static void main (String[ ] args)
{
int umur = 28; // pendefinisian variabel
String pendidikan = "sarjana";
System.out.println ("Umur = " + umur);
System.out.println ("Pendidikan = " + pendidikan);
if (umur <= 30);
{
if (pendidikan == "sarjana")
System.out.println ("Diterima menjadi karyawan");
}
}
}
9.
// Nama file: PernyataanSwitch.java
// Contoh penggunaan pernyataan switch
// -------------------------------------------------------------------------------------------
public class PernyataanSwitch
{
public static void main (String[ ] args)
{
int userInput; // pendefinisian variabel
userInput = 2;
switch (userInput)
{
case 1:
System.out.println ("Anda mimilih pertama");
break;
case 2:
System.out.println ("Anda mimilih kedua");
break;
case 3:
System.out.println ("Anda mimilih ketiga");
break;
default:
System.out.println ("Salah pilih");
break;
}
}
}
10.
// Nama file: PerulanganDoWhile.java
// Contoh penggunaan perulangan do-while
// -------------------------------------------------------------------------------------------
// Nama file: BreakFor.java
// Contoh penggunaan break dalam perulangan for
// -------------------------------------------------------------------------------------------
public class BreakFor
{
public static void main (String[ ] args)
{
int i; // pendefinisian variabel
for (i = 0; i < 5; i++)
{
System.out.println (i + " Program Java");
if (i == 2)
break;
}
}
}
2.
// Nama file: ContinueFor.java
// Contoh penggunaan continue dalam perulangan for
// -------------------------------------------------------------------------------------------
public class ContinueFor
{
public static void main (String[ ] args)
{
int i; // pendefinisian variabel
for (i = 0; i < 5; i++)
{
if (i == 3)
continue;
System.out.println (i + " Program Java");
}
}
}
3.
// Nama file: Faktorial.java
// Menghitung faktorial
// -------------------------------------------------------------------------------------------
public class Faktorial
{
public static void main (String[ ] args)
{
long limit = 20; // menghitung faktorial integer daeri 1 - 20
long faktorial = 1; // pendefinisian variabel faktorial
for (int i = 0; i <= limit; i++)
{
faktorial = 1;
for (int faktor = 2; faktor <= i; faktor ++)
faktorial *= faktor;
System.out.println (i + "!" + " adalah " + faktorial);
}
}
}
4.
// Nama file: PernyataanIf.java
// Contoh penggunaan pernyataan if sederhana
// -------------------------------------------------------------------------------------------
public class PernyataanIf
{
public static void main (String[ ] args)
{
int nilai = 70; // pendefinisian variabel
if (nilai >= 60)
System.out.println ("Nilai = " + nilai + " Lulus ujian");
}
}
5.
// Nama file: PernyataanIfelse
// Contoh penggunaan pernyataan if else
// -------------------------------------------------------------------------------------------
public class PernyataanIfelse
{
public static void main (String[ ] args)
{
int pembelian = 110; // pendefinisian variabel
System.out.println ("Jumlah pembelian = " + pembelian);
if (pembelian >= 100)
System.out.println ("Diskon = 20%");
else
System.out.println ("Diskon = 5%");
}
}
6.
// Nama file: PernyataanIfelsen..java
// Contoh penggunaan pernyataan if else
// -------------------------------------------------------------------------------------------
public class PernyataanIfelsen
{
public static void main (String[ ] args)
{
int nilai; // pendefinisian variabel
nilai = 75;
System.out.println ("Nilai = " + nilai);
if (nilai >= 80)
System.out.println ("Predikat A");
else if (nilai >= 69)
System.out.println ("Predikat B");
else if (nilai >= 56)
System.out.println ("Predikat C");
else if (nilai >= 40)
System.out.println ("Predikat D");
else
System.out.println ("Predikat E");
}
}
7.
// Nama file: PernyataanIfIn.java
// Dialog box untuk input data integer
// -----------------------------------------------------------------------------------------------
import javax.swing.*;
public class PernyataanIfIn
{
public static void main (String[] args)
{
int nilai;
String bilangan = JOptionPane.showInputDialog("Masukkan nilai:");
System.out.println("Input angka: " + bilangan);
nilai = Integer.parseInt(bilangan);
if (nilai >= 60)
System.out.println ("Nilai = " + nilai + " Lulus Ujian");
System.exit(0);
}
}
8.
// Nama file: PernyataanIfNested.java
// Contoh penggunaan pernyataan bersarang
// -------------------------------------------------------------------------------------------
public class PernyataanIfNested
{
public static void main (String[ ] args)
{
int umur = 28; // pendefinisian variabel
String pendidikan = "sarjana";
System.out.println ("Umur = " + umur);
System.out.println ("Pendidikan = " + pendidikan);
if (umur <= 30);
{
if (pendidikan == "sarjana")
System.out.println ("Diterima menjadi karyawan");
}
}
}
9.
// Nama file: PernyataanSwitch.java
// Contoh penggunaan pernyataan switch
// -------------------------------------------------------------------------------------------
public class PernyataanSwitch
{
public static void main (String[ ] args)
{
int userInput; // pendefinisian variabel
userInput = 2;
switch (userInput)
{
case 1:
System.out.println ("Anda mimilih pertama");
break;
case 2:
System.out.println ("Anda mimilih kedua");
break;
case 3:
System.out.println ("Anda mimilih ketiga");
break;
default:
System.out.println ("Salah pilih");
break;
}
}
}
10.
// Nama file: PerulanganDoWhile.java
// Contoh penggunaan perulangan do-while
// -------------------------------------------------------------------------------------------
public class PerulanganDoWhile
{
public static void main (String[ ] args)
{
int i = 0; // pendefinisian variabel
do
{
System.out.println (i + " Program Java");
i = i + 1;
}
while ( i < 5);
}
}
11.
// Nama file: PerulanganFor.java
// Contoh penggunaan perulangan for
// -------------------------------------------------------------------------------------------
public class PerulanganFor
{
public static void main (String[ ] args)
{
int i; // pendefinisian variabel
for (i = 0; i < 5; i++)
{
System.out.println (i + " Program Java");
}
}
}
12.
// Nama file: PerulanganWhile.java
// Contoh penggunaan perulangan while
// -------------------------------------------------------------------------------------------
public class PerulanganWhile
{
public static void main (String[ ] args)
{
int i = 0; // pendefinisian variabel
while ( i < 5)
{
System.out.println (i + " Program Java");
i = i + 1;
}
}
}
Contoh Program Java - Bab 3
1.
// Nama file: BitwiseAnd.java
// Contoh penggunaan operator bitwise And
// -------------------------------------------------------------------------------------------
public class BitwiseAnd
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x & y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x & y = " + z);
}
}
2.
// Nama file: BitwiseOr.java
// Contoh penggunaan operator bitwise Or
// -------------------------------------------------------------------------------------------
public class BitwiseOr
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x | y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x | y = " + z);
}
}
3.
// Nama file: BitwiseXor.java
// Contoh penggunaan operator bitwise Xor
// -------------------------------------------------------------------------------------------
public class BitwiseXor
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x ^ y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x ^ y = " + z);
}
}
4.
// Nama file: Concat.java
// Contoh penggunaan operator penghubung (concatenation)
// -------------------------------------------------------------------------------------------
public class Concat
{
public static void main (String[ ] args)
{
String kata, kata1, kata2, kata3; // pendefinisian variabel
kata1 = "Bahasa ";
kata2 = "Pemrograman ";
kata3 = "Java";
kata = kata1 + kata2 + kata3;
System.out.println (kata);
}
}
5.
// Nama file: Determinan.java
// Perhitungan determinan dengan operator aritmatika
// -------------------------------------------------------------------------------------------
public class Determinan
{
public static void main (String[ ] args)
{
int a, b, c, D; // pendefinisian variabel
a = 2;
b = 3;
c = 10;
D = b * b - 4 * a * c;
System.out.print ("D = " + D);
}
}
6.
// Nama file: GeserKanan.java
// Contoh penggunaan operator bitwise geser kanan (>>)
// -------------------------------------------------------------------------------------------
public class GeserKanan
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
y = x >> 1; // geser kanan 1 bit
System.out.println ("Nilai x semula = " + x);
System.out.println ("Setelah digeser ke kanan 1 bit = " + y);
}
}
7.
// Nama file: GeserKananZ.java
// Contoh penggunaan operator bitwise geser kanan
// -------------------------------------------------------------------------------------------
public class GeserKananZ
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
String hasil = "Setelah digeser kanan 1 bit dan ditambah bit 0 = ";
y = x >>> 1;
System.out.println ("Nilai x semula = " + x);
System.out.println (hasil + y);
}
}
8.
// Nama file: GeserKiri.java
// Contoh penggunaan operator bitwise geser kiri
// ------------------------------------------------------------------------------------------------
public class GeserKiri
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
y = x << 1;
System.out.println ("Nilai x semula = " + x);
System.out.println ("Nilai x setelah digeser ke kiri 1 bit = " + y);
}
}
9.
// Nama file: IncrementDecrement.java
// Contoh penggunaan operator increment dan decrement
// -------------------------------------------------------------------------------------------
public class IncrementDecrement
{
public static void main (String[ ] args)
{
int a, b, c, d; // pendefinisian variabel
int x = 5;
int y = 10;
a = ++x;
b = x++;
c = -- y;
d = y --;
System.out.println (a);
System.out.println (b);
System.out.println (c);
System.out.println (d);
}
}
10.
// Nama file: KonversiTemperatur.java
// Input temperatur Celcius, kemudian dikonvesi ke Reamur dan Fahrenheit
// ---------------------------------------------------------------------------------------
import javax.swing.*;
public class KonversiTemperatur
{
public static void main (String[ ] args)
{
double tempC, tempR, tempF;
String bilangan = JOptionPane.showInputDialog("Input Celcius:");
System.out.println("Input angka: " + bilangan);
tempC = Double.parseDouble(bilangan);
tempR = tempC * 4 / 5 ;
tempF = tempC * 9 / 5 + 32.0;
System.out.println ("Temperatur Celcius = " + tempC);
System.out.println ("Temperatur Reamur = " + tempR);
System.out.println ("Temperatur Fahrenheit = " + tempF);
System.exit(0);
}
}
11.
// Nama file:Logika.java
// Contoh penggunaan operator logika
// -------------------------------------------------------------------------------------------
public class Logika
{
public static void main (String[ ] args)
{
int x = 5; // pendefinisian variabel
int y = 3;
int z = 1;
boolean nilai;
System.out.println ("x = 5, y = 3, z = 1");
nilai = (x > y && z == 1);
System.out.println ("x > y && z == 1 " + nilai);
nilai = (x > y || z > 5);
System.out.println ("x > y || z > 5 " + nilai);
nilai = ( ! (z == 1));
System.out.println ("! (z == 1)) " + nilai);
}
}
12.
// Nama file: Modulus.java
// Penggunaan operator modulus (sisa pembagian)
// -------------------------------------------------------------------------------------------
public class Modulus
{
public static void main (String[ ] args)
{
int a, b; // pendefinisian variabel
double c, d;
a = 9 % 2;
b = 6 % 3;
c = 9.7 % 2;
d = 6 % 3.2;
System.out.println ("9 modulus 2 hasilnya adalah = " + a);
System.out.println ("6 modulus 3 hasilnya adalah = " + b);
System.out.println ("9.7 modulus 2 hasilnya adalah = " + c);
System.out.println ("6 modulus 3.2 hasilnya adalah = " + d);
}
}
13.
// Nama file: Prioritas.java
// Contoh penggunaan operator sehubungan prioritasnya
// ------------------------------------------------------------------------------------------
public class Prioritas
{
public static void main (String[ ] args)
{
int x, y, z; // pendefinisian variabel
x = 4 + 3 * 5;
y = 4 * 3 % 5;
z = 10 / (5 - 3);
System.out.println (x);
System.out.println (y);
System.out.println (z);
}
}
14.
// Nama file: Relasi.java
// Contoh penggunaan operator relasional
// -------------------------------------------------------------------------------------------
public class Relasi
{
public static void main (String[ ] args)
{
boolean nilai; // pendefinisian variabel
nilai = 10 > 5;
System.out.println ("10 > 5 " + nilai);
nilai = 10 < 5;
System.out.println ("10 < 5 " + nilai);
nilai = 10 == 5;
System.out.println ("10 == 5 " + nilai);
nilai = 10 != 5;
System.out.println ("10 != 5 " + nilai);
nilai = 10 <= 5;
System.out.println ("10 <= 5 " + nilai);
nilai = 10 >= 5;
System.out.println ("10 >= 5 " + nilai);
}
}
// Nama file: BitwiseAnd.java
// Contoh penggunaan operator bitwise And
// -------------------------------------------------------------------------------------------
public class BitwiseAnd
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x & y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x & y = " + z);
}
}
2.
// Nama file: BitwiseOr.java
// Contoh penggunaan operator bitwise Or
// -------------------------------------------------------------------------------------------
public class BitwiseOr
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x | y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x | y = " + z);
}
}
3.
// Nama file: BitwiseXor.java
// Contoh penggunaan operator bitwise Xor
// -------------------------------------------------------------------------------------------
public class BitwiseXor
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y = 35;
int z;
z = x ^ y;
System.out.println ("Nilai x = " + x);
System.out.println ("Nilai y = " + y);
System.out.println ("x ^ y = " + z);
}
}
4.
// Nama file: Concat.java
// Contoh penggunaan operator penghubung (concatenation)
// -------------------------------------------------------------------------------------------
public class Concat
{
public static void main (String[ ] args)
{
String kata, kata1, kata2, kata3; // pendefinisian variabel
kata1 = "Bahasa ";
kata2 = "Pemrograman ";
kata3 = "Java";
kata = kata1 + kata2 + kata3;
System.out.println (kata);
}
}
5.
// Nama file: Determinan.java
// Perhitungan determinan dengan operator aritmatika
// -------------------------------------------------------------------------------------------
public class Determinan
{
public static void main (String[ ] args)
{
int a, b, c, D; // pendefinisian variabel
a = 2;
b = 3;
c = 10;
D = b * b - 4 * a * c;
System.out.print ("D = " + D);
}
}
6.
// Nama file: GeserKanan.java
// Contoh penggunaan operator bitwise geser kanan (>>)
// -------------------------------------------------------------------------------------------
public class GeserKanan
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
y = x >> 1; // geser kanan 1 bit
System.out.println ("Nilai x semula = " + x);
System.out.println ("Setelah digeser ke kanan 1 bit = " + y);
}
}
7.
// Nama file: GeserKananZ.java
// Contoh penggunaan operator bitwise geser kanan
// -------------------------------------------------------------------------------------------
public class GeserKananZ
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
String hasil = "Setelah digeser kanan 1 bit dan ditambah bit 0 = ";
y = x >>> 1;
System.out.println ("Nilai x semula = " + x);
System.out.println (hasil + y);
}
}
8.
// Nama file: GeserKiri.java
// Contoh penggunaan operator bitwise geser kiri
// ------------------------------------------------------------------------------------------------
public class GeserKiri
{
public static void main (String[ ] args)
{
int x = 133; // pendefinisian variabel
int y;
y = x << 1;
System.out.println ("Nilai x semula = " + x);
System.out.println ("Nilai x setelah digeser ke kiri 1 bit = " + y);
}
}
9.
// Nama file: IncrementDecrement.java
// Contoh penggunaan operator increment dan decrement
// -------------------------------------------------------------------------------------------
public class IncrementDecrement
{
public static void main (String[ ] args)
{
int a, b, c, d; // pendefinisian variabel
int x = 5;
int y = 10;
a = ++x;
b = x++;
c = -- y;
d = y --;
System.out.println (a);
System.out.println (b);
System.out.println (c);
System.out.println (d);
}
}
10.
// Nama file: KonversiTemperatur.java
// Input temperatur Celcius, kemudian dikonvesi ke Reamur dan Fahrenheit
// ---------------------------------------------------------------------------------------
import javax.swing.*;
public class KonversiTemperatur
{
public static void main (String[ ] args)
{
double tempC, tempR, tempF;
String bilangan = JOptionPane.showInputDialog("Input Celcius:");
System.out.println("Input angka: " + bilangan);
tempC = Double.parseDouble(bilangan);
tempR = tempC * 4 / 5 ;
tempF = tempC * 9 / 5 + 32.0;
System.out.println ("Temperatur Celcius = " + tempC);
System.out.println ("Temperatur Reamur = " + tempR);
System.out.println ("Temperatur Fahrenheit = " + tempF);
System.exit(0);
}
}
11.
// Nama file:Logika.java
// Contoh penggunaan operator logika
// -------------------------------------------------------------------------------------------
public class Logika
{
public static void main (String[ ] args)
{
int x = 5; // pendefinisian variabel
int y = 3;
int z = 1;
boolean nilai;
System.out.println ("x = 5, y = 3, z = 1");
nilai = (x > y && z == 1);
System.out.println ("x > y && z == 1 " + nilai);
nilai = (x > y || z > 5);
System.out.println ("x > y || z > 5 " + nilai);
nilai = ( ! (z == 1));
System.out.println ("! (z == 1)) " + nilai);
}
}
12.
// Nama file: Modulus.java
// Penggunaan operator modulus (sisa pembagian)
// -------------------------------------------------------------------------------------------
public class Modulus
{
public static void main (String[ ] args)
{
int a, b; // pendefinisian variabel
double c, d;
a = 9 % 2;
b = 6 % 3;
c = 9.7 % 2;
d = 6 % 3.2;
System.out.println ("9 modulus 2 hasilnya adalah = " + a);
System.out.println ("6 modulus 3 hasilnya adalah = " + b);
System.out.println ("9.7 modulus 2 hasilnya adalah = " + c);
System.out.println ("6 modulus 3.2 hasilnya adalah = " + d);
}
}
13.
// Nama file: Prioritas.java
// Contoh penggunaan operator sehubungan prioritasnya
// ------------------------------------------------------------------------------------------
public class Prioritas
{
public static void main (String[ ] args)
{
int x, y, z; // pendefinisian variabel
x = 4 + 3 * 5;
y = 4 * 3 % 5;
z = 10 / (5 - 3);
System.out.println (x);
System.out.println (y);
System.out.println (z);
}
}
14.
// Nama file: Relasi.java
// Contoh penggunaan operator relasional
// -------------------------------------------------------------------------------------------
public class Relasi
{
public static void main (String[ ] args)
{
boolean nilai; // pendefinisian variabel
nilai = 10 > 5;
System.out.println ("10 > 5 " + nilai);
nilai = 10 < 5;
System.out.println ("10 < 5 " + nilai);
nilai = 10 == 5;
System.out.println ("10 == 5 " + nilai);
nilai = 10 != 5;
System.out.println ("10 != 5 " + nilai);
nilai = 10 <= 5;
System.out.println ("10 <= 5 " + nilai);
nilai = 10 >= 5;
System.out.println ("10 >= 5 " + nilai);
}
}
Contoh Program Java - Bab 2
1.
// Nama file: DefChar.java
// Pendefinisan variabel char dan pemberian nilai variabel
// ---------------------------------------------------------------------------------------------
public class DefChar
{
public static void main (String[ ] args)
{
char kar; // pendefinisian variabel
kar = 'A'; // memberikan nilai 'A' pada variabel
System.out.print ("Karakter adalah = ");
System.out.println (kar);
kar = 70; // memberikan nilai ASCII ke variabel
System.out.print ("Karakter adalah = ");
System.out.println (kar);
}
}
// Nama file: DefChar.java
// Pendefinisan variabel char dan pemberian nilai variabel
// ---------------------------------------------------------------------------------------------
public class DefChar
{
public static void main (String[ ] args)
{
char kar; // pendefinisian variabel
kar = 'A'; // memberikan nilai 'A' pada variabel
System.out.print ("Karakter adalah = ");
System.out.println (kar);
kar = 70; // memberikan nilai ASCII ke variabel
System.out.print ("Karakter adalah = ");
System.out.println (kar);
}
}
2.
// Nama file InputData.java
// Input menggunakan keyboard
// ---------------------------------------------------------------------------------------
import java.io.*;
public class InputData
{
public static void main (String [] args) throws IOException
{
InputStreamReader reader = new InputStreamReader(System.in);
BufferedReader input = new BufferedReader(reader);
System.out.print("Masukkan kata: ");
String teks = input.readLine();
System.out.println (teks);
}
}
3.
// Nama file InputDataBox.java
// Dialog box untuk input string
// ---------------------------------------------------------------------------------------
import javax.swing.*;
public class InputDataBox
{
public static void main (String [] args)
{
String teks = JOptionPane.showInputDialog("Masukkan data:");
System.out.println(teks);
System.exit(0);
}
}
Contoh Program Java - Bab 1
1.
// Nama file: Hallo.java
// Contoh program Java
// ------------------------------------------------------------------------------------------------
public class Hallo
{
public static void main (String[ ] args)
{
System.out.println ("Selamat menggunakan Java");
}
}
// Contoh program Java
// ------------------------------------------------------------------------------------------------
public class Hallo
{
public static void main (String[ ] args)
{
System.out.println ("Selamat menggunakan Java");
}
}
2.
// Nama program : HaloJava.java
// Contoh penggunaan applet
// -----------------------------------------------------------------------------------------------
import java.awt.Graphics;
import javax.swing.*;
public class HaloJava extends javax.swing.JApplet
{
public HaloJava()
{
}
public void paint (Graphics g)
{
super.paint(g);
g.drawString("Selamat menggunakan Java!",25,25);
}
}
// Contoh penggunaan applet
// -----------------------------------------------------------------------------------------------
import java.awt.Graphics;
import javax.swing.*;
public class HaloJava extends javax.swing.JApplet
{
public HaloJava()
{
}
public void paint (Graphics g)
{
super.paint(g);
g.drawString("Selamat menggunakan Java!",25,25);
}
}
Konkurensi
Konkurensi adalah proses-proses (lebih dari satu proses) yang terjadi pada saat bersamaan. Konkurensi merupakan landasan umum perancangan sistem operasi. Proses-proses disebut konkuren jika proses-proses berada pada saat yang sama. Pada proses-proses konkuren yang berinteraksi mempunyai beberapa masalah yang harus diselesaikan:
1. Mutual Exclusion
2. Sinkronisasi
3. Deadlock
4. Startvation
A. Prinsip-prinsip Konkurensi
Konkurensi meliputi hal-hal sbb:
• Alokasi waktu pemroses untuk proses-proses
• Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
• Komunikasi antarproses
• Sinkronisasi aktivitas banyak proses.
Konkurensi dapat muncul pada konteks berbeda, antara lain:
1. Banyak aplikasi (multiple application).
Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Proses-proses dapat berasal dari aplikasi-aplikasi berbeda. Pada sistem multiprogramming bisa terdapat banyak aplikasi sekaligus yang dijalankan di sistem komputer.
2. Aplikasi terstruktur.
Perluasan prinsip perancangan modular dan pemrograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai sekumpulan proses. Dengan sekumpulan proses, maka tiap proses menyediakan satu layanan spesifik tertentu.
3. Struktur sistem operasi.
Keunggulan strukturisasi dapat juga diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai sekumpulan proses. Sistem operasi bermodelkan client/server menggunakan pendekatan ini.
4. Untuk Strukturisasi Satu Proses.
Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses.
B. Interaksi Antar Proses.
Pada sistem dengan banyak proses (kongkuren), terdapat 2 katagori interaksi, yaitu:
1. Proses-proses Saling Tidak Peduli (Independen).
Proses-proses ini tidak dimaksudkan untuk bekerja untukmencapai tujuan tertentu. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif, atau campuran keduanya.
2. Proses-proses Saling Mempedulikan Secara Tidak Langsung.
Proses-proses tidak perlu saling mempedulikan identitas proses-proses lain, tapi sama-sama mengakses objek tertentu, seperti buffer masukan/keluaran. Proses-proses itu perlu bekerja sama (cooperation) dalam memakai bersama objek tertentu.
C. Kesulitan-kesulitan yang ditimbulkan konkurensi
Masalah yang dihadapi proses-proses kongkurensi pada multiprogramming dan multiprocessing serupa, yaitu: kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beberapa kemungkinan yang terjadi tidak dapat diprediksi seperti:
1. Kecepatan proses pada sistem tergantung pada beberapa hal, antara lain:
a) Aktivitas proses-proses lain
b) Cara sistem operasi menangani interupsi
c) Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.
2. Beberapa kesulitan yang dapat muncul, di antaranya adalah:
a) Pemakaian bersama sumber daya global.
Jika dua proses menggunakan variabel global yang sama, serta keduanya membaca dan menulis variabel itu maka urutan terjadinya pembacaan dan penulisan terhadap variabel itu menjadi kritis.
b) Pengelolaan alokasi sumber daya agar optimal
Jika proses A meminta suatu kanal masukan/keluaran tertentu dan dapat terjadi kemudian proses A di suspend sebelum menggunakan kanal itu. Jika sistem operasi mengunci kanal tersebut dan orang lain tidak dapat menggunakannya, maka akan terjadi inefisiensi.
c) Pencarian kesalahan pemrograman.
Pencarian kesalahan pada pemrograman kongkuren lebih sulit dibanding pencarian kesalahan pada program-program sekuen.
3. Proses-proses konkuren mengharuskan beberapa hal yang harus ditangani, antara lain:
a) Sistem operasi harus mengetahui proses-proses yang aktif
b) Sistem operasi harus mengalokasikan dan mendealokasikan beragam sumber daya untuk tiap proses aktif. Sumber daya yang harus dikelola, antara lain:
(1) Waktu pemroses.
(2) Memori
(3) Berkas-berkas
(4) Perangkat I/O
c) Sistem operasi harus memproteksi data dan sumber daya fisik masing-masing proses dari gangguan proses-proses lain.
d) Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.
D. Pokok Penyelesaian Masalah Kongkurensi
Pada dasarnya penyelesaian masalah kongkurensi terbagi menjadi 2, yaitu:
1. Mengasumsikan adanya memori yang digunakan bersama
2. Tidak mengasumsikan adanya memori yang digunakan bersama.
Adanya memori bersama lebih memudahkan penyelesaian masalah kongkurensi. Metode memori bersama dapat dipakai untuk singleprocessor ataupun multiprocessor yang mempunyai memori bersama. Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa memori bersama atau untuk sistem tersebar.
1. Mutual Exclusion
2. Sinkronisasi
3. Deadlock
4. Startvation
A. Prinsip-prinsip Konkurensi
Konkurensi meliputi hal-hal sbb:
• Alokasi waktu pemroses untuk proses-proses
• Pemakaian bersama dan persaingan untuk mendapatkan sumber daya
• Komunikasi antarproses
• Sinkronisasi aktivitas banyak proses.
Konkurensi dapat muncul pada konteks berbeda, antara lain:
1. Banyak aplikasi (multiple application).
Multiprogramming memungkinkan banyak proses sekaligus dijalankan. Proses-proses dapat berasal dari aplikasi-aplikasi berbeda. Pada sistem multiprogramming bisa terdapat banyak aplikasi sekaligus yang dijalankan di sistem komputer.
2. Aplikasi terstruktur.
Perluasan prinsip perancangan modular dan pemrograman terstruktur adalah suatu aplikasi dapat secara efektif diimplementasikan sebagai sekumpulan proses. Dengan sekumpulan proses, maka tiap proses menyediakan satu layanan spesifik tertentu.
3. Struktur sistem operasi.
Keunggulan strukturisasi dapat juga diterapkan ke pemrograman sistem. Beberapa sistem operasi aktual yang dipasarkan dan yang sedang dalam riset telah diimplementasikan sebagai sekumpulan proses. Sistem operasi bermodelkan client/server menggunakan pendekatan ini.
4. Untuk Strukturisasi Satu Proses.
Saat ini untuk peningkatan kinerja maka satu proses dapat memiliki banyak thread yang independen. Thread-thread tersebut harus dapat bekerjasama untuk mencapai tujuan proses.
B. Interaksi Antar Proses.
Pada sistem dengan banyak proses (kongkuren), terdapat 2 katagori interaksi, yaitu:
1. Proses-proses Saling Tidak Peduli (Independen).
Proses-proses ini tidak dimaksudkan untuk bekerja untukmencapai tujuan tertentu. Pada multiprogramming dengan proses-proses independen, dapat berupa batch atau sesi interaktif, atau campuran keduanya.
2. Proses-proses Saling Mempedulikan Secara Tidak Langsung.
Proses-proses tidak perlu saling mempedulikan identitas proses-proses lain, tapi sama-sama mengakses objek tertentu, seperti buffer masukan/keluaran. Proses-proses itu perlu bekerja sama (cooperation) dalam memakai bersama objek tertentu.
C. Kesulitan-kesulitan yang ditimbulkan konkurensi
Masalah yang dihadapi proses-proses kongkurensi pada multiprogramming dan multiprocessing serupa, yaitu: kecepatan eksekusi proses-proses di sistem tidak dapat diprediksi. Beberapa kemungkinan yang terjadi tidak dapat diprediksi seperti:
1. Kecepatan proses pada sistem tergantung pada beberapa hal, antara lain:
a) Aktivitas proses-proses lain
b) Cara sistem operasi menangani interupsi
c) Kebijaksanaan penjadwalan yang dilakukan oleh sistem operasi.
2. Beberapa kesulitan yang dapat muncul, di antaranya adalah:
a) Pemakaian bersama sumber daya global.
Jika dua proses menggunakan variabel global yang sama, serta keduanya membaca dan menulis variabel itu maka urutan terjadinya pembacaan dan penulisan terhadap variabel itu menjadi kritis.
b) Pengelolaan alokasi sumber daya agar optimal
Jika proses A meminta suatu kanal masukan/keluaran tertentu dan dapat terjadi kemudian proses A di suspend sebelum menggunakan kanal itu. Jika sistem operasi mengunci kanal tersebut dan orang lain tidak dapat menggunakannya, maka akan terjadi inefisiensi.
c) Pencarian kesalahan pemrograman.
Pencarian kesalahan pada pemrograman kongkuren lebih sulit dibanding pencarian kesalahan pada program-program sekuen.
3. Proses-proses konkuren mengharuskan beberapa hal yang harus ditangani, antara lain:
a) Sistem operasi harus mengetahui proses-proses yang aktif
b) Sistem operasi harus mengalokasikan dan mendealokasikan beragam sumber daya untuk tiap proses aktif. Sumber daya yang harus dikelola, antara lain:
(1) Waktu pemroses.
(2) Memori
(3) Berkas-berkas
(4) Perangkat I/O
c) Sistem operasi harus memproteksi data dan sumber daya fisik masing-masing proses dari gangguan proses-proses lain.
d) Hasil-hasil proses harus independen terhadap kecepatan relatif proses-proses lain dimana eksekusi dilakukan.
D. Pokok Penyelesaian Masalah Kongkurensi
Pada dasarnya penyelesaian masalah kongkurensi terbagi menjadi 2, yaitu:
1. Mengasumsikan adanya memori yang digunakan bersama
2. Tidak mengasumsikan adanya memori yang digunakan bersama.
Adanya memori bersama lebih memudahkan penyelesaian masalah kongkurensi. Metode memori bersama dapat dipakai untuk singleprocessor ataupun multiprocessor yang mempunyai memori bersama. Penyelesaian ini tidak dapat digunakan untuk multiprocessor tanpa memori bersama atau untuk sistem tersebar.
Keamanan Sistem Informasi (Security Information)
KEAMANAN INFORMASI (SECURITY INFORMATION)
Keamanan sebuah informasi merupakan suatu hal yang juga harus diperhatikan, karena jika sebuah informasi dapat di access oleh orang yang tidak berhak atau tidak bertanggung jawab, maka keakuratan informasi tersebut akan di ragukan, bahkan akan menjadi sebuah informasi yang menyesatkan.
Tata kelola keamanan Informasi (Information Security Governance) adalah bagian dari tata kelola perusahaan yang memberikan arahan strategi, memastikan bahwa tujuan perusahaan tercapai, mengelola resiko, menggunakan sumber daya organisasi secara bertanggung jawab, dan mengawasi berhasil atau gagalnya program keamanan.
TUJUAN KEAMANAN INFORMASI
Sistem Keamanan Informasi (information security) memiliki empat tujuan yang sangat mendasar, yaitu :
1. Availability : Menjamin pengguna yang valid selalu bisa mengakses informasi dan sumberdaya miliknya sendiri. untuk memastikan bahwa orang-orang yang memang berhak tidak ditolak untuk mengakses informasi yang memang menjadi haknya.
2. Confidentiality : Menjamin informasi yang dikirim tersebut tidak dapat dibuka dan tidak dapat diketahui orang yang tidak berhak. sehingga upaya orang-orang yang ingin mencuri informasi tersebut akan sia-sia.
3. Integrity : Menjamin konsistensi dan menjamin data tersebut sesuai dengan aslinya. sehingga upaya orang-orang yang berusaha merubah data itu akan ketahuan dan percuma.
4. Legitimate use : Menjamin kepastian bahwa sumberdaya tidak dapat digunakan orang yang tidak berhak.
BENTUK KEJAHATAN KOMPUTER TERHADAP KEAMANAN INFORMASI
• Virus, SPAM, Penyadapan, Carding
• Denial of Services (DoS) / melumpuhkan target
• CYBER CRIME ( blue & white collar crime)
VIRUS KOMPUTER
Virus Komputer merupakan program komputer yang dapat menggandakan atau menyalin dirinya sendiri dan menyebar dengan cara menyisipkan salinan dirinya ke dalam program atau dokumen lain. Virus komputer dapat dianalogikan dengan virus biologis yang menyebar dengan cara menyisipkan dirinya sendiri ke selmakhlukhidup. Virus Komputer dapat merusak (misalnya dengan merusak data pada dokumen), membuat pengguna komputer merasa terganggu, maupun tidak menimbulkan efek sama sekali.
SPAM
Spam atau bisa juga berbentuk junk mail adalah penyalahgunaan sistem pesan elektronik untuk mengirim berita iklan dan keperluan lainnya secara massal. Umumnya, spam menampilkan berita secara bertubi-tubi tanpa diminta dan sering kali tidak dikehendaki oleh penerimanya. Pada akhirnya, spam dapat menimbulkan ketidaknyamanan bagi para pengguna situs web. Orang yang menciptakan spam elektronik disebut spammers.
Bentuk spam yang dikenal secara umum meliputi : spam suratelektronik, spam pesaninstan, spam Usenet newsgroup, spam mesinpencari informasi web (web search engine spam), spam blog, spam wiki, spam iklanbaris dan spam jejaringsosial. Beberapa contoh lain dari spam, yaitu pos-el berisi iklan, surat masa singkat (SMS) pada telepongenggam, berita dalam suatu forum kelompok warta berisi promosi barang yang tidak terkait dengan kegiatan kelompok warta tersebut, spamdexing yang menguasai suatu mesinpencari (search engine) untuk mencari popularitas bagi suatu URL tertentu, berita yang tak berguna dan masuk dalam blog, buku tamu situs web, Transmisi faks, iklan televisi & spam jaringan berbagi.
PENYADAPAN
Kejahatan PENYADAPAN lewat komputer atau PC, yang mana sasarannya adalah untuk mecuri data penting yg berhubungan dengan “online banking, money transfer, transaksi kartu kredit, online booking, rahasia perusahaan. Mengingat bahayanya, kemungkinan besar lokasi penggunaan alat penyadap ini adalah di warnet, pusat eksebisi/pameran, hotel, fasilitas internet gratis di bandara atau airport, dsb.
Untuk itu waspada dan berhati2lah jika menggunakan internet di tempat2 seperti itu jika anda ingin mengecek rekening bank online anda, transaksi kartu kredit atau booking online. Karena setelah anda selesai mengguna kannya, akan mudah bagi si penyadap untuk membuka kembali nomor rekening bank anda, dikarenakan semua data yang telah anda ketik akan tersimpan dalam “black device atau alat penyadap” tersebut.
Untuk itu waspada dan berhati2lah jika menggunakan internet di tempat2 seperti itu jika anda ingin mengecek rekening bank online anda, transaksi kartu kredit atau booking online. Karena setelah anda selesai mengguna kannya, akan mudah bagi si penyadap untuk membuka kembali nomor rekening bank anda, dikarenakan semua data yang telah anda ketik akan tersimpan dalam “black device atau alat penyadap” tersebut.
CYBER CRIME
CyberCrime merupakan bentuk-bentuk kejahatan yang ditimbulkan karena pemanfaatan teknologi internet. Cyber Crime sebagai perbuatan melawan hukum yang dilakukan dengan menggunakan internet yang berbasis pada kecanggihan teknologi komputer dan telekomunikasi.
CyberCrime merupakan Sebuah Evolusi Kejahatan “konvensional” yaitu :
Kejahatan kerah biru (blue collar crime) : Pencurian, penipuan, pembunuhan
Kejahatan kerah putih (white collar crime) : Kejahatan korporasi, kejahatan birokrat, malpraktek dll
Karakteristik Unik dari Cyber Crime
1. Ruang lingkup kejahatan
2. Sifat kejahatan
3. Pelaku kejahatan
4. Modus kejahatan
5. Jenis kerugian yang ditimbulkan
Faktor-Faktor Yang Mempengaruhi Terjadinya Cyber Crime
1) Faktor Politik
2) Faktor Ekonomi
3) Faktor Sosial Budaya
Ada beberapa aspek untuk Faktor Sosial Budaya:
1. Kemajuan Teknologi Informasi
2. Sumber Daya Manusia
3. Komunitas Baru
CYBER CRIME
JENIS-JENIS CYBER CRIME
Berdasarkan Jenis Aktivitasnya
1. Unauthorized Access.
Terjadi ketika seseorang memasuki atau menyusup ke dalam suatu system jaringan computer secara tidak sah, tanpa izin atau tanpa sepengetahuan dari pemilik system jaringan computer yang dimasukinya. Probing dan Port Scanning merupakan contoh dari kejahatan ini. Aktivitas “Port scanning” atau “probing” dilakukan untuk melihat servis-servis apa saja yang tersedia di server target.
2. Illegal Contents
Merupakan kejahatan yang dilakukan dengan memasukkan data atau informasi ke internet tentang sesuatu hal yang tidak benar, tidak etis, dan dapat dianggap melanggar hukum atau mengganggu ketertiban umum.
3. Penyebaran Virus Secara Sengaja
Penyebaran virus umumnya dilakukan dengan menggunakan email. Seringkali orang yang sistem emailnya terkena virus tidak menyadari hal ini. Virus ini kemudian dikirimkan ke tempat lain melalui emailnya. Contoh kasus : Virus Mellisa, I Love You, dan Sirca
4. Data Forgery
Kejahatan jenis ini bertujuan untuk memalsukan data pada dokumen-dokumen penting yang ada di Internet.
5. Cyber Espionage, Sabotage and Extortion
Merupakan kejahatan yang memanfaatkan jaringan internet untuk melakukan kegiatan mata-mata terhadap pihak lain dengan memasuki sistem jaringan computer pihak sasaran.
6. Cyberstalking
Dilakukan untuk mengganggu atau melecehkan seseorang dengan memanfaatkan komputer, misalnya menggunakan e-mail dan dilakukan berulang-ulang. Kejahatan tersebut menyerupai terror yang ditujukan kepada seseorang dengan memanfaatkan media internet.
7. Carding
Merupakan kejahatan yang dilakukan untuk mencuri nomor kartu kredit milik orang lain dan digunakan dalam transaksi perdagangan di internet.
8. Hacking dan Cracking
Istilah hacker biasanya mengacu pada seseorang yang mempunyai minat besar untuk mempelajari system computer secara detail dan bagaimana meningkatkan kapabilitasnya. Besarnya minat yang dimiliki seorang hacker dapat mendorongnya untuk memiliki kemampuan penguasaan sistem di atas rata-rata pengguna. Jadi, hacker memiliki konotasi yang netral. Aktivitas cracking di internet memiliki lingkungan yang sangat luas, mulai dari pembajakan account milik orang lain, pembajakan situs web, probing, menyebarkan virus, hingga pelumpuhan target sasaran.
9. Cybersquatting and Typosquatting
Merupakan kejahatan yang dilakukan dengan mendaftarkan domain nama perusahaan orang lain dan kemudian berusaha menjualnya kepada perusahaan tersebut dengan harga yang lebih mahal. Typosquatting adalah kejahatan dengan membuat domain yang mirip dengan nama domain orang lain.
10. Hijacking
Merupakan kejahatan melakukan pembajakan hasil karya orang lain. Yang paling sering terjadi adalah Software Piracy (pembajakan perangkat lunak)
11. Cyber Terorism
Suatu tindakan xybercrime termasuk cyber terorism jika mengancam pemerintah atau warganegara, termasuk cracking ke situs pemerintah atau militer.
Berdasarkan Motif Kegiatannya
1. Sebagai tindakan murni kriminal
Kejahatan yang murni merupakan tindak kriminal yang dilakukan karena motif kriminalitas. Kejahatan jenis ini biasanya menggunakan internet hanya sebagai sarana kejahatan. Contoh kejahatan semacam ini adalah Carding.
2. Cybercrime sebagai kejahatan “abu-abu”
Pada jenis kejahatan di internet yang masuk dalam “wilayah abu-abu” cukup sulit menentukan apakah itu merupakan tindakan criminal atau bukan, mengingat motif kegiatannya terkadang bukan untuk berbuat kejahatan. Contohnya adalah probing atau portscanning.
Berdasarkan Sasaran Kejahatannya
1. Menyerang Individu (Against Person)
Jenis kejahatan ini, sasaran serangannya ditujukan kepada perorangan atau individu yang memiliki sifat atau criteria tertentu sesuai tujuan penyerangan tersebut. Beberapa contoh kejahatan ini antara lain : Pornografi, Cyberstalking, Cyber Tresspass
2. Menyerang Hak Milik (Against Property)
Cybercrime yang dilakukan untuk mengganggu atau menyerang hak milik orang lain. Contoh: carding, cybersquatting, typosquatting, hijacking, data forgery
3. Menyerang Pemerintah (Against Government)
Cybercrime Against Government dilakukan dengan tujuan khusus penyerangan terhadap pemerintah
Dampak Cybercrime Terhadap Keamanan Negara
1) Kurangnya kepercayaan dunia terhadap Indonesia
2) Berpotensi menghancurkan negara
Dampak Cybercrime Terhadap Keamanan Dalam Negeri
1) Kerawanan sosial dan politik yang ditimbulkan dari Cybercrime antara lain isu-isu yang meresahkan, memanipulasi simbol-simbol kenegaraan, dan partai politik dengan tujuan untuk mengacaukan keadaan agar tercipta suasana yang tidak kondusif.
2) Munculnya pengaruh negatif dari maraknya situs-situs porno yang dapat diakses bebas tanpa batas yang dapat merusak moral bangsa.
Menuju UU Cyber Republik Indonesia : Strategi Penanggulangan Cyber Crime
1. Strategi Jangka Pendek
Penegakan hukum pidana
Mengoptimalkan UU khusus lainnya
Rekruitment aparat penegak hukum
2. Strategi Jangka Menengah
Cyber police
Kerjasama internasional
3. Strategi Jangka Panjang
Membuat UU cyber crime
Membuat perjanjian bilateral
Langganan:
Postingan (Atom)
