tugas mtk atik

12
TUGAS MANDIRI AlGORITMA DAN BILANGAN BULAT MATEMATIKA DISKRIT Oleh : Sri Maryati 131510107 Dosen : Neni Marlina Purba PROGRAM STUDI SISTEM INFORMASI UNIVERSITAS PUTERA BATAM TAHUN 2013

Upload: darrell-price

Post on 26-Oct-2015

36 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: tugas mtk atik

TUGAS MANDIRI

AlGORITMA DAN BILANGAN BULAT

MATEMATIKA DISKRIT

Oleh :

Sri Maryati

131510107

Dosen : Neni Marlina Purba

PROGRAM STUDI SISTEM INFORMASI

UNIVERSITAS PUTERA BATAM

TAHUN 2013

KATA PENGANTAR

Page 2: tugas mtk atik

Puji syukur penulis panjatkan kehadirat Allah SWT atas segala limpahan rahmat, taufik serta hidayahNya, sehingga Makalah ini dapat diselesaikan dengan baik. Tidak lupa pula penulis

mengucapkan terima kasih kepada dosen pembimbing yang telah membantu dalam proses penulisan Makalah ini.

Penulis menyadari sepenuhnya bahwa terdapat banyak kekurangan dalam Makalah ini. Oleh karena itu saran dan kritik yang sifatnya membangun dari pembaca sangat diharapkan.

Akhirnya penulis berharap semoga Makalah ini dapat bermanfaat bagi pembaca, mahasiswa, peneliti untuk masa yang akan datang.

I

DAFTAR ISI

KATA PENGANTAR…………………………………………………………………………………………………………. I

Page 3: tugas mtk atik

DAFTAR ISI………………………………………………………………………………………………………….............II

BAB I. PENDAHULUAN…………………………………………………………………………………………………..

A. Latar belakang ………………………………………………………………………………………………….B. Rumusan masalah …………………………………………………………………………………………….C. Tujuan penulisan makala…………………………………………………………………………………..

II

BAB II. PEMBAHASAN……………………………………………………………………………………………………

A. Algoritma…………………………………………………………………………………………………………B. Notasi Untuk Algoritma…………………………………………………………………………………….C. Bilangan Bulat………………………………………………………………………………………………….D. Sifat Pembagian pada Bilangan Bulat………………………………………………………………….E. Teorema Euclidean…………………………………………………………………………………………….F. Pembagi Bersama Terbesar………………………………………………………………………………G. Algoritma Euclidean……………………………………………………………………………….H. Aritmetika Modulo……………………………………………………………………………………I. Bilangan prima……………………………………………………………………………………………….J. Kriptografi……………………………………………………………………………………………………K. Fungsi Hash………………………………………………………………………………………………………L. International Standard Book Number (ISBN)…………………………………………………M. Pembangkit Bilangan Acak Semu……………………………………………………………………N. Ragam Soal dan Penyelesaian..........................................................................

BAB III. PEMBAHASAN……………………………………………………………………………………………

A. Kesimpulan …………………………………………………………………………………………………..B. Saran ………………………………………………………………………………………………………….C.

II

BAB I

PENDAHULUAN

A. Latar belakang bagi sebagian orang bisa mengoprasikan komputer pada saat ini, matematika diskrit yang notabenya ada dalam ‘ilmu komputer sekalipun, tidak semua mahasiswa pandai dalam mengoprasikan ilmu matematika diskrit pada komputer, hal itu dikarenakan tidak semua orang mempunyai pemikiran yang sama.

B. Rumusan masalah

Page 4: tugas mtk atik

Berdasarkan latar belakang masalah agar penguraian makalah lebih terarah dan terfokus maka rumusan masalahnya adalah sebagai berikut Bagaimana algoritma itu dalam matematika diskrit? Bagaimana peran algoritma dalam matematika diskrit? Bagaimana menyelesaiakan soal dengan PBB? Bagaimana teorema Euclidean? Bagaimana bi’implikasi itu dalam matematika diskrit ? Bagaimana cara membuat tabel kebenaran dari bi’implikasi

C. Tujuan penulisan makala penulisan makalah ini bertujuan untuk menginformasikan kepada pembaca mengenai algoritma dan bilangan bulat.

BAB II

PEMBAHASAN

A. Algoritma

Sebuah masalah dipecahkan dengan mendeskripsikan langkah – langkah penyelesaiannya. Misalnya masalah pengurutan (sorting) berikut : diberikan sejumlah bilangan bulat, tuliskan semua bilangan bulat tersebut dalam urutan yang menarik. Metode untuk pengurutan data diskrit sudah banyak ditemukan orang. Metode pengurutan sering digambarkan dalam sejumlah langkah terbatas yang mengarah pada solusi permasalahan. Urutan langkah langkah penyelesaian masalah ini dinamakan algoritma.Algoritma adalah urutan logis langkah langkah penyelesaian masalah yang disusun secara sisttematis.

Contoh-contoh algoritma dalam kehidupan sehari-hari

Page 5: tugas mtk atik

Proses Algoritma Contoh langkah dalam Algoritma

1. Menbuat kue Resep kue Masukan telur ke dalam wadah, kocok sampai mengembang.

2. Membuat pakaian

Pola Pakaian Gunting kain dari pinggir kiri bawah kearah kanan sejauh 5 cm.

B. Notasi Untuk AlgoritmaAlgoritma dapat dituliskan dalam berbagai notasi, misalnya dalam notasi kalimat-kalimat

deskriptif seperti contoh resep masakan rendang padang.Dengan notasi bergaya kalimat ini, deskripsi setiap langkah dijelaskan dengan bahasa sehari-hari secara gamblang.Setiap langkah biasanya diawali dengan kata kerja seperti„baca‟, „hitung‟, „masukkan‟, „bagi‟, „ganti, dan sebagainya,sedangkan pernyataan bersyarat dinyatakan dengan„jika …maka…‟

Contoh :Jika kita akan menuliskan algoritma untuk mencarielemen terbesar (maksimum) dari sebuah himpunan yang beranggotakan buah bilangan bulat. Bilangan-bilangan bulat tersebut dinyatakan sebagai a1,a2,a3………..an. Elemen terbesar akan disimpan di dalam peubah (variabel) yang bernama maks. Algoritma cari Elemen Terbesar

1. Asumsikan a1 sebagai elemen terbesar sementara. Simpan a1 kedalam maks.2. Bandingkan maks dengan elemen a2. Jika a2 lebih besar dari maks, maka nilai maks

diganti dengan a2.3. Ulangin langkah 2 untuk elemen-elemen berikutnya (a3,a4,……,an ).4. Berhenti jika tidak ada lagi elemen yang dibandingan. Dalam hal ini, maks berisi nilai dari

elemen terbesar.Selaindengannotasi deskriptif , algoritma juga dapatdigambarkan dalam notasibahasa komputer (lebih tepatbahasa pemrograman), misalnya dalambahasa PascalatauBahasa C.Dalam bahasa Pascal, algoritma mencari elemen terbesar ditulispada Algoritma5.1

Procedur, Cari elemen terbesar (a:array_integer; n : integer; var maks : integer);(Mencari elemen terbesar di dalam array a (1..n). Elemen terbesar akan disimpan di dalam maks. Array_integer adalah tipe array yang sudah di definisikan di dalam program utama dengan pendeklarasian berikut : Const Nmaks = 1000; (ukuran maksimum array) Type array_integer = array (1…Nmaks) of integerVar i: integer;begin maks : = a (1) ; for i: = 2 to n do

Page 6: tugas mtk atik

if a(i) > maks than maks : = a(i) ;end;

Selain dari pada itu, ada algoritma dengan notasi pseudocode (semu) yang lebih praktis menuliskannya.Notasi ini menyerupai notasi bahasa pemrograman tingkat tinggi,khususnya Bahasa Pascal dan C, tetapi tidak direpotkan dengan tanda titik koma, indeks, format keluaran, kata-kata khusus dan lain sebagainya sebagaimana bahasa pemrograman.

Keuntungan menggunakan notasi pseudocode adalah lebih muda mengkonversinya atau mentranslasi ke bahasa pemrograman, karena terdapat korespondensi antara setiap pseudocodedengan notasi bahasa pemrograman.Berikut ini contoh algoritma mencari elemen terbesar dengan menggunakan notasi pseudocode dengan mengadopsi dalam Bahasa Pascal, tetapi tidak benar-benar mematuhi semua sintaks Pascal.ProcedureCariElemenTerbesar (input a1,a2,….an: integer,output maks : integer); ( Mencari elemen terbesar di antara elemen a1,a2,……,an.

Elementerbesar akan disimpan di dalam maks.Masukan : a1,a2,……,an. Keluaran : maks) Deklarasi i : integer Algoritma : Maks ← a : For i← 2 to n do If a1 > maks then Maks ←a1

Endif Endfor

Kata-kata yang digaris bawah adalah menyatakan kata kunci yang nantinya berpadanan dengan kata kunci pada bahasa komputer yang akan digunakan untuk mentranslasikan algoritma tersebut.

C. Bilangan bulatBilangan bulat adalah bilangan yang tidak menpunyai pecahan decimal,misalnya 8,21,8765,-34,0. Berlawanan dengan bilangan bulat adalah bilangan riil yang mempunyai titik decimal, seperti 8.0, 34.25, 0.02.

D. Sifat Pembagian Pada Bilangan Bulat

Misalkan a dan b bilangan bulat, a # 0. a habis membagi b (a divides b) jika terdapat bilangan bulat c sedemikian sehingga b = ac.Notasi : a | b jika b =ac,c € Z dan a # 0.Contoh,

Page 7: tugas mtk atik

1: 4 |12 karena 12 / 4 = 3 (bilangan bulat) aatau 12 = 4 × 3. Tetapi 4 | 13 karena 13 / 4 = 3.25 (bukan bilanagan bulat).

E. Teorema Euclidean

Misalkan m dan n bilangana bulat, n > 0. Jika m dibagi dengan n maka terdapat bilangan bulat unik q (quotient) dan r (remainder),sedemikian sehingga m = nq + r .

Dengan 0 ≤ r < n. r ≥ 0, r < 0.

Contoh,1. 1987/97 = 20, sisa 47 2. 22/3 = (-8), sisa 2 1987 = 97.20 + 47 -22 = 3.(-8) + 2 n = 97 r ≥ 0 n = 3 r ≥ 0 r = 47 r < n r = 2 r < n

F. Pembagi Bersama Terbesar

Misalkan a dan b adalah dua bilangan bulat tidak 0. Pembagi bersama terbesar (PBB) dari a dan b adalah bilangan bulat terbesar d, sedemikian sehingga d | a dan d | b. dalam hal ini kita nyata bahwa PBB (a,b) = d Contoh,

1. FPB 45 : 1,3,5,9,15,45 FPB 36 : 1,2,3,4,9,12,18,36 Faktor pembagi bersama 45 dan 36 : 1,3,9 PBB (45, 36) = 9 . 60(22×3×5)2. 5PBB = { 60. 25 } 25(52)

60 = 25.2 + 10 2 30 PBB = (25.10) 5 525 = 10.2 + 5 2 15PBB = (10.5) = 5

3 5

G. Algoritma Euclidean

Tujuan algoritma ini untuk mencari PBB dari dua buah bilangana bulat. Misalkan m dan n adalah bilangan bulat tak negatif dengan m ≥ n.misalkan r0 = m dan r1 = n . lakukan secara berturut-turut pembagian untuk memperoleh

r0 = r1q1 + r2 0 ≤ r2 ≤ r1,r1 = r2q2 + r3 0 ≤ r3 ≤ r2,

rn-2 = rn-1 qn-1 + rn 0 ≤ rn ≤ rn-1,

Page 8: tugas mtk atik

rn-1 = rnqn + 0

PBB (m, n ) = PBB (r0, r1) = PBB (r1, r2) = …… =

PBB (rn-2, rn-1) = PBB (rn-1, rn) = PBB (rn, 0) = rn

Jadi, PBB dari m dan n adalah sisa terakhir yang tidak nol dari runtunan pembagian tersebut.

Di berikan dua buah bilangan built tak negative m dan n (m ≥ n). Algoritma Euclidean berikut mencari pembagi bersama terbesar dari m dan n .

Algoritma Euclidean

1. Jika n = 0 makam adalah PBB (m, n) ;stop.

Tetapi jika n ≠ 0,

Lanjutkan ke langkah 2.

2. Bagilah m dan n dan misalkan r adalah sisanya. 3. Ganti nilai m dengan nilai n, dan nilai n dgn nilai r, lalu ulang kembali ke langkah 1.

Contoh : m = 80, n = 12 dan dipenuhi syarat m ≥ n

80 = 60. 12 + 8

12 – 1. 8 + 4

8 – 2. 4 + 0

Sisa pembagian terakhir sebelum 0 adalah 4, maka PBB (80, 12) = 4.

Relatif Prima

Dua buah bilangan bulat a dan b dikatakan relatif prima jika PBB (a, b) = 1.

Contoh 1,

20 dan 3 relatif prima sebab PBB (20, 3) = 1 7 dan 11 relatif prima karena PBB (7 , 11) = 1 20 dan 5 tidak relatif prima sebab PBB (20, 5) = 5 ≠ 1

Jika a dan b relatif prima, maka terdapat bilangan bulat m dan n sehingga ma + nb = 1

Page 9: tugas mtk atik

Contoh 2,

Bilangan 20 dan 3 adalah relatif prima karena PBB (20, 3) = 1 atau dapat di tulis

2.20 + (-13) . 3 = 1 (m = 2, n = -13)

Tetapi 20 dan 5 tidak relative prima karena PBB (20, 5) = 5 ≠ 1 sehingga 20 dan 5 tidak dapat dinyatakan dalam m . 20 + n . 5 = 1.

H. Aritmetika Modulo

Misalkan a dan m bilangan bulat ( m > 0 ) operasi a mod m ( dibaca “a modulo m”) memberiakan sisa jika a dibagi dengan m.

Notasi : a mod m = r sedemikian sehingga a = mq + r, dengan 0 ≤ r < m.

m disebut modulus atau modulo, dan hasil aritmetika modulo m terletak d dalam himpunan { 0, 1, 2, ……., m – 1 }.

Page 10: tugas mtk atik