Kamis, 28 Mei 2009

solusi baik untuk yang malaz belajar

tip ilmu dapat, dan nilai memuaskan :

1. di kelas anda harus aktif (bertanya jika ada yang tidak di mengerti dari penjelasn dosen dan menjawab jika di tanya)

2. pulang kuliah anda harus mengulang materi yang hari ini di berikan (kerjakan tugas,latihan soal n membaca or menghafal). rutin dilakukan setiap hari!!

3. ada waktu luang anda mempersiapkan materi untuk materi ke esokan harinya.


pada saat ulangan anda tidak perlu belajar, apalagi begadang...

selamat anda suskes!!
program Pascal wong kito galo.doc

DOWNLOAD KWN

KEWARGANEGARAAN.doc

DOWNLOAD

coba aja klik di sini utk download

program C++

#include
#include

void main()
{
struct data_tanggal
{
int tanggal;
int bulan;
int tahun;
};
data_tanggal tgl1, tgl2, umur;

tgl1.tanggal = 20;
tgl1.bulan = 4;
tgl1.tahun = 1988;

tgl2.tanggal = 21;
tgl2.bulan = 1;
tgl2.tahun = 2008;

if (tgl2.tanggal < tgl1.tanggal)
{
tgl2.bulan = tgl2.bulan - 1;
tgl2.tanggal = tgl2.tanggal + 30;
}
if (tgl2.bulan < tgl1.bulan)
{
tgl2.bulan = tgl2.bulan + 12;
tgl2.tahun = tgl2.tahun -1;
}
umur.bulan = tgl2.bulan - tgl1.bulan;
umur.tanggal = tgl2.tanggal - tgl1.tanggal;
umur.tahun = tgl2.tahun - tgl1.tahun;
cout<<"Umur Sekarang = "< getch();

}

#include
using namespace std;
void main()
{
int bar, kol;

bar=12;
while (bar>=2)
{
kol=2;
while (kol<=bar)
{
cout< kol+=2;
}
cout< bar-=2;
}
cout< system("pause");
}

2 4 6 8 10 12
2 4 6 8 10
2 4 6 8
2 4 6
2 4
2

#include
using namespace std;
void main()
{
int bar, kol;

bar=1;
while (bar<=6)
{
kol=1;
while (kol<=bar)
{
cout< kol++;
}
cout< bar++;
}
cout< system("pause");
}

1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 3 4 5 6

#include
using namespace std;
void main()
{
int data[10] = {10,5,8,1,9,7,6,0,2,13};
int a, b, tmp;

for (a = 0; a <= 9; a++)
{
for (b = a+1 ; b<=9; b++)
{
if (data[a] > data[b])
{
tmp = data[a];
data[a] = data[b];
data[b] = tmp;
}
}
}
for (a = 0; a <= 9; a++)
{
cout< }
cout< system("pause");
}

0 1 2 5 6 7 8 9 10 13

#include
#include
using namespace std;
void main()
{
float potongan, bayar, harga, jumlah, total, disc;

cout<<" NOTA BELANJA\n";
cout<<"==================================\n\n\n";
cout<<"Masukan Harga = Rp. ";cin>>harga;
cout<<"Masukan Jumlah = ";cin>>jumlah;
cout<<"==================================\n";

total = harga * jumlah;

if (total < 100000)
disc = 0;
else if ((total >= 100000) && (total < 50000))
disc = 10;
else if ((total >= 500000) && (total < 1000000))
disc = 15;
else
disc = 20;

potongan = total * (disc/100);
bayar = total - potongan;


cout<<"Total Belanja = Rp "< cout<<"Discount = "< cout<<"Bayar = Rp. "< cout< system("pause");
}

Harga = ...
Jumlah = ...
Total = Rp
Diskon =
Bayar =

#include
#include
using namespace std;
void main()
{
int kuis, tugas, uts, uas, na;
char ket;


cout<<" NILAI AKHIR\n";
cout<<"==================================\n\n\n";
cout<<"Masukan Nilai Kuis = ";cin>>kuis;
cout<<"Masukan Nilai Tugas = ";cin>>tugas;
cout<<"Masukan Nilai UTS = ";cin>>uts;
cout<<"Masukan Nilai UAS = ";cin>>uas;
cout<<"==================================\n";

na = (0.1 * kuis) + (0.1 * tugas) + (0.3 * uts) + (0.5 * uas);

if (na >= 80)
ket = 'A';
else if ((na >=80 ) && (na <68))
ket = 'B';
else if ((na >=68 ) && (na <56))
ket = 'C';
else if ((na >=56 ) && (na <44))
ket = 'D';
else
ket = 'E';

cout<<"Nilai Akhir = "< cout<<"Keterangan = "< cout< system("pause");
}

Kuis = ...
Tugas = ...
Uts = ...
Uas = ...
Nilai akhir =
Keterangan =

#include
using namespace std;
void main()
{
int data[10];
int elemen, jumlah, maks, min;
float rata;
for (elemen = 0; elemen <= 9; elemen++)
{
cout<<"data Ke-"<>data[elemen];
}
system("cls");
cout<<"DATA YANG DI INPUT\n\n";
jumlah = 0;
maks = data[0];
min = data[0];
for (elemen = 0; elemen <= 9; elemen++)
{
cout<<"Data Ke-"< if (data[elemen] > maks)
maks = data[elemen];
else
maks = maks;
if (data[elemen] < min)
min = data[elemen];
else
min = min;
jumlah = jumlah + data[elemen];
}
rata = jumlah / elemen;
cout<<"Jumlah Data = "< cout<<"Rata - Rata = "< cout<<"Banyak Data = "< cout<<"DATA TERBESAR = "< cout<<"DATA TERKECIL = "< system("pause");
}

Input nilai matrik untuk output :
Jumlah =
Rata – rata =
Elemen =
Maksimum =
Minimum =

#include
using namespace std;
void main()
{
int nilai[20];
int i, pilihan, maks, min;
float rata, jumlah;
pilihan = 0;
while (pilihan <= 4)
{
system("cls");
for (i = 1; i < 20; i++)
{
cout<<"Input Nilai ke-"<>nilai[i];
}
pilihan = 0;
while (pilihan <= 4)
{
system("cls");
cout<<"MENU PILIHAN \n";
cout<<"=============================\n\n";
cout<<"1.TAMPILKAN NILAI - NILAI \n";
cout<<"2.TAMPILKAN NILAI TERBESAR \n";
cout<<"3.TAMPILKAN NILAI TERKECIL \n";
cout<<"4.TAMPILKAN RATA - RATA NILAI \n";
cout<<"5.EXIT \n\n";
cout<<"PILIHAN ANDA (1/2/3/4/5)?"; cin>>pilihan;

if (pilihan == 1)
{
system("cls");
cout<<"Nilai - Nilai Yang Telah Di Input\n";
cout<<"=================================\n\n";
for (i = 1; i < 20; i++)
{
cout<
system("pause");

}
}

else if (pilihan == 2)
{
system("cls");
cout<<"Tampilan Nilai - Nilai Tebesar\n";
cout<<"==============================\n\n";
maks = nilai[0];
for (i = 1; i < 20; i++)
{
if (nilai[i] > maks)
maks = nilai[i];
}
cout<<"DATA TERBESAR = "< cout< system("pause");
}

else if (pilihan ==3)
{
system("cls");
cout<<"Tampilan Nilai - Nilai Terkecil\n";
cout<<"==============================\n\n";
min = nilai[0];
for (i = 1; i < 20; i++)
{
if (nilai[i] < min)
min = nilai[i];
}
cout<<"DATA TERKECIL = "< cout< system("pause");
}
else if (pilihan ==4)
{
system("cls");
cout<<"Tampilan Nilai Rata - Rata\n";
cout<<"==============================\n\n";
jumlah = 0;
for (i = 0; i < 20; i++)
{
jumlah = jumlah + nilai[i];
}
rata = jumlah / 20;
cout<<"RATA - RATA DATA = "< system("pause");
}
}
}
}

Input matrik untuk tampilan sesuai dengan pilihan

#include
using namespace std;
void main()
{
int a, b, x;
x = 0;

for (a=1; a<=9; a++)
{
if (a % 2 !=0)
{
x = x + 1;
for (b=1; b<=5; b++)
{
cout< }
cout< }

}
system("pause");
}

11111
22222
33333
44444
55555

#include
using namespace std;
void main()
{
int a, b;

for (a=1; a<=5; a++)
{
for (b=1; b<=a; b++)
{
cout< }
cout< }
for (a=4; a>=1; a--)
{
for (b=1; b<=a; b++)
{
cout< }
cout< }
system("pause");
}

1
22
333
4444
55555
4444
333
22
1

#include
using namespace std;
void main()
{
int a, b, x;
x = 0;

for (a=1; a<=9; a++)
{
if (a % 2 !=0)
{
x = x + 1;
for (b=1; b<=a; b++)
{
cout< }
cout< }

}
system("pause");
}

1
222
33333
4444444
555555555
4444444
33333
222
1

#include
#include
using namespace std;
void main()
{
int a, b, x, y;
x = 0;
y = 10;

for (a=1; a<=9; a++)
{
if (a % 2 !=0)
{
x = x + 1;
cout< for (b=2; b<=a; b++)
{
cout< }
cout< y = y - 1;
}

}
y = y + 2;
for (a = 7; a>=1; a--)
{
if (a % 2 != 0)
{
x = x - 1;
cout< for (b=2; b<=a; b++)
{
cout< }
cout< y = y + 1;
}
}
system("pause");
}

1
222
33333
4444444
555555555
4444444
33333
222
1

#include
#include
using namespace std;
void main()
{
int x, y, z;

cout<<"================\n";
cout< cout<<"================\n";

x = 0;
y = 0;
do
{
z = 20 - x - y;
cout< y++;
}
while(y<=20);
system("pause");

z = 0;
x = 1;
do
{
y = 20 - x - z;
cout< x++;
}
while(x<=20);
system("pause");
z = 0;
y = 0;
do
{
x = 20 - y - z;
cout< z++;
}
while(z<=20);
system("pause");
}

Menampilakn hasil nilai X Y Z adalah 20
X Y Z
0 1 19
1 0 19
19 1 0

#include
using namespace std;

float f(float x); //float f(int x)
void main()
{
float a; //int a;
cout<<" MENGHITUNG FUNGSI F(x)= 2x^2 - 3x + 1 : \n\n";
cout<<" MASUKAN NILAI X = ";cin>>a;
cout<<" F(x) = "< system("pause");
}
float f(float x)
{ //{
return((2*(x*x)) - (3*x) + 1); //float hasil;
} //hasil = ( 2*(x*x)) - (3*x) + 1);
//return hasil;
//}

Input nilai x hasil berdasarkan F(x)
#include
using namespace std;

void cetak_bintang(int n);
void main()
{
int n;
cout<<" MASUKAN BANYAKNYA BINTANG = ";cin>>n;
cetak_bintang(n);
system("pause");
}
void cetak_bintang(int n)
{
int a, b;
for ( a = 1; a <= n; a++)
{
for ( b = 1; b <= a; b++)
cout<<" * ";
cout< }
for ( a = n - 1; a >= 1 ; a--)
{
for ( b = a; b >= 1; b--)
cout<<" * ";
cout< }
}

Function bintang berdasarkan nilai yang di input
Input nilai = 4
*
* *
* * *
* * * *
* * *
* *
*

#include
using namespace std;
void main()
{
int data[10] = {25, 10, 15, 2 ,4, 12, 11, 30, 40, 45};
int elemen, lusi , x;

//MENAMPILKAN DATA
cout<<"MASUKAN DATA YANG DICARI = ";cin>>x;
lusi = 0;
for (elemen = 0; elemen <= 9; elemen++)
{
if (data[elemen] == x)
{
lusi = !lusi;
break;
}
}
if (lusi == 0)
cout<<"DATA YANG DI CARI TIDAK ADA \n";
else
cout<<"DATA YANG DI CARI ADA PADA ELEMEN KE_ "< system("pause");
}

Mencari data

#include
using namespace std;
void main()
{
int j, k;
int data[5][3];

for (j = 0; j <= 4; j++)
{
for (k = 0; k <= 2; k++)
{
cout<<"data["<>data[j][k];
}
}
system("cls");
for (j = 0; j <= 4; j++)
{
for (k = 0; k <= 2; k++)
cout< cout< }
system("pause");
}

Input data untuk menampilkan matrik

#include
using namespace std;
void main()
{
int y, a;

cout<<"Masukan Sembarang Bilangan = ";cin>>a;
for (y=1 ; y <=a; y+=1)
{
if ((y % 3 ==0) && (y % 5 ==0))
cout< }
cout< system("pause");
}

Bilangan habis di bagi 3 dan 5

#include
#include
using namespace std;
void main()
{
int bil;
cout <<"masukan sebarang bilangan = "; cin>>bil;
cout <
if ((bil % 3 == 0) && (bil % 2 == 0))
cout < else if((bil %3==0) && (bil % 2!=0))
cout < else
cout < cout < system ("pause");
}

Input nilai untuk menyatakan bukan kelipatan

#include
using namespace std;
void main()
{
float data, jumlah, cacah ;

jumlah = 0;
data = 0;
cacah = -1;
while ( data != -1 )
{
jumlah += data;
cacah++;

cout<<"Masukan DAta Angka = ";cin>>data;
}
cout<<"Jumlah Data = "< cout<<"Banyaknya Data = "< cout<<"Rata - rata = "< system("pause");
}

Berhenti jika di input -1

#include
using namespace std;
void main()
{
int a, x, jumlah;
jumlah=0;

cout<<"Masukan Sembarang Bilangan= ";cin>>x;
for (a=1;a<=x;a++)
{
if (a==1)
{
cout< jumlah=jumlah+a;
}
else if (a % 2 != 0)
{
cout<<"+"< jumlah=jumlah+a;
}
}
cout<<"="< cout< system("pause");
}

Input nilai dan yang di jumlahkan lebih kecil dari nilai yang di input
Input nilai = 8
1 + 3 + 5 + 7 = 16

#include
using namespace std;
void main()
{
int a, b;

for (a=1; a<=5; a++)
{
for (b=1; b<=5; b++)
{
if (b==a)
cout< else
cout<<" ";
}

cout<
}
system("pause");
}

1
2
3
4
5








Selasa, 26 Mei 2009

materi_rangkaian_Digital

Gerbang logika


Gerbang AND
Gerbang AND digunkan untuk menghasilkan logika 1 jika semua masukan mempunyai logika 1, jika tidak maka akan di hasilkan logika 0.

X = A.B



INPUT OUTPUT
A B X
0 0 0
0 1 0
1 0 0
1 1 1

Gerbang NAND
Gerbang NAND akan mempunyai keluaran 0 jika semua masukan berlogika 1. sebaliknya, jika ada sebuah logika 0 pada sembarang masukan pada gerbang NAND, maka keluarannya akan bernilai 1.

X = A.B


INPUT OUTPUT
A B X
0 0 1
0 1 1
1 0 1
1 1 0

Gerbang OR
Gerbang OR akan memberikan keluaran 1 jika salah satu dari masukannya pada logika 1. jika diinginkan keluaran bernilai 0, maka semua masukan harus dalam keadaan 0.

X = A+B




INPUT OUTPUT
A B X
0 0 0
0 1 1
1 0 1
1 1 1
Gerbang NOR
Gerbang NOR akan memberikan keluaran 0 jika salah satu dari masukannya pada logika 1. jika diinginkan keluaran bernilai 1, maka semua masukan harus dalam keadaan 0.

X = A(+)B



INPUT OUTPUT
A B X
0 0 1
0 1 0
1 0 0
1 1 0

Gerbang NOT
Gerbang NOT merupakan gerbang satu masukan yang berfungsi sebagai pembalik, jika masukannya tinggi maka keluarannya rendah dan sebaliknya.

X = A



INPUT OUTPUT
A X
0 1
1 0



KESIMPULAN

XOR = OR.NAND
XNOR = AND.NOR

INPUT OUPUT
A B AND NAND OR NOR XOR XNOR
0 0 0 1 0 1 0 1
0 1 0 1 1 0 1 0
1 0 0 1 1 0 1 0
1 1 1 0 1 0 0 1


Contoh:
X = A’BC’






INPUT PROSES OUTPUT
A B C A’ C’ X
0 0 0 1 1 0
0 0 1 1 0 0
0 1 0 1 1 1
0 1 1 1 0 0
1 0 0 0 1 0
1 0 1 0 0 0
1 1 0 0 1 0
1 1 1 0 0 0


ALJABAR BOOLEAN

Hukum – hukum boolean:
1. hukum identitas
a + 0 = a
a . 1 = a

2. komplemen
a + a’ = 1
a . a = 0

3. idempoten
a + a = a
a . a = 0

4. domain
a + 1 = 1
a . 0 = 0

5. involusi
(a’)’ = a

6. penerapan / absorpsi
a + ab = a
a + (a+b) = a

7. komutatif
a + b = b + a
a . b = b . a

8. asosiatif
a + (b+c) = (a+b) + c
a . (b.c) = (a.b) . c

9. distributive
a + (b.c) = (a+b) (a+c)
a (b.c) = (ab) + (ac)

10. de morgan
(a + b)’ = a’ .b’
(a.b)’ = a’ + b’


11.hukum 0/1
0’ = 1
1’ = 0

Contoh penyederhanaan rangkaian:

F(x,y,z) = x + yz + (y’x + z)
= x + (yzy’x + yzz)
= (x + yzy’x) + yzz asosiatif
= (x + yzy’z) + yz indempoten
= x + xyy’z + yz
= x + x.0.z + yz komplemen
= (x+0) + yz dominasi
= x + yz




MAP KARNAUGH

Analisa Masalah Untuk Membuat Suatu Rancangan Logika
• Jika kita mempunyai semua gerbang bisa memenuhi semua gerbang logika yang ada pada fungsi tersebut, segeralah merancangnya. Tetapi jika kita ingin mengubah menjadi satu macam type gerbang saja seperti NAND atau NOR kita harus mengubah fungsi tersebut.
• Untuk membuat rangkaian hanya dari gerbang NAND:
Fungsi:
F = B ( A + C ) + D


Analisa Masalah Untuk Membuat Suatu Rancangan Logi
• ubahlah fungsi tersebut menjadi bentuk SOP (Sum of Product), sehingga menjadi :
F = AB + BC + D
• Double-bar fungsi tersebut menjadi :
F = AB + BC + D
• operasikan bar yang terbawah dari double bar, sehingga menjadi:
F = AB * BC * D

Analisa Masalah Untuk Membuat Suatu Rancangan Logi

• Rangkaian kombinasionalnya :





MAP KARNAUGH

Variabel Input Kombinasi Jumlah Kotak
1 21 2
2 22 4
3 23 8
4 24 16

Map Karnaugh 2 variabel Input

A
B A
0 A
1
B 0
B 1

Penggunaan Map Karnaugh

• Berdasarkan kepada letaknya angka logika “1”, maka akan didapat beberapa kemungkinan yaitu

• Pair
merupakan satu pasang angka 1 yang berdekatan baik secara horisontal maupun vertikal.
• Kuad :
merupakan kelompok yg terdiri dari 4 buah angka 1 yg tersusun berdampingan dari ujung ke ujung.
• Oktet
merupakan kelompok dari delapan angka 1 yang berdampingan.

Contoh:

Sederhanakan fungsi logika dengan 3 variabel berikut ini :



Sederhanakan fungsi logika dengan 4 variabel berikut ini :



Sederhanakan fungsi logika dengan 4 variabel berikut ini :



Untuk contoh yang lebih kompliks

1. Buatlah gerbang logika yang menghasilkan A,B,C,D,E,F, dan G dengan tiga input (x,y,z) serta sederhanakan dengan menggunakan peta karnaugh dan gambar rangkaian penyederhanaannya!




OUTPUT INPUT RANGKAIAN
x y z a b c d e f g
A 0 0 0 1 1 1 0 1 1 1
B 0 0 1 1 1 1 1 1 1 1
C 0 1 0 1 0 0 1 1 1 0
D 0 1 1 1 1 1 1 1 1 0
E 1 0 0 1 0 0 1 1 1 1
F 1 0 1 1 0 0 0 1 1 1
G 1 1 0 1 0 1 1 1 1 1

A = x’y’z’ + x’y’z + x’yz’ + x’yz + xy’z’ +xy’z + xyz’
A = y’ + yz’ + x’



B = x’y’z’ + x’y’z + x’yz
B = x’y’ + x’z



C = x’y’z’ + x’y’z + x’yz + xyz’
C = x’y’ + x’z + xyz’




D = x’y’z + x’yz’ + x’yz + xy’z’ + xyz’
D = x’z + yz’ + xy’z’


E = F = A

G = x’y’z’ + x’y’z + xy’z’ + xy’z + xyz’
G = y’ + xyz’



Gambar Rangkaian Gerbang Logika yang keluarannya A,B,C,D,E,F, dan G dengan tiga input