The words you are searching are inside this book. To get more targeted content, please make full-text search by clicking here.

Ebook ini Adalah Ebook Laporan Praktikum Algoritma Dan Struktur Data

Discover the best professional documents and content resources in AnyFlip Document Base.
Search
Published by farida rustam2, 2023-01-28 22:22:52

Ebook Laporan Praktikum Algoritma Dan Struktur Data

Ebook ini Adalah Ebook Laporan Praktikum Algoritma Dan Struktur Data

Keywords: laporan praktikum algoritma dan struktur data,algoritma dan struktur data

LAPORANPRAKTIKUM ALGORITMADANSTRUKTURDATA DOSENPENGAMPU: HAIRILKURNIADISIRAJUDDINS.Kom.,M.Kom DISUSUNOLEH: NAMA :FARIDARUSTAM NPM :07352211047 FAKULTASTEKNIK PRODITEKNIKINFORMATIKA UNIVERSITASKHAIRUN TERNATE2023


2 LEMBARPENGESAHAN LaporanPraktikumAlgoritmadanStrukturDatatelahdisetujuidandisahkan ProgramStudiTeknikInformatikaUniversitasKhairunpadatanggal……. Oleh: Faridarustam 07352211047 Mengetahui, DosenMataKuliah HairilKurniadiSiranuddinS.KOM.,M.KOM NIDN:88361016


3 KATAPENGANTAR PujisukkurkamipanjatkankehadiratAllahSWT,yangatasrahmat-Nya saya dapatmenyelesaikan laporan praktikum iniguna memenuhidan mmelengkazpitugasAlgoritmadanStrukturDasar.Dalam penulisanlaporan praktikum inisayamerasamasihbanyakkekurangan-kekuranganbaikpada teknispenulisanmaupunmateri,mengingatkemampuansyayangmasih minim.Untukitukritikdansarandarisemuapihaksangatkamiharapkan demipenyempurnaanlaporanini. Dalam penulisanlaporanpraktikum inisayamenyampaikanucapan terimakasihkepadapihak-pihakyangmembantudalam menyelesaikan laporanpraktikumini,khususnyakepada: 1.Kepaddapakhairilkurniadisirajuddin,S.Kom.,M.Komselakuselaku dosen mata kuliah yang telah meluangkan waktu,tennaga dan pikiran dalam pelaksanaan bimbingan,pengarahan,dorongan dalamrangkamenyelesaikanpenysunanlaporanpraktikumini. 2.Kepadateman-temanyangmemberikanbantuandalam penulisan laporanpraktikumini 3.Dankepadasemuapihakyangtidakdaptdisebutsatu persatusatu,yangtelahmemberikanbantuan dalam penulisanlaporan praktikumini. Dengandemikiansayaberhraplaporanpraktikuminidapatbermanfaat danmenambahwawasanpembaca.dansemoogadapatbermanfaatbagi pembaca,Aamiinyarabbalalamin Ternate, 15 januari 2023


4 FaridaRustam DAFTARISI LEMBARPENGESAHAN 2 KATAPENGANTAR 3 DAFTARISI 4 DAFTARGAMBAR 5 BABI 6 Algoritmadanstrukturdata,strukturdasarC++dancontohC++ 6 1.1 Algoritma. 6 1.2.metodepenyusunanalgoritma 6 1.3.Bahasapemrograman 10 1.4.Fungsialgoritma 12 1.5Sifat-sifatalgoritma 12 1.6.Strukturdata 13 1.7Tipedata: 13 1.8Tipedatadasar 14 1.9Tipedatabentukan 15 1.0StrukturdataC++ 16 1.11StrukturdasarC++ 17 1.12.contohC++ 18 BABII 20 VARIABELDANKONSTANTA 20 2.1PENDAHULUAN 20 2.2TUJUANPRAKTIKUM 21


5 2.3LANGKAH–LANGKAHKEGIATANPRAKTIKUM 21 2.4LATIHANKEGIATANPRAKTIKUM 25 2.5STUDIKASUS 31 BABIII 55 STRUKTURDASARALGORITMA(SELECTION,LOOPING) 55 3.1PENDAHULUAN 55 3.2TUJUANPRATIKUM 56 3.3LANGKAH–LANGKAHKEGIATANPRATIKUM 56 3.4LATIHANKEGIATANPRAKTIKUM 61 3.5STUDIKASUS 64 3.6Kesimpulan:dansaran 103 BABIV 105 ARRAY 105 4.1PENDAHULUAN 105 4.2TUJUANPRAKTIKUM 105 4.3LANGKAH–LANGKAHKEGIATANPRAKTIKUM 106 4.4LATIHANKEGIATANPRAKTIKUM 110 4.5STUDIKASUS 115 4.6KESIMPULANDANSARAN 129 BABV 131 POINTER 131 5.1Pendahuluan 131 5.2TUJUANPRATIKUM 133 5.3LANGKAH–LANGKAHKEGIATANPRATIKUM 133 5.4LATIHANKEGIATANPRAKTIKUM 138 5.5STUDIKASUS 144 5.6KESIMPULANDANSARAN 151 BABVI 153


6 STACK(TUMPUKAN) 153 6.1 PENDAHULUAN 153 6.1 TUJUANPRAKTIKUM 154 6.2 LANGKAH-LANGKAHPRAKTIKUM 154 6.3 LATIHANKEGIATANPRAKTIKUM 159 6.4 STUDIKASUS 165 6.5 KESIMPULANDANSARAN 173 BABVII 176 QUEUE 176 7.1 PENDAHULUAN 176 7.2 TUJUANPRAKTIKUM 176 7.3 LANGKAH-LANGKAHPRAKTIKUM 177 7.4 LatihanKegiatanPraktikum 181 7.5 StudiKasus 190 7.6 kesimpulandansaran 202


7 DAFTARGAMBAR Gambar1.1C++ 21 Gambar2.1TampilanaplikasiDevC++ 24 Gambar2.2TampilanawalDevC++ 25 Gambar2.3Membuatprojekbaru 26 Gambar2.4StrukturcodeC++ 27 Gambar2.5Prosescompile 28 Gambar2.6ProsesPenyimpanan 29 Gambar2.7Hasilrunning 30 Gambar2.8SourcecodeLatihanC++ 32 Gambar2.9TampilanhasilrunningC++ 32 Gambar2.10StrukturcodeLatihanC++ 34 Gambar2.11TampakhasilrunningC++ 35 Gambar2.12Sourcecodenama,alamat,dansekolah 37 Gambar2.13Hasilrunningsourcecodeprogram 38 Gambar2.14StrukturLatihanC++ 41 Gambar2.15Sourcecodeluaslingkaran 45 Gambar2.16Hasilrunningluaslingkaran 46 Gambar2.17Sourcecodevolumekerucut 49 Gambar2.18Tampilanhasilrunningvolumekerucut 50 Gambar2.19Sourcecodevolumekubus 53 Gambar2.20Hasilrunningvolumekubus 54 Gambar2.21Sourcecodevolumetabung 57 Gambar2.22Hasilrunningvolumetabung 58 Gambar3.1AplikasiDevC++ 62 Gambar3.2TampilanawalDevC++ 63 Gambar3.3Mebuatproyekbaru 64 Gambar3.4StrukturCodeC++ 64


8 Gambar3.5ProsesCompile 65 Gambar3.6ProsesPenyimpanan 66 Gambar3.7Tampilanhasilrunning 67 Gambar3.8SourcecodeLatihanC++ 69 Gambar3.9HasilrunningLatihanC++ 70 Gambar3.10Sourcecodebilanganganjilgenap 73 Gambar3.11Hasilrunningbilangangenap 74 Gambar3.12Hasilrunningbilanganganjil 74 Gambar3.13Sourcecodebilanganterbesardariduabuahbilangan 77 Gambar3.14Hasilrunningbilanganterbesardariduabuahbilangan 78 Gambar3.15Sourcecodekonversinilaiangkakenilaihuruf 82 Gambar3.16Hasilrunningkonversinilaiangkakenilaihuruf 83 Gambar3.17SourcecodeMenampilkanangka1s/d10 86 Gambar3.18Hasilrunningmenampilkanangka1s/d10 87 Gambar3.19Sourcecode 88 Gambar3.20Hasilrunning 89 Gambar3.21Sourcecodeprogram 91 Gambar3.22Hasilrunningprogram 92 Gambar3.23Sourcecodeprogram 94 Gambar3.24Hasilrunningprogram 95 Gambar3.25Sourcecodeprogram 96 Gambar3.26Hasilrunningprogram 97 Gambar3.27sourcodeprogram 98 Gambar3.28hasilrunning 99 Gambar3.29sourecodeprogram 100 Gambar3.30hasilrunning 101 Gambar3.31sourcodeprogram 103 Gambar3.32hasilrunning 104 Gambar3.33sourcodeprogram 106 Gambar3.34sourcodeprogram 107 Gambar3.35sourcodeprogram 108 Gambar3.36hasilrunning 109 Gambar4.1AplikasiDevC++ 114 Gambar4.2TampilanawalDevC++ 114 Gambar4.3Membuatprojekbaru 115 Gambar4.4SourcecodeC++ 115


9 Gambar4.5Prosescompile 116 Gambar4.6Prosespenyimpanan 117 Gambar4.7Tampilanhasilrunning 117 Gambar4.8SourcecodeLatihanC++ 119 Gambar4.9TampilanhasilrunningC++ 120 Gambar4.10SourcecodeLatihanC++ 122 Gambar4.11TampilanhasilrunningC++ 122 Gambar4.12Sourcecodeprogram 125 Gambar4.13Tampilanhasilrunningprogram 126 Gambar4.14Sourcecodeprogram 129 Gambar4.15Tampilanhasilrunningprogram 130 Gambar4.16Sourcecodeprogram 133 Gambar4.17Tampilanhasilrunningprogram 134 Gambar4.18Sourcecodeprogram 137 Gambar4.19Tampilanhasilrunning 137 Gambar5.1AplikasiDevC++ 142 Gambar5.2TampilanawalDevC++ 143 Gambar5.3Mebuatproyekbaru 144 Gambar5.4StrukturCodeC++ 144 Gambar5.5ProsesCompile 145 Gambar5.6ProsesCompile 146 Gambar5.7Tampilanhasilrunning 147 Gambar5.8pointerkonstanta 148 Gambar5.9hasilrunningpointerkonstanta 149 Gambar5.10pointervariabel 152 Gambar5.11hasilrunningpointervariabel 153 Gambar5.12OperasiAritmatikaPadaPointer 156 Gambar5.13hasilrunningOperasiAritmatikaPadaPointer 157 Gambar5.14Pointerdalamarray 159 Gambar5.15hasilrunningPointerdalamarray 160 Gambar6.1TampilanaplikasiDevC++ 164 Gambar6.2TampilanawalDevC++ 165 Gambar6.3Membuatprojekbaru 166 Gambar6.4StrukturcodeC++ 167 Gambar6.5Prosescompile 167


10 Gambar6.6ProsesPenyimpanan 168 Gambar6.7Hasilrunning 168 Gambar6.8Sourcecodelatihan 173 Gambar6.9sourcecodelatihan1 174 Gambar6.10tampilanhasilrunning 174 Gambar6.11sourcecodestack 180 Gambar6.12sourcecodestack 181 Gambar6.13tampilanhasilrunningstack 181 Gambar6.14tampilanhasilrunningstack 182 Gambar7.1TampilanaplikasiDevC++ 188 Gambar7.2TampilanawalDevC++ 188 Gambar7.3Membuatprojekbaru 189 Gambar7.4struktrodeC++ 189 Gambar7.5strukturcodec++ 190 Gambar7.6strukturcodec++ 190 Gambar7.7ProsesPenyimpanan 191 Gambar7.8Hasilrunning 192 Gambar7.9StrukturProgram 198 Gambar7.10StukturProgram 199 Gambar7.11StukturProgram 199 Gambar7.12Tampilanhasilrunning 200 Gambar7.13Strukturprogram 210 Gambar7.14HasilRunning 211


11 BABI Algoritmadanstrukturdata,strukturdasarC++dancontohC++ 1.1 Algoritma. AlgoritmaadalahSecaraumum,pengertianalgoritmaadalahsuatu urutandaribeberapalangkahlogisdansistematisyangkitagunakanuntuk menyelesaikan masalah tertentu. Pendapat lain mengatakan definisi algoritmaadalahprosesatauserangkaianaturanyangharuskitaikutidalam perhitungan atau operasipemecahan masalah lainnya,terutama oleh komputer. Dengan kata lain,semua susunan logis yang berurutan berdasarkansistematikatertentudankitagunakanuntukmemecahkansuatu masalahdapatkitasebutdenganalgoritma. Biasanya algoritma kita gunakan untuk melakukan penghitungan, penalaran otomatis, serta mengolah data pada komputer dengan menggunakansoftware.Dalam algoritmaterdapatrangkaianterbatasdari beberapaintruksiuntukmenghitungsuatufungsiyangjikatereksekusidan terprosesakanmenghasilkanoutput,laluberhentipadakondisiakhiryang sudahkitatentukan.


12 1.2.metodepenyusunanalgoritma 1.kalimatdeskriptif Notasialgoritmadenganmenggunakankalimatdeskriptifdisebut juganotasialami. Notasialgoritmadeskriptifdilakukandengancara menuliskanintruksi-intruksiyangmustidilaksanakandalam bentukuntaian kalimatdeskriptifdenganmenggunakanbahasayangjelas.Notasideskriptif inidisarankanuntukalgoritmayangpendekkarenaapabilauntukalgoritma yangpanjangnotasideskriptifkurangefektif.Secaragarisbesarnotasi deskriptiftersusunatastigabagianutama,yaitu: 1.Bagian Judul,merupakan bagian yang terdiriatas nama algoritmadanpenjelasanatauspesifikasialgoritmatersebut. 2.Bagian Deklarasi,merupakan bagian untuk mendefinisikan semuanamayangdigunakanpadaalgoritmadapatberupa variabel,tipedataatau 3.Bagiandeskripsi,merupakanbagianintipadastrukturalgoritma yangberisiuraianlangka-langkapeneyelesaianmasalah. Contohpenulisanalgoritma Algoritma LuasLingkaran {Menghitungluaslingkaranuntukukuranjari-jaritertentu.Algoritma


13 menerimamasukanjari-jarilingkaran,menghitungluasnya,lalu mencetakluasnyakepirantikeluaran} Deklarasi: Jari_jari=real{tipedatabilanganpecahan} Luas=real{tipedatabilanganpecahan} PHI=3.14 Deskripsi 1.Bacajari 2.Hitungluas=PHI*jari_jari*jari_jari 3.Tampilkanluaskelayar 4.Selesai 2.Pseudecode Pseudecodemerupakancarapenulisanalgoritmayangmenyerupai bahasapemrogramantingkattinggi.Padaumumnyanotasipseudecode menggunakanbahasayangmudahdimengertisecaraumum danjugalebihringkasdaripadaalgoritma.Pseudecodeberisideskripsidari algoritmapemrogramankomputeryangmenggunakanstruktursederhana daribeberapabahasapemrogramantetapibahasatersebuthanyaditujukan agarbisaterbacadandimengertimanusia.Sehinggapseudecodetidak dipahamiolehkomputer.Supayanotasipseudecodedapatdimengertioleh


14 komputermakamustiditerjemahkankedalamsintaksbahasa pemrograman tertentu. Padanotasipseudecodetidakaturantertentuyangresmi.Disarankan untukmenggunakankatakunciyangumumdigunakansepertiif,then,else, while,do,for,repeatdanlainya.Strukturpenulisanalgoritmadengannotasi pseudeccodesecaraumumsamadengan notasideskriptif. Contoh penulisanalgoritmamenggunakannotasipseudecode. voidfunctionTikTok for(i=0;i<=100;i++){ setflagtotrue; ifiisdivisibleby3 print“Tik”; setflagtofalse; ifiisdivisibleby5 print“Tok”; setflagtofalse; ifflag,printi; printanewline; }


15 3.Flowchart Flowchartmerupakanpenulisanalgoritmadenganmenggunakan notasigrafis.Flowchartadalahbaganyangmempelihatkantahapandari suatuprogramdanhubunganantarprosesbesertapenyataannya.Ilustrasiini dinyatakandalamsimbol,setiapsimbolmempunyaimaknatertentuuntuk prosestertentu.Simbol-simbolflowchartyangumumnyadigunakanadalah simbol-simbolflowchartstandaryangdikeluarkanolehANSIdanISO. Berikutsimbol-simbolflowchartyangumumnyadigunakanbeserta contohnya: Contohpenulisanalgoritmamenggunakannotasiflowchart


16 1.3.Bahasapemrograman Bahasapemrogramanbiasanyadidasarkanmenjadi2halyaitu: Bahasapemrogramanberarasrendah(low levellanguages).Bahasaini cenderungberorientasikepadamesin,yaitubilamemakaiataumemberikan suatuperintahlebihbanyaklangsungkedalam perintahyangsudahlangsung dimengertikomputer.Denganbahasapemrogramankitabisamengetahui strukturprogram yangsedangdijalankan.Bahasapemrogramanmemiliki banyakmacamyangdapatkitagunakan. Yangtermasukdalambahasainiadalah:


17 1.Bahasamesin 2.Bahasarakitan Bahasapemrogramanberarastinggi(highlevellanguages).Dengan bahasaini,seseorangyangmemakaibahasapemrogramantidaklagiharus menerjemahkansendirikedalambahasayangdimengertikomputer,pemakai cukupmemberikansuatuperintah(biasanyadalam bahasainggris)yang sudahdimengertikomputer,Bahasainilahyangnantinyaakanmelakukan penerjemahankedalam bahasayangdimengertiolehkomputer.Bahasa pemrogramanmasuktingkatinikarenabahasatersebutmendekatibahasa manusia.Contohnyabahasabasic,Visualbasic,Pascal,Java,danPHP. Sebagian besarbahasa pemrograman digolongkan sebagaiBahasa TingkatTinggi,hanyabahasaCyangdigolongkansebagaiBahasaTingkat MenengahdanAssemblyyangmerupakanBahasaTingkatRendah.Bahasabahasayangberarastinggi,antaralain: 1.Pascal 2.Qbasic 3.Cobol Sepertidiulasdiatas,suatubahasapemrogramanyangberarastinggiselalu melakukan proses penerjemahan.Proses penerjemahan inimengubah


18 perintah yang diberikan (dalam bahasa inggris)ke dalam bahasa yang dimengertiolehkomputer(0dan1).Bahasainilahyangbiasanyadigunakan olehprogrammerkarenalebihmudahdimengerti.Prosespenerjemahanini dapatdilaksanakanoleh: 1.Interpreter,yaituPerangkatlunakyangmampumengeksekusi code program (yang ditulis oleh programmer) lalu menterjemahkannyakedalam bahasamesin,sehinggamesin melakukaninstruksiyangdimintaolehprogrammertersebut. 2.Kompiler,yaitu suatu program yang menerjemahkan bahasa program(sourcecode)kedalambahasaobjek(obyekcode). 1.4.Fungsialgoritma Padadasarnyafungsiutamadarialgoritmaadalahuntukmemecahkan suatu masalah.Lebih jelasnya,adapun beberapa fungsidan manfaat algoritmaadalahsebagaiberikut: a. Untukmembantumenyederhanakansuatuprogram yangrumitdan besar. b. Untukmemudahkandalam membuatsebuahprogram untukmasalah tertentu.


19 c. Algoritmadapatkitagunakanberkali-kaliuntukmenyelesaikansuatu permasalahan. d. Membantu memecahkan suatu permasalahan dengan logika dan sistematis. e. Untukmeminimalisirpenulisanprogramsecaraberulang-ulang. f. Agardapatmelakukanpendekatantop-downdandivideandconquer. g. Untuk memudahkan membuat program yang lebih rapih dan terstruktursehinggalebihmudahkalianpahamidankembangkan. h. Memudahkan proses modifikasipada program karena bisa kita lakukanhanyapadasatumodultanpaharusmengubahmodullainnya. i. Ketikaterjadikesalahan,algoritmadapatmembantumenemukannya karenaalurkerjayangjelas. j. Memudahkanprosesdokumentasi. 1.5Sifat-sifatalgoritma 1.Tidakmenggunakan simbolatau sintaks darisuatu bahasa pemrogramantertentu. 2.Tidaktergantikanpadasuatubahasapemrogramantertentu. 3.Notasi-notasinya dapat digunakan untuk seluruh bahasa manapun.


20 4.Algoritma dapatdigunakan untuk mempresentasikan suatu urutankejadiansecaralogisdandapatditerapkandisemua kejadiansehari-hari. 1.6.Strukturdata Strukturdataadalahsuatu koleksiataukelompokdatayangdpat di karakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.pemakaian struktur data yang tepat didalam proses pemrograman,akanmenghasilkanalgoritmayanglebihjelassehinggmenjadi program keseluruhanlebihsederhana.Dengankatalainstrukturdataadalah sebuah skema organisasi,sepertivariable dan array dan lain-lain,yang diterapkanpadadatasehinggadatadapatdiinterprestasikandansehingga operas-operasispesifikdapatdilaksanakanpadadatatersebut. Pemakain strukturdata tepatpada proses pemrograman akan menghasilkanalgoritmayanglebihjelas dantepat,sehinggamenjadikan program secara keseluruhan efesien dan sederhana. Data adalah representasidarifaktadunianyata.faktaatauketerangantentangkenyataan yang disimpan, direkam dan direpresentasikan dalam bentuk tulisan,suara,gambar,sinyalatausimbol,datamerupakansuatunilaiyangbisa dinyatakandalam bentukkonstantaatauvariabel.Konstantamenyakannilai yangtetap.sedangkanvariabelmenyatakannilaiyangberubah-ubahselama


21 eksekusiberlangsung. 1.7Tipedata: 1.Setiap data memiliki data,apakah merupakan angka bulat,angka pecahan, atau berupa karakter, dan sebagainya.jadi,,tipe data adalah pengelompokan data berdasarkan isidan sifatnya..dalam bidang informtaikatipe dataadalahjenisdatayangdapatdiolaholehcomputeruntuk memenuhikebutuhandalampemrogramancomputer. 2. Setiap variabeldan konstanta yang berada didalam kode program.sebaiknya kita tentukan dengan pasti tipe datanya.ketetetapan pemilihan tipe data pada variabelatau konstantaakansangatmenentukan pemakaisumberdaya computer(terutamamemorikomputer). 3.Salahsatutugaspentingseorangprogrameradalahmemilihtpe datayangsesuaiuntukmenghasilkanprogram yangberkinerja tinggi. 4.Secaragarisbesartipedatadapatdikategorikanmenjadi3 macam yaitu;tipedatadasar(primitivedatatype)tipedata


22 bentukan(compositedatatype)dantipedataabstrak(abstract datatype). 1.8Tipedatadasar a.Integer(bilanganbulat) Yangdimaksudbilanganbulatadalah.-1,-2,-3,0,1,2,3,4danlain-lain yangbukanmerupakanbilanganpecahan. b.Floatataudouble(real) Bilanganrealadalahbilanganyangmengandungbilanganpecahan decimal.Contoh:3.445.6.233. c.Char(karakter) Karakteradalahsemuahurufyangadadidalam alphabet,tandabaca maupunkarakterspecial.Karakterditulisdiantaradua tandapetik tunggal.contoh:’A’. d.Boolean(logika) Booleanadalahtipedatalagikayangterdiridariduapernyataanbenar atau salah.pernyataan benar biasanya ditulis true atau angka 1,sedangkanpernyaansalahditulisfalseatauangka


23 0.sedangkan operasiaritmatika yang umum digunakan adalah or,not,and,danxor. 1.9Tipedatabentukan a. Tipedatabentukanatautipedatakompositadalahtipedatayang dibentuk daritipe data dasardengan maksud mempermudah pekerjaanprogrammer. b.Yang masukan dalam tipedatabentukan adalah array,string, record,union,structdanlain-lain. c.Yangmasukdalam tipebentukanadalah:mempermudahproses pemrograman,memperemudah dalam penambahan variabel,mempermudapengelompokandatasehinggalebihteratur. Tipedataabstrak a.Tipedataabstrakatauyangdikenalsebagaiabstractdatatypeadalah modelmatematikadariobjekdatayangmenyempurnakantipedata dengancaramengaitkandenganfungsi-fungsiyangberoperasipada datayangbersangkutan. b.Tipedataabastrakadalatipedatayangdidefinisikanprogram untuk


24 suuatu keperluan tertentu yang tidak memungkinkan untuk mendeklarasikan daritipe data yang sudah ada.contoh tipedata absrakadalahstack,queue,list,tree,graph,danlain-lain. c.Struktur data hanya memperlihatkan bagaimana data-data diorganisir,sedangkan tipe data abstrak mengemas strukturdata tertentusekaligsdenganoperasi-operasiyangdapatdigunakanooada strukturdatatersebut. d.Dengandemikian,definisiumum tentang tipedataabstrakdapat dipahamibahwatipedataabstrakstrukturdatayangmengandung operasi-operasiatauaturan-aturantertentu. 1.10StrukturdataC++ 1.SejarahC++ C++adalahpengembangandaribahasac,yangmerupakan pengembangandariduabahasapemrogramanduabahasagenerasi sebelumnya,yaituBCPLdanBBCPL dibuatpadatahun1967oleh martinRichardssebagaibahasauntukmenulissystem operasidan compiler. BahasaCdikembangdaribahasaBolehdenniserachiedibell


25 labotariesdanpadaawalnyadiimplementasipadacomputer DEC PDP-11padatahun1972.Cmenggunakanbanyakkonseppenting dariBCPLdanBsekaligustambahanjenis-jenisdatafiturlainnya. C++adalahpenambahandaridikembangkanolehbarnestroustup padaawaldecade1980andibelllaboratoriesC++memberikan tambahanfituryangmeningkatkankekuatanbahasa C,danyang lebihpentinglagi,kemampuauntukpemrogramanberbasicobjek (objectorientedprograming). 2. KelebihanC++ a.BahasaC++tersediahamperdisemuacomputer. b.KodebahasaC/C++sifatnyaadalahportabledanfleksibel untuksemuajeniscomputer. c.ProsesexecutableprogrambahasaC/C++lebihcepat. d.Dukunganpustakayangbanyak e.Cadalahbahasayangterstruktur f.C++ juga sudah mendukung OOP( objek oriented programing)


26 1.11.StrukturdasarC++ a.Program bahasa C++ tidakmengenalaturan penulisan di kolom/baris tertentu,jadibisa dimulaidarikolom/baris manapun. b.Namundemikian,untukmempermudapembacaanprogram dan untuk keperluan dokumentasi,sebaiknya penulisan program dibahasaC/C++diatursedemikianrupasehingga mudadanenakdibaca. c.Berikancontohpenulisanprogrambahasac/c++ #include<header> Voidmaint() { deklarasivariabel; deklarasikonstanta; perintahperintah; //komentar


27 } 1.12.contohC++ Gambar1.1C++


28


29 LAPORANPRAKTIKUM ALGORITMADANSTRUKTURDATA NAMA :FARIDARUSTAM NPM :07352211047 FAKULTASTEKNIK PRODITEKNIKINFORMATIKA UNIVERSITASKHAIRUN TERNATE2022


30 BABII VARIABELDANKONSTANTA 2.1PENDAHULUAN Dalam prosespemrogramantipedatabiasadigunakanuntuk mendefinisikansuatuvariabelataukonstanta.Variabeladalahsuatumemori yangdialokasikandengannamatertentudanhanyabisamenampungdata sesuaidengantipeyangditentukan.Sifatdarivariabeladalahnilaiyang disbandingakanmudahdiubahsesuaidenganprosesyangterjadidanuntuk konstantasendiriadalahsuatumemoriyangdialokasikandengannama tertentuyangberisisuatunilaiyangmemilikisifattetapyangtidakakanbisa berubah. Variabelataupeubahadalahobjekyangnilainyadapatberubah– ubah dalam sebuahprogram padasaatsebuahvariabeldideklarasikan. Program “Memesan”tempatdenganukurantertentu(Sesuaitipedatanya) pada memoriuntuk menyimpan nilaidarivariabeltersebutpada saat mendeklarasikansebuahvariabel.Pemrogramanharusmenyebutkannama variabeldantipedatadarivariabeltersebut.Berbedadengankonstantayang nilainyatetapdantidakbisadiubah–ubah.


31 Konstanta yang bersifatkonstan atau tetap,artinya nilaidari konstantadidalamprogramtidakdapatdiubahataubersifattetap.Konstanta jugaseringdianggapsepertivariabel,namunnilainyatetapatautidakdapat diubah–ubah. 2.2TUJUANPRAKTIKUM a.Mempraktekkanvariabeldankonstanta b.MembuatfilekerjadenganbahasaC++ c.Memulaimembuatprogram baru,meng-compile,menyimpan,dan menjalankanprogramyangtelahdibuat d.Memanggil/membukakembaliprogramyangtelahdisimpan e.Membuatprogrammenjadiprogramyangexecute 2.3LANGKAH–LANGKAHKEGIATANPRAKTIKUM a.BukalahaplikasiDevC++melaluistartmenu


32 Gambar2.1TampilanaplikasiDevC++ b.Tampilanawaltampaksepertigambardibawahini: Gambar2.2TampilanawalDevC++ c.Buatlahprogrambarudengancarafile-new-sourceataugunakanCtrl–


33 Natausepertipadagambardibawahini: Gambar2.3Membuatprojekbaru d.Ketiksourcecodeprogramnyasepertigambardibawahini:


34 Gambar2.4StrukturcodeC++ e.Setelahmenulissourcenya,tekancompileandrunsepertigambardi bawahini:


35 Gambar2.5Prosescompile f.Akanmunculdialoguntukmenyimpanprogram.Berikannamasesuai dengankeinginankalian.Missal“VariabeldanKonstanta”kemudian savedenganekstensi“Cpp”.


36 Gambar2.6ProsesPenyimpanan Setelah klik save,akan munculjendela yang menampakkanhasilprogram menghitungluas,keliling,danjari–jari lingkaranyangtelahdibuat.


37 Gambar2.7Hasilrunning g.Andatelahberhasilmembuatprogram menghitungluas,keliling,dan jari–jarilingkarandenganbahasapemrogramanC++menggunakan DevC++. 2.4LATIHANKEGIATANPRAKTIKUM a.Latihan1 Buatlahprogram barudengancarafile-new-sourceataugabunganCtrl –Nkemudianketiksourcecodeprogramnyasepertidibawahini:


38 #include<conio.h> #include<iostream> usingnamespacestd; main() { constfloatphi=3.141592; floatjari_jari,keliling,luas; jari_jari=72; luas=phi*jari_jari*jari_jari*jari_jari; keliling=2*phi*jari_jari; cout<<"LuasLingkaranadalah"<<"Luas"<<"Satuan"<<endl; cout<<"Kelilinglingkaranadalah"<<keliling<<"SatuanPanjang"; cout<<""<<endl; cout<<""<<endl; cout<<"Nama :Faridarustam"<<endl; cout<<"NPM :07352211047"<<endl;


39 getch(); } Compiledanperbaikiprogramsampaibenar. Gambar2.8SourcecodeLatihanC++ Setelahprogram diperbaikidandicompile,makatampilanhasilrunning akantampaksepertigambardibawahini:


40 Gambar2.9TampilanhasilrunningC++ b.Latihan2 Buatlahprogram barudengancarafile-new-sourceataugabunganCtrl –Nkemudianketiksourcecodeprogramnyasepertidibawahini: #include<conio.h> #include<iostream> usingnamespacestd; intmain() {


41 floatdata1,data2,tambah,kurang,kali,bagi; cout<<"OperasiAritmetikaDasar"<<endl; cout<<"Masukkandata1:"; cin>>data1; cout<<"Masukkandata2"; cin>>data2"; tambah=data1+data2; kurang=data1-data2; kali=data1*data2; bagi=data1/data2; cout<<data1<<"+"<<data2<<"="<<tambah<<endl; cout<<data1<<"-"<<data2<<"="<<kurang<<endl; cout<<data1<<"*"<<data2<<"="<<kali<<endl; cout<<data1<<":"<<data2<<"="<<bagi<<endl; //printf(“%6.2f”,bagi); Getch()


42 } Berikutsourcecodeuntuksebuahprogramoperasiaritmatika. Gambar2.10StrukturcodeLatihanC++ Setelahprogramdiperbaikidandicompilemaka,tampilanhasilrunningakantampak sepertigambardibawahini:


43 Gambar2.11TampakhasilrunningC++ 2.5STUDIKASUS Tulislahsourcecodedariprogramberikutini: a.Buatlahprogrambarudengancarafile-new-sourceataugunakanCtrl– N,kemudianketiksourcecodeprogramsepertidibawahini: /*programpertama*/ #include<iostream> #include<conio.h> Usingnamespacestd;


44 #definesapa1"\t\tSelamatDatangdiLaboratorium Pemrograman Dasar\n"; #definesapa2"\t\SistemKomputerFTIUniversitasKhairun\n" #definenama“faridarustam";/*Tuliskannamaanda*/ #definealamat”manggadua";/*Tuliskanalamatanda*/ #define sekolah "SMANLIHALTIM";/*Tuliskan nama sekolah asal anda*/ usingnamespacestd; main() { cout<<sapa1;cout<<sapa2; cout<<"\n\nNamaAndaAdalah:";cout<<nama; cout<<"\nAndaBeralamatdi:";cout<<alamat"; cout<<"\nSekolahAsalAnda:";cout<<sekolah"; cout<<"\n\n\t\tSELAMATBELAJARBAHASAC++"; getch();


45 } Compiledanperbaikiprogramsampaibenar. Gambar2.12Sourcecodenama,alamat,dansekolah Tampilansourcecodenama,alamat,sekolahasal,danselamatbelajar C++setelahdirunning


46 Gambar2.13Hasilrunningsourcecodeprogram b.LuasPersegiPanjang Rumus: Luas=Panjangxlebar


47 BerikutFlowchart“MenghitungLuasPersegiPanjang” Mulai floatluas, Panjang,lebar Luas=panjang*lebar Outputhasilluas persegipanjang Inputnilai panjangdan


48 Flowchart2.1LuasPersegiPanjang Penjelasan: Flowchartdiatasdiawalidandiakhiridenganmenggunakansimbol terminator, menggunakan simbol preparation sebagai tempat mendeklarasikanluas,panjang,danlebar.Kemudiantahapinputnilai panjang dan lebarmenggunakan simbolinput/output.Setelah itu menyatakanrumus,menggunakansimbolproses.Outputhasilluas persegipanjang,danselesai. ContohcodeprogramLuasPersegiPanjangsepertidibawahini: #include<iostream> #include<conio.h> usingnamespacestd; main() { Intp,l; Selesai


49 cout<<”===========”< cout<<”programpenghitungluaspersegipanjang\n”; cout<<”masukannilaipanjang\n”; cin>>p; cout<<”masukannilailebar=”; cin>>l;cout<<”luaspersegipanjang=;cout<<(p*1) getch() } Compiledanperbaikiprogramsampaibenar.


50 Gambar2.14StrukturLatihanC++ Setelahprogram diperbaikidandicompilemaka,tampilanhasilrunning akantampaksepertigambargambardibawahini:


Click to View FlipBook Version