Analisis de Esfuerzos y Deformaciones en Vigas Usando Software Algor
Modul Algor & Str Data
-
Upload
adila-syifa-mahfudz -
Category
Documents
-
view
271 -
download
0
Transcript of Modul Algor & Str Data
-
7/25/2019 Modul Algor & Str Data
1/67
BAB IPENDAHULUAN
A. Pengertian Algoritma.
Seorang yang pertama kali akan menyelesaikanpekerjaannya dengan menggunakan jasa komputer akan selalumempunyai kesan bahwa usaha pertama yang perlu dilakukanadalah memahami bahasa komputer. Kesan ini sebenarnyakurang tepat. Hal utama adalah menemukan metodepenyelesaiannya. Apabila metodenya telah ditetapkan, usahalanjut merupakan pekerjaan rutin yaitu, menuliskan pekerjaantersebut ke dalam bahasa komputer, apakah dalam bahasaCOBOL, ASCAL, !O"#"A$, BAS%C, atau bahasa rakitan &assemblylanguage'. Bagian yang sangat penting untuk suksesnya
pekerjaan terletak pada usaha membuat urutan(langkahpenyelesaian se)ara rin)i. *saha ini disebut menulis AL+O"%#Abagi program komputer.
Algoritma yang ditulis ke dalam bahasa komputer disebut"O+"A. Kalimat -algorithm diambil dari nama seorangmatematikawan yang juga seorang astronomi berkebangsaanArab, AL/KHO0A"%1% yang hidup di abad ke 23, beliau dikenalsebagai pengarang buku matematika yang membahas manipulasiangka/angka beserta rumusan/rumusan aljabarnya.
Sekarang, algoritma baik sebagai aturan/aturan aljabar untukmenghitung angka/angka, maupun sebagai manipulasi simbol/
simbol dalam aljabar. Si4at perintah yang dapat dianggap sebagaialgoritma ditentukan oleh kelengkapan perintah tersebut. Karenakomputer bukan manusia, 4aktor ke)erdikan tidaklah dikenal.Komputer hanya mampu bekerja tidak lebih dan tidak kurangmengeksekusi program dengan menelusuri perintah/perintahyang dibuat dalam suatu program.
Defnisi AlgoritmaAlgoritma adalah urutan langkah-langkah penyelesaianmasalah yang disusun secara sistematis dan logis.
Kata Logis merupakan kata kun)i dalam Algoritma. Langkah/langkah dalam Algoritma harus logis dan harus dapat ditentukanbernilai salah atau benar.
Algoritma adalah jantung ilmu komputer atau in4ormatika.Banyak )abang ilmu komputer yang dia)u dalam terminologialgoritma. $amun jangan beranggapan algoritma selalu identikdengan ilmu komputer saja.
5alam kehidupan sehari/haripun banyak terdapat prosesyang dinyatakan dalam suatu algoritma. Cara/)ara membuat kueatau masakan yang dinyatakan dalam suatu resep juga dapat
disebut sebagai algoritma. ada setiap resep selalu ada urutanlangkah/lankah membuat masakan. Bila langkah/langkahnyatidak logis, tidak dapat dihasilkan masakan yang diinginkan. %bu/ibu yang men)oba suatu resep masakan akan memba)a satu persatu langkah/langkah pembuatannya lalu ia mengerjakan prosessesuai yang ia ba)a. Se)ara umum, pihak &benda' yangmengerjakan proses disebut pemroses &processor'. emroses
-
7/25/2019 Modul Algor & Str Data
2/67
tersebut dapat berupa manusia, komputer, robot atau alat/alatelektronik lainnya. emroses melakukan suatu proses denganmelaksanakan atau -mengeksekusi algoritma yang menjabarkanproses tersebut.
elaksanakan Algoritma berarti mengerjakan langkah/langkah di dalam Algoritma tersebut. emroses mengerjakanproses sesuai dengan algoritma yang diberikan kepadanya. 6urumasak membuat kue berdasarkan resep yang diberikankepadanya, pianis memainkan lagu berdasarkan papan not balok.Karena itu suatu Algoritma harus dinyatakan dalam bentuk yangdapat dimengerti oleh pemroses. 6adi suatu pemroses harus7
2. engerti setiap langkah dalam Algoritma8. engerjakan operasi yang bersesuaian dengan langkahtersebut.
B. Mekanisme Pelaksanan Algoritma Oleh Pemroses
Komputer hanyalah salah satu pemroses. Agar dapatdilaksanakan oleh komputer, algoritma harus ditulis dalam notasibahasa pemrograman sehingga dinamakan program. 6adiprogram adalah perwujudan atau implementasi teknis Algoritmayang ditulis dalam bahasa pemrogaman tertentu sehingga dapatdilaksanakan oleh komputer.
C. Belajar Memprogram Dan Belajar Bahasa Pemrograman
Belajar memprogram tidak sama dengan belajar bahasapemrograman. Belajar memprogram adalah belajar tentangmetodologi peme)ahan masalah, kemudian menuangkannyadalam suatu notasi tertentu yang mudah diba)a dan dipahami.Sedangkan belajar bahasa pemrograman berarti belajar memakaisuatu bahasa aturan/aturan tata bahasanya, instruksi/instruksinya, tata )ara pengoperasian compiler-nya, danmeman4aatkan instruksi/instruksi tersebut untuk membuatprogram yang ditulis hanya dalam bahasa itu saja.
D. Belajar Memprogram
Belajar memprogram . belajar bahasa pemrograman
Belajar memprogram 7 belajar tentang strategi peme)ahanmasalah, metodologi dan sistematika peme)ahan masalahkemudian menuliskannya dalam notasi yang disepakatibersama
Belajar memprogram 7 bersi4at pemahaman persoalan, analisisdan sintesis
Belajar memprogram, titik berat 7 designer program
E. Belajar Bahasa Pemrograman
Belajar bahasa pemrograman 7 belajar memakai suatu bahasapemrograman, aturan sintaks, tata)ara untuk meman4aatkaninstruksi yang spesi9k untuk setiap bahasa
Belajar bahasa pemrograman , titik berat 7 )oder
8
-
7/25/2019 Modul Algor & Str Data
3/67
. Pro!"k #ang !ihasilkan pemrogram $
rogram dengan ran)angan yang baik &metodologis, sistematis'
5apat dieksekusi oleh mesin
Ber4ungsi dengan benar Sanggup melayani segala kemungkinan masukan
5isertai dokumentasi
Belajar memprogram, titik berat 7 designer program
%A&U&
Algoritma
Aksi 7: Kejadian yang terjadi pada selang waktu terbatas &dimulai
saat #; dan berakhir pada saat #2': enghasilkan e4ek netto yang terde9nisi dengan baik dan
diren)anakanContoh $
: %bu #ati meng"pas kentang untuk mempersiapkan makanmalam &luas ruang lingkupnya'
: Karena ruang lingkup luas, maka harus dide9nisikankeadaan awal dan e4ek netto yang diren)anakan & %nitialState dan !inal State'.
: %nitial State &keadaan awal' 7 #; kentang sudah adadikantong kentang, dan ditaruh di rak dapur dimana ibu #ati
akan mengupasnya.: !inal State &keadaan akhir' 7 #2 kentang dalam keadaan
terkupas di pan)i, siap untuk dimasak dan kantongkertasnya harus dikembalikan ke rak lagi.
: Kejadian 7 urut/urutan dari beberapa aksi yang terjadise)ara berurutan.
:
-
7/25/2019 Modul Algor & Str Data
4/67
'i!ak karena ibu #ati tidak mungkin mengupas kentang yangsama dengan kemarin
&ama karena kemiripan pola yang dilakukan sebagainya.
(. Pen"lisan Algoritma
$otasi Algoritma dapat diterjemahkan ke dalam berbagaibahasa pemrograman. Analoginya sama dengan resep membuatkue. Sebuah resep dapat ditulis dalam bahasa apapun. Bahasa6epang, %nggris, eran)is, %ndonesia, dan lain sebagainya. Apapunbahasanya, kue yang dihasilkan tetap sama asalkan semuaaturan pada resep diikuti.engapa demikian = Karena setiap juru masak &sebagaipemroses' dapat melakukan operasi dasar yang sama, seperti
mengo)ok telur, menimbang berat gula, dan lain.5emikian juga halnya dengan komputer. eskipun setiapkomputer berbeda teknologinya, tetapi se)ara umum semuakomputer dapat melakukan operasi/operasi dasar dalampemrograman seperti operasi pemba)aan data, operasiperbandingan, operasi aritmatika, dan sebagainya.erkembangan teknologi komputer tidak mengubah operasi/operasi dasar it, yang berubah hanyalah ke)epatan, biaya, atautingkat ketelitian. ada sisi lain setiap program dalam bahasatingkat tinggi selalu diterjemahkan ke dalam bahasa mesinsebelum akhirnya dikerjakan oleh C*. Setiap instruksi dalam
bahasa mesin menyajikan operasi dasar yang sesuai, danmenghasilkan e4ek netto yang sama pada setiap komputer.
? 5alam )ahasa nat"ral&Bahasa %ndonesia, Bahasa %nggris,dan bahasa manusia lainnya'#api sering membingungkan &ambiguous'
? enggunakan fow chart&diagram alir'Bagus se)ara @isual akan tetapi repot kalau algoritmanyapanjang
? enggunakan )ahasa pemrogramanSulit dimengerti oleh orang yang tidak mengerti pemrograman
Contoh7: B"at se)"ah algoritma "nt"k men*etak t"lisan
+&OLO BE,&E,I- se)an#ak lima )aris !ila#ar komp"ter.
Algoritma 5alam Bahasa $atural
2' Berilah nilai jumlah )etak pertama sama dengan ; & ;'8' #ambah nilai )etak dengan satu & 2'
>' Cetak tulisan -SOLO B
-
7/25/2019 Modul Algor & Str Data
5/67
-
7/25/2019 Modul Algor & Str Data
6/67
>. Harus ditunjukkan dari mana kegiatan akan dimulai dandimana akan berakhir.
D. asing/masing kegiatan di dalam bagan alir sebaiknyadigunakan suatu kata yang mewakili suatu pekerjaan,
misalnya7- -ersiapkan dokumen- -Hitung gaji
E. asing/masing kegiatan di dalam bagan alir &fowchart' harusdalam urutan yang semestinya.
. Kegiatan yang terpotong dan akan disambung ditempat lainharus ditunjukkan dengan jelas menggunakan simbolpenghubung.
Bagan alir &fowchart' dapat digolongkan menjadi E jenis yakni7
2. Bagan alir sistem (system fowchart)8. Bagan alir dokumen (documen fowchart)>. Bagan alir skematik (scematic fowchart)D. Bagan alir program (program fowchart)E. Bagan alir proses (proses fowchart)
0. Bagan Alir stem
Bagan alir sistem &systems ow)hart' merupakan baganyang menunjukkan arus pekerjaan se)ara keseluruhan dari
sistem. Bagan ini menjelaskan urut/urutan dari prosedur/prosedur yang ada di dalam sistem.bagan alir sistemmenunjukkan apa yang dikerjakan di sistem. Bagan alir sistemdigambar dengan menggunakan sisbol/simbol yang tampaksebagai berikut7
Simbul dokumen enunjukkan dokumen input danaoutput baik untuk prosesmanual, mekanik atau komputer.
Simbol kegiatanmanual
enunjukkan pekerjaan manual
Simbol simpanan !ile non/komputer yang diarsipurut angka &numerical'
!ile non/komputer yang diarsip
urut huru4 &alphabetical'
N
A
-
7/25/2019 Modul Algor & Str Data
7/67
!ile non/komputer yang diarsipurut tanggal &cronological'
Simbol kartu plong enunjukkan input(output yangmenggunakan kartu plong&punched card'
Simbol proses enunjukkan kegiatan proses darioperasi program komputer
Simbol operasi luar enunjukkan operasi yangdilakukan di luar proses operasikomputer
Simbol pengurutandata
enunjukkan proses pengurutandata di luar proses komputer
Simbol pita magnetik enunjukkan input(outputmenggunakan pita magnetik
Simbol hardisk enunjukkan input(outputmenggunakan hardisk
Simbol diskette enunjukkan input(outputmenggunakan diskette
Simbol drum magnetik enunjukkan input(outputmenggunakan drum magnetik
ita kertas berlubang enunjukkan input(outputmenggunakan pita kertasberlubang
M
C
-
7/25/2019 Modul Algor & Str Data
8/67
Simbol keyboard enunjukkan input menggunakankeyboard
Simbol display enunjukkan output yangditampilkan di monitor
Simbol garis alir enunjukkan arus dari proses
Simbol penjelasan enunjukkan penjelasan dari
suatu proses
Simbol penghubung enunjukkan penghubung kehalaman yang masih sama atauke halaman lain
1. Bagan Alir Dok"men
Bagar alir dokumen &document fowchart' atau disebutjuga bagan alir 4ormulir &orm fowchart' merupakan baganalir yang menunjukkan arus dari laporan dan 4ormulirtermasuk tembusan/tembusannya. Bagan alir dokumen inimenggunakan simbol/simbol yang sama dengan yangdigunakan di dalam bagan alir system.
2. Bagan Alir &kematik
Bagan alir skematik &scematic fowchart' merupakanbagan alir yang mirip dengan bagan alir sistem, yaitu untukmenggambarkan prosedure di dalam sistem. erbedaannyaadalah, bagan alir skematik selain menggunakan simbol/simbol bagan alir sistem, juga menggunakan gambar/gambarkomputer ini adalah untuk memu/dahkan komunikasi kepadaorang yang kurang paham dengan simbol/simbol bagan alir.enggunaan gambar/gambar ini memudahkan untuk dipahami,tetapi sulit dan lama menggambarkannya.
3. Bagan Alir Proses
Bagan alir proses &proses ow)hart' merupakan bagan aliryang banyak digunakan di teknik industri. Bagan alir ini jugaberguna bagi analis sistem untuk menggambarkan prosesdalam suatu prosedur.
N
-
7/25/2019 Modul Algor & Str Data
9/67
4. Bagan Alir Program
Bagan alir program &program fowchart)merupakan baganyang menjelaskan se)ara rin)i langkah/langkah dari prosesprogram. Bagan alir program dibuat dengan menggunakansimbol/simbol sebagai berikut7
&IMBOL NAMA UN(&I
'E,MINA'O,ermulaan(akhir
program
(A,I& ALI,5LO6 LINE7
Arah aliran program
P,EPA,A'IONroses
inisialisasi(pemberianharga awal
P,O&E&
rosesperhitungan(prosespengolahan data
INPU'OU'PU' DA'A
roses input(outputdata, parameter,
in4ormasi
P,EDEINEDP,OCE&&
5&UBP,O(,AM7
ermulaan subprogram(proses
menjalankan subprogram
DECI&ION
erbandinganpernyataan,
penyeleksian data yangmemberikan pilihan
untuk langkahselanjutnya
ON PA(ECONNEC'O,
enghubung bagian/bagian ow)hart yang
berada pada satu
halaman
O PA(ECONNEC'O,
enghubung bagian/bagian ow)hart yangberada pada halaman
berbeda
3
-
7/25/2019 Modul Algor & Str Data
10/67
Contoh7 Bagan Alir Logika rogram untuk menghitung rata/ratasekelompok angka.
2;
Berinilaiawal#otal
Ba)a
5ata
Hitung#otal
Hitung "ata/rata
#ampilkan hasil#otal dan "ata/
rata
ulai
5atasudahhabis
Selesai
J
#
-
7/25/2019 Modul Algor & Str Data
11/67
Contoh Bagan Alir program komputer terin)i menghitung rata/rata.
BAB II
22
#otal;
%;
Ba)a
#otal#otal
%$
Cetak#otal dan
"ata
Ba)a $
"ata#otal($
% % 2
ulai
J
#
Selesai
-
7/25/2019 Modul Algor & Str Data
12/67
PEN(AN'A, PEM,O(,AMAN PA&CAL
A. Pen!ah"l"an
Selesai membuat algoritma atau bagan alir, langkahselanjutnya adalah membuat program komputer. rogram inidapat dibuat dalam bahasa pemrograman, misalnya7 Cobol,!ortran, Basi), as)al dan sebagainya. enulis program komputermerupakan bagian dari seri tahapan kerja di dalam sikluspengembangan program. *rutan dari siklus tahapan kerjapengembangan program ini adalah72. eren)anakan sistem spesi9kasi program.
#ahapan ini termasuk menjelaskan masalah dalam rumusandasarnya, ekspresi persamaan matematikanya dan bentukhasil yang diharapkan.
8. embuat prosedur logika &algoritma(bagan alir'>. embuat program berdasarkan penjelasan
algoritma(bagan alir program.D. emeriksa dan melakukan eksekusi programE. embuat dokumentasi program dan keluaran dari
eksekusi program.5i dalam tahapan, pemrogram &progammer' harus
menguasai aturan baku yang sudah merupakan standar untukberkomunikasi dengan komputer, misalnya bahasa apa yangakan digunakan, jenis komputer apa, dan peralatan lain yangakan digunakan.
Sebelum dapat menjalankan suatu program padakomputer, diperlukan persiapan menulis prosedur pekerjaan danalgoritma atau bagan alir ke dalam bahasa komputer. as)almerupakan salah satu bahasa komputer tingkat tinggi.empelajari bahasa as)al sesungguhnya merupakanpengenalan bahasa yang baru untuk tujuan mempelajari aturankonstruksi bahasa agar dapat dipakai sebagai media komunikasidengan komputer.
Kegagalan suatu program terjadi jika susunan atau aturaninstruksi yang digunakan terlalu rumit, untuk itu perlu dituliskandulu algoritma(bagan alir yang jelas dan benar. enulisan bagan
alur &ow)hart' merupakan persyaratan yang perlu gunamenghindari kesalahan dalam program. ertimbangan berikutdapat menjadi a)uan untuk penulisan program yang baik70. Program har"s m"!ah !i)a*a !an m"!ah
!ipahami.1. Men"lis kelompok perintah "nt"k sat" )agian
pen#elesaian pekerjaan !engan tata pen"lisan tertent"m"lai !ari kolom #ang )er)e!a !ari kelompok perintahlainn#a. Ini memperm"!ah "saha per)aikan apa)ilaterja!i kesalahan.
2. 'ent"kan !"l" program pen#ajian !ata
5mas"kankel"aran7 "nt"k mem"!ahkan pemeriksaan.3. Pen"lisan program se)aikn#a )er)ent"k
s")program g"na meng"rangi kem"ngkinan kesalahan.4. Usahakan program #ang si8atn#a !apat !isisipi9
sehingga pa!a per*o)aan eksek"si program akanm"!ah memeriksa )agian #ang kelir".
28
-
7/25/2019 Modul Algor & Str Data
13/67
Suatu program yang baik mampu memberikan dokumentasiprogram yang terba)a oleh pemakai lainnya. erubahan padaprogram bila diperlukan mudah dilakukan tanpa modi9kasi yangberarti atau modi9kasi total.
B. &tr"kt"r Pen"lisan Bahasa Pas*al
Struktur bahasa as)al terdiri atas bagian/bagian sebagai berikut7a. 6udul rogramb. Blo)k rogram
Bagian 5eklarasi
Bagian ernyataan
6udul rogram
Bagian 5eklarasi
Bagian pernyataan
ernyataanFernyataanF
rogram yang paling sederhana dari pas)al adalah hanya terdiridari sebuah bagian pernyataan saja &statement part' yang diawalidengan kata )adangan &reser@ed word' B
-
7/25/2019 Modul Algor & Str Data
14/67
namaprogram merupakan indikasi untuk menulis nama program,jika namaprogram disebut Contoh maka sintak dari judulprogram adalah7
P,O(,AM ContohD ,17>'
-
7/25/2019 Modul Algor & Str Data
18/67
rogram Contoh!un)tionF
!un)tion H%#*$+&A,B7%nteger'7 %ntegerFBegin
hitung 7 ABF ,H%#*$+&8,>'7>'F "ngsi Hakiki '"r)o Pas*al.
a. Operator 5asar
A,'I NO'A&Ienambahan engurangan /
erkalian Rembagian (
b. Operator embanding
OPE,A'O
,
A,'I %E&AMAAN A,I'MA'I%
Sama dengan
VW #idak samadengan
X
V Lebih ke)il dari V
W Lebih besar dari W
V Lebih ke)il atausama denga dari
Y
W Lebih besar atausama dengan dari Z
2N
-
7/25/2019 Modul Algor & Str Data
19/67
*. Operator Boolean
NO'A&I A,'IA$5 5an
O" Atau$O# bukan
!. "ngsi Hakiki.
2. !ungsi Hakiki Aritmatik
"ngsi %ata'"nt"na
n
Contoh Hasil
$ilai mutlak ABS 7ABS&/28.E'F
%7ABS&/2M'F
28.E
%2M
Ar)tangensial A"C#A$ 7A"C#A$&2.>D'F
;.83E Rpi
Cosinus COS 7COS&pi R;.E'F
;
E.D'F >E.;;
Logaritma LO+ 7L$&E'F 2.;3
Sinus S%$ 7S%$&pi R ;.M'F ;.N;3
Kwadrat S[" 7S["&>.E'F 28.8E
Akar S["# 7S["#&8E'F E
8. !ungsi Hakiki Skalar
"ngsi %ata'"nt"na
n
Contoh Hasil
$ilai lebihrendah&sebelumnya'
"
-
7/25/2019 Modul Algor & Str Data
20/67
>. !ungsi Hakiki Kon@ersi
"ngsi %ata
'"nt"nan
Contoh Hasil
Kon@ersi $ilaibilangan Bulatmenjadi karakter
CH" 7CH"&E'FACH"&NN'F
IAIAII
Kon@erasikarakter menjadibilangan bulat
O"5 7O"5&aI'FA7O"5&\I'F
3MA82
embulatan "O*$5 7"O*$5&8.EM'F
>
A7"O*$5&8.8M' A8
emenggalan #"*$C 7#"*$C&8.EM'FA7#"*$C&8.8M'F
8A8
8;
-
7/25/2019 Modul Algor & Str Data
21/67
BAB III'?PE DA'A DALAM PEM,O(,AMAN PA&CAL
5alam as)al semua perubah &@ariabel' yang akan digunakan
dalam program utama harus ditentukan &di deklarasikan' tepedatanya. enentukan tipe data suatu perubah, sekaligusmenentukan batasan nilai perubah tersebut dan jenis operasi yangbisa dilaksanakan terhadap perubah &@ariabel' tersebut. Ada > jenisdasar dari tipe data pada #urbo as)al yaitu7
2. Sederhana8. #erstruktur>. ointer
Lebih terin)i dapat dilihat pada gambar berikut7
+ambar 7 Kategorisasi tipe data pada as)al
82
Sederha ointer
Standart 5ide9nisikanpemakai
String Array "e)ord !ile
Ordinal "eal
Subrange #erbilang
Byte %nteger Char Boolean Shortint 0ord Longint
#ipe
#erstruku
-
7/25/2019 Modul Algor & Str Data
22/67
A. 'ipe Data &e!erhana
0. 'ipe Data &tan!ar
a. 'ipe Or!inal
a.0. 'ipe Data Interger
#ipe data %nteger adalah bilangan bulat atau tipe datayang nilainya tidak mempunyai titik desimal. adaas)al tipe data numeri) ada 8 yaitu %nteger dan "eal.
'#pe :angak"an NilaiByte ; s(d 88E
Shortint /28N s(d 28M
%nterger />8MN s(d >8MM0ord ; s(d EE>E
Longint /82DMDN>DN s(d 82DMDN>DM
#abel 7 #ipe 5ata %nteger dan batasan nilainya
Contoh7
rogram ContohintegerF
Gar
, J 7 %ntegerFBegin
72;FJ7REF0riteln&$ilai J 7 ,J7>'F
-
7/25/2019 Modul Algor & Str Data
23/67
a.>. #ype 5ata Boolean5ata tipe Bolean mempunyai dua nilai, yaitu #rue&2nilai binernya' dan !alse &; nilai binernya'. Gariabel
Bolean dideklarasikan menggunakan tipe dataBoolean.
Contoh7
rogram #ypeBooleanFGar lagi 7 booleanFbegin Lagi74alseF 0riteln&$ilai lagi adalah 7 ,lagi'F
i4 lagitrue then writeln&$ilai lagi benar' else writeln&$ilai lagi salah'F readlnF end.
). '#pe Data ,eal
5ata tipe "eal adalah bilangan yang berisi titik desimal
atau bilangan nyata. 5alam as)al paling sedikit harus adasatu digit sebelumnya dab sesudahnya titik desimal tidakboleh ada koma &pembatas tanda desimal adalah titikbukan koma' dan nilainya dapat positi4 atau negati4. 5alamas)al terdapat lima ma)am tipe data "eal, yaitu7 "eal,single, double, e]tended dan )omp. *ntuk jelasnya dibawahini ditunjukan batasan/batasan nilai tipe data real.
#ype Batasan $ilai Angkasigni9kan
"eal 8.3 2;3^2.M 2;N 22 : 28
Singgle 2.E 2;.D 2;N M : N5ouble E.; 2;8D^2.M 2;;N 2E : 2
-
7/25/2019 Modul Algor & Str Data
24/67
Contoh7
rogram #ype5ata"ealFGar
$ilai 7 "ealFBegin$ilai 7 22;;.EEF0riteln&$ilai yang ter)etak 7 ,nilai778'F
-
7/25/2019 Modul Algor & Str Data
25/67
Contoh 2 7
rogram #ipe5ataSubrangeF
#ype $ilai 2..DFGar
Angka7 nilaiFBegin
Angka7>F0riteln&$ilai angka 7 ,angka'F
-
7/25/2019 Modul Algor & Str Data
26/67
Contoh7
rogram #ipestringFGar
$AA 7 S#"%$+P8;QFALAA#S#"%$+F
B
-
7/25/2019 Modul Algor & Str Data
27/67
BAB I=MA&U%AN9 %ELUA,AN9 LO(I%A PE,CABAN(AN DAN
PE,ULAN(AN
A. Mas"kan !an %el"aran
Sebelum kita membuat sebuah program yang komplek ,maka terlebih dahulu kita harus memahami perintah/perintahdasar &elemen' dari #urbo as)al yang terkait dengan bagaimanamemasukan&masukan' data dan men)etak hasil &keluaran' data.erintah/perintah dasar tersebut adalah 0rite, 0riteln, "ead dan"eadln.
0. %el"aran 56rite !an 6riteln7
a. 6riteerintah untuk men)etak hasil pada layar, dan hasilnyadi)etak pada baris yang sama, bukan pada barisberikutnya.
Contoh 27rogram CobaFBegin
0rite&Aku I'F0rite&dan I'F
0rite&5iaI'F
-
7/25/2019 Modul Algor & Str Data
28/67
Contoh 27rogram CobaFBegin
0riteln&AkuI'F
0riteln&danI'F0riteln&5iaI'F'F
;Luas E;
&oal !an Pem)ahasan
8N
-
7/25/2019 Modul Algor & Str Data
29/67
0. Amir mem)eli sepat" seharga ,p. 04@.@@@9 sepat"#ang !i)eli Amir !i !iskon 0@. Berapa harga #anghar"s !i)a#ar oleh Amir.
a. Pe*ahkan Algoritma lo/*hart Programn#a.
). B"at Program Pas*aln#a.
6awab7Algoritma Nat"ral.
a. #entukan harga sepatub. #entukan diskon). Hitung otongand. Hitung Harga bayare. Cetak harga Bayar
lo/*hart 5Mas"kan !ari program7
83
ulai
Harga2E;;;;5iskon ;.2
otong5iskon RHarga /
Cetakotong danBayar
Selesai
-
7/25/2019 Modul Algor & Str Data
30/67
Program Pas*al$
rogram Latih2F*ses CrtF
Gar Harga 7 %ntegerF5iskon, otong, Bayar 7 "ealF
BeginHarga72E;;;;F5iskon7;.2Fotong75iskon R HargaFBayar7Harga : otongF0riteln&Harga Sepatu ,Harga72;'F0riteln&5iskon ,otong7N78'F
0riteln&6umlah Bayar ,Bayar72;78'F
-
7/25/2019 Modul Algor & Str Data
31/67
rogram as)al7
rogram Latih2F*ses CrtF
Gar Harga 7 %ntegerF5iskon, otong, Bayar 7 "ealF
Begin0rite&asukan harga 'Freadln&Harga'F0rite&asukan 5iskon 'Freadln&5iskon'Fotong75iskon R HargaFBayar7Harga : otongF0riteln&Harga Sepatu ,Harga72;'F0riteln&5iskon ,otong7N78'F
0riteln&6umlah Bayar ,Bayar72;78'F
-
7/25/2019 Modul Algor & Str Data
32/67
lo/*hart$
Program Pas*al$
rogram Latih8F*ses CrtFConst * 7 >;;;;FGar
$% 7 StringPEQF $ama 7 StringP2EQF *
+,#6,+K,H#,+B 7 "ealF
Begin Clrs)rF
0rite&$o. %nduk egawai 'Freadln&$%'F0rite&$ama egawai 'Freadln&$ama'F0rite&+aji okok 'Freadln&+'F#67;.2; R +F
+K7+ #6F#H7;.;E R +KF+B 7 +K : #HF0ritelnunjangan ,#672;78'F0riteln&+aji Kotor ,+K72;78'F0riteln.Hari #ua ,#H72;78'F
0riteln&+aji Bersih ,+B72;78'F
>8
ulai
* >;.;;;
Ba)an$%,$ama,+
#6 2; R ++K + #6H# E R +K+B +K / H#
Cetak +, #6,+K, H#, +B
ulai
-
7/25/2019 Modul Algor & Str Data
33/67
>
-
7/25/2019 Modul Algor & Str Data
34/67
B. Mengenal Logika Per*a)angan.
Logika per)abangan adalah proses menentukan suatukondisi atau memilih kegiatan tertentu sesuai dengan proses
logika yang benar. 5i dalam as)al proses logika per)abanganterdapat dua perintah yaitu per)abgan %! ^. #hen^ dan Case O4.
0. Logika Per*a)angan I'HEN. EL&E..
Bentuk umum7%4 Kondisi #hen ernyataan2
-
7/25/2019 Modul Algor & Str Data
35/67
1. Logika Case O8
Bentuk umum7
Case =ar O8 %on!isi0 $ Pern#ataan0< %on!isi1 $ Pern#ataan1. Cek apakah W2; maka langsung ke langkah $o. D. Cetak E. *langi ke langkah 8. Selesai
lo/*hart
Dengan orDo
rogram LA#%HA$Fuses )rtF
Gar 7%ntegerFBegin )lrs)rF
DN
ulai
;
2
W2;
Cetak
SelesaiJ
#
ulai
2
2;
Cetak
SelesaiJ
#
2
ata"
-
7/25/2019 Modul Algor & Str Data
49/67
!or 72 to 2; do Begin 0"%#'F 2.2;;.;;; 22;.;;; 2.82;.;;;D
5st2;
:a/a)$Algoritma Nat"ral $
2'. Ba)a $ilai okok #abungan & 2.;;;.;;;'8'. Lakukan pemberian nilai awal Bunga ;, Bulan ;>'. Lakukan penambahan nilai bulan plus 2D'. Cek apakah bulan W 2;, jika ya maka menuju ke langkah 2;,
jika belum lanjutkan langkah berikutmua.E'. Hitung #otal &okok bunga''. Cetak Bulan, okok, Bunga dan #otal.M'. Lakukan pemindahan nilai pokok sama dengan total &pokok
total'N'. Hitung bungan per bulan &bunga 2;Rpokok'3'. *langi langkah >2;'. Selesai pekerjaan.
lo/*hart > Program$
lo/*hart Program
rogram LatihanF*ses CrtF
Gar K, B+, #O# 7 "ealF BL 7 %ntegerF
Begin Clrs)rF0riteln&/////////////////////////////
D3
ulai
K2;;;;;
BL;,B+;
#O#;
BL BL 2#O#KB+
Cetak
BL, K,B+,#O#
BL2;
SelesaiJ#
K#O#
B+2; K
-
7/25/2019 Modul Algor & Str Data
50/67
///////////'F0riteln&Bln okok Bunga#otal 'F0riteln&/////////////////////////////
///////////'FK72;;;;;F B+7;,#O#7;F"
-
7/25/2019 Modul Algor & Str Data
51/67
BAB =MEN(ENAL 'IPE DA'A A,,A?
#ipe Array &Larik' adalah tipe data terstruktur yangmempunyai komponen dalam jumlah yang tetap dan setiapkomponen mempunyai tipe data yang sama. osisi masing/masingkomponen dalam larik &array' dinyatakan sebagai nomor indek. Larikmerupakan himpunan terurut dan indek merupakan posisi urutankompnen. Larik dalam bahasa as)al dinyatakan dengan katatuntunan A""AJ yang ditempatkan pada bagian deklarasi. 5eklarasilarik menetapkan ukuran dan jenis larik.
Salah satu struktur data yang paling banyak digunakan adalahArray. Array mengijinkan kita membuat multi elemen dangan tipelain &disebut dasar tipe data Array' dan mengakses elemen/elemen
tersebut dengan menggunakan subs)ript, dengan )ara yang samaseperti anda dapat mengakses setiap karakter pada string denganmengspesi9kasi lokasi karakter dalam string. Sebenarnya data stringdalam as)al merupakan Array dari karakter.
Bentuk umum deklarasi tipe data larik &A""AJ'
'#pe Pengenal $ Arra#tipe in!ekF o8 tipeF
ED
-
7/25/2019 Modul Algor & Str Data
55/67
6awab7
LO6CHA,' P,O(,AM
"O+"A COBAF*S
-
7/25/2019 Modul Algor & Str Data
56/67
&OAL$
2'.Buatlah suatu algoritma &!low)hart' dan program as)alnyauntuk memba)a sebuah Array kemudian men)etaknya dalam
layar nampak seperti berikut ini.
5A!#A" $%LA% *6%A$
$O $AA AHAS%S0A $L.%5 $L.S#
6L "A#A/"A#A
2 Budiman 28 8 "udiman M N 2E M.E> 0ardoyo N N 2 N
5st
$ +unawan M N 2E M.E
%eterangan.a' 6ml $ilai $ilai id $ilai S#b' "ata/rata 6ml $ilai(8
:a/a)$a. Algoritma Nat"ral
2'. esankan A""AJ sebanyak 2;;8'. Lakukan pemberian nilai ; dan 65;>'. Lakukan penambahan dengan 2D'. Ba)a $amaP]Q, $idP]Q, $ujianP]QE'. Cek apakah masih ingin isi data lagi. 6ika ya maka menuju
ke langkah >, jika tidak menuju ke langkah .'. Lakukan pemberian nilai 65N'. Lakukan pemberian nilai ;3'. Lakukan penambahan nilai dengan angka 22;'. Hitung 6umlah $ilai &6L $midP]Q $ujianP]Q'22'. Hitung "ata/rata $ilai &"A#A 6L(8'2>'. Cetak , $amaP]Q, $midP]Q, $ujianP]Q, 6L, "A#A2;'. Cek apakah 65. 6ika tidak maka menuju ke langkah 3,
jika ya selesai.
E
-
7/25/2019 Modul Algor & Str Data
57/67
). lo/*hart
*. Program
rogram CobaF*ses C"#F#ype $%LA% 2..DF
EM
*LA%
;
2
%$*# $PQ,
$%5PQ,$*6%A$PQ
LA+%
J
#
65 ;
2
6L $%5PQ$*6%A$PQ
Cetak$PQ, $%5PQ,$*6%A$PQ, 6L,
"A#A
65
S
-
7/25/2019 Modul Algor & Str Data
58/67
H*"*! S#"%$+P8EQFGA" $AA 7 A""AJP2..E;Q O! H*"*!F $2,$8 7 A""AJP2..E;Q O! $%LA%F
6L,65, 7 %$#78, 'F
-
7/25/2019 Modul Algor & Str Data
59/67
&oal$
2'.Buatlah ow)hart dan program pas)alnya untuk menyelesaikanpermasalahan dibawah ini.
#. akmur setiap bulan membuat da4tar gaji pegawai dengan4ormat )etakan sebagai berikut7
NO NAMA (OL
(A:IPO%O%
'UN:AN(AN
'O'AL
2 B*5%A$ A E;;;;; E;;;; EE;;;;8 A%" B D;;;;; 8N;;; D8N;;;
5S#
E;
%etent"an$a' +aji pokok dan #unjangan diatur sabagai berikut7
(OL (A:I PO%O% 'UN:AN(AN
A E;;.;;;,/ 2; +aji okokB D;;.;;;,/ M +aji okokC >;;.;;;,/ E +aji okok
b'. #otal +aji +aji okok #unjangan
8'. Lain halnya dengan #. andiri yang setiap bulan juga membuatda4tar gaji dengan 4ormat tampilan sebagai berikut7
DA'A, (A:I PE(A6AIP' MANDI,I &U,A%A,'A
No Nama (ol%!.Unit
Unit%erja
(ajiPokok '"njangan 'otal
:UMLAH
E3
-
7/25/2019 Modul Algor & Str Data
60/67
%etent"an$a'. *nit kerja terdiri D unit dengan kode sebagai berikut7
%o!e
Unit
Unit %erja
2 Keuangan8 Kepegawaian> emasaranD roduksi
b'.+aji okok egawai ditentukan sebagai berikut7
)'. #unjangan diatur berdasarkan Kode *nit sebagai berikut7Kode unit 2 #unjangan 2E +aji okokKode unit 8 #unjangan 28 +aji okokKode unit > #unjangan 2; +aji okokKode unit D #unjangan M +aji okok
d'. +aji #otal +aji okok #unjangan
B. A,,A? DUA DIMEN&I
Jang telah dibahas sebelumnya merupakan array yangbekerja dengan da4tar linier yang diakses dengan satu subskrip,yang disebut array satu dimensi. Array satu dimensi sebagaiitem/item kolom tunggal, yang semua itemnya bertipe sama.Kadabg/kadang kita perlu membuat struktur yang lebih komplekyang mempunyai dua dimensi yaitu berupa baris dan kolom.Sebagai )ontoh, andaikata kita akan menyimpan > tes untuk 2;;mahasiswa, kita dapat membuat tabel sebgai berikut7
;
Unit %erja %e"angan(OL (A:I PO%O%
A E;;.;;;B D;;.;;;C >;;.;;;
Unit %erja %epega/aian(OL (A:I PO%O%
A D;;.;;;B 8ME.;;;C 8;;.;;;
Unit %erja Pemasaran(OL (A:I PO%O%
A DE;.;;;B >E;.;;;C 8E;.;;;
Unit %erja Pro!"ksi(OL (A:I PO%O%
A D;;.;;;B >;;.;;;C 8;;.;;;
-
7/25/2019 Modul Algor & Str Data
61/67
#est2 #est8 #es>
ahasiswa
2
ahasiswa8
ahasiswa8
Subskrip pertama mewakili jumlah mahasiswa dan subskripkedua mewakili jumlah tes. 6ika nama arraynya #esHS, maka#esHSP2,8Q berarti mengandung nilai untuk mahasiswa pertama
tes yang kedua. #esHSP>,2' mengandung tes pertama untukmahasiswa ke/>. 5ari uraian diatas struktur data dapatdideklarasikan sebagai berikut7
'#pe Mahasis/a Arra#0..0@@90..2 o8 real
-
7/25/2019 Modul Algor & Str Data
64/67
C. A,,A? 'I(A DIMEN&I
A""AJ tiga dimensi ditentukan dengan menggunakan >indeks pada nama @ariabel elemen Array. Contoh sintk penulisan
adalah aP8,D,2Q7>82 yang artinya sebagai ekpresi angka >82ditempatkan pada posisi baris ke/8, kolom ke D, dan tingkat ke 2.Sebagai gambaran dapat dilihat tabel sebgai berikut7
Deklarasi Saria)el a a!alah se)agai )erik"t$
=ar A $ Arra#0..390..390..2 o8 real