FINAL PROJECT B.P 1
Transcript of FINAL PROJECT B.P 1
-
5/20/2018 FINAL PROJECT B.P 1
1/96
FINAL PROJECT
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 1 - 8
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A
,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
FINAL PROJECT
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 1 - 8
-
5/20/2018 FINAL PROJECT B.P 1
2/96
Sesi / Kelomo! "
D# / $%N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
-
5/20/2018 FINAL PROJECT B.P 1
3/96
LAPORAN RESMI
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 1 - SE:UENTIAL PROGRAMMING
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
-
5/20/2018 FINAL PROJECT B.P 1
4/96
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRIUNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul : 1 (Satu)
Judul : Sequential Programming
Rombongan :
!roup : "
Suraba#a$ 1" %ktober "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;
PM:
-
5/20/2018 FINAL PROJECT B.P 1
5/96
MODUL 1
SE:UENTIAL PROGRAMMING
I5 D&s&' Teo'i
Pemrograman sekuensial merupakan dasar inti dari pemrograman* +onsep pemrograman
ini adalah top do,n$ bera,al dari atas sampai akhirn#a paling ba,ah* alam paradigma
pemrograman prosedural$ modular maupun obje-t oriented$ konsep sekuensial tetap digunakan*
.ompiler bahasa pemrograman mengubah (menerjemahkan) teks sour-e -ode menjadi
program *e/e #ang siap dijalankan* Proses kompilasi dilakukan dari baris sour-e -ode #ang
paling atas hingga paling ba,ah* 0tulah kenapa sebabn#a pen#ertaan ile librar# header (dan
biasan#a juga deklarasi 2ariabel) selalu ditaruh di bagian a,al sour-e -ode* Misal (dalam bahasa
Ja2a) perintah import ja2a*util*3 mempun#ai makna bah,a sour-e di bagian setelahn#a akan ada
penggunaan perintah atribut -lass #ang dimiliki oleh pa-kage ja2a*util* Sehingga ketika
kompilasi men-apai baris tersebut$ -ompiler sudah siap untuk menerjemahkan karena sudah
diberitahu sebelumn#a oleh baris statemen import di bagian a,al*
Pola pemrograman sekuensial sangatlah sederhana* Biasan#a berupa alur input data
dilanjutkan segmen pemrosesan data dan diakhiri dengan output inormasi #ang dihasilkan*
.ontohn#a program menghitung luas lingkaran* ia,ali dengan permintaan input nilai jari4jari
dari user$ kemudian akan dihitung luasn#a oleh program #ang dibuat menggunakan rumus phi
kali jari4jari kuadrat* an akhirn#a hasil perhitungan luas diinormasikan kembali ke user
melalui perintah output*
-
5/20/2018 FINAL PROJECT B.P 1
6/96
II5 So&l
1* Program Penghitungan 5uas Bangun Segitiga*
a* Buatlah 'lgoritma dari program Penghitungan 5uas Bangun Segitiga6
b* Buatlah 7lo, .hart dari program Penghitungan 5uas Segitiga6-* Buatlah Sour-e .ode program Penghitungan 5uas Segitiga dengan inputan alas$
tinggi 8 output 5uas6
d* Buatlah %utput (hasil) jalann#a program Penghitungan 5uas Segitiga6
III5Al
-
5/20/2018 FINAL PROJECT B.P 1
7/96
I75 Flo3 C=&'(
L&s Se
-
5/20/2018 FINAL PROJECT B.P 1
8/96
75 So'>e Co?e
L&s Se
-
5/20/2018 FINAL PROJECT B.P 1
9/96
#include"stdio.h"voidmain(){
// pendeklarasian (inisialisasi) variabel:floatalas,tinggi,L! /$ pendeklarasian (inisialisasi) variabel
alas, tinggi,% L! bertipe data float(bil.real)$/
// &udul programprintf("'n't't $$$$ rogram enghitungan L! *++*! $$$$")printf("'n")printf("'n")//baris pemisahprintf("'t't--0000000000--'n")printf("'t't +nputkan nilai alas't't: ")scanf("1f", %alas) /$ inputkan nilai dari alas segitiga 2ang akan
di hitung $/printf("'t't +nputkan nilai tinggi't: ")scanf("1f", %tinggi) /$ inputkan nilai dari tinggi segitiga 2ang
akan di hitung $/// baris pemisahprintf("'t't--33333333333333333333--'n")// proses penghitungan dari L! egitigaL!4.5f$alas$tinggi /$ rumus L! *++*! : 6/7 8 alas 8
tinggi $/// hasil dari proses penghitungan L! egitigaprintf("'t't-- 9adi, Luas angun egitiga't: 1;.6f cm7 --'n",
L!) /$ hasil dari perhitungan bertipe data float $/// baris pemisahprintf("'t't--'t't't't't --'n")// ucapan terima kasih serta kritik % saranprintf("'t't--33333333333333 erima
-
5/20/2018 FINAL PROJECT B.P 1
10/96
7I5 O
(
(
P'o
-
5/20/2018 FINAL PROJECT B.P 1
11/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
12/96
LUAS=0.5f*alas*tinggi; adalah deklarasi dari rumus luas perhitungan segitiga$ tanda ?3@
merupakan suatu karakter #ang memiliki ungsi sebagai operasi perkalian*Printf( )adalah untuk men#impan pesan atau -omment diantara diantara tanda kutip ? ?*
Scanf( )adalah untuk menangkap ketikan dari ke#board*
/nadalah untuk menambahkan enter dalam tampilan .AA*
7III5 Kesiml&)
Pada modul 1 ini dapat disimpulkan bah,a Sequential Programming adalah suatu bahasa
pemrograman dimana tidak ada pen#elesaian kondisi* Sequential (sekuensi) merupakan suatu
struktur kontrol algoritmik #ang paling sederhana$ dimana di dalamn#a terdiri dari sederetan
instruksi primiti danatau aksi #ang akan dilaksanakan (dieksekusi) oleh komputer berdasarkan
urutan penulisann#a*
Sequential adalah Proses menjelaskan alur logika dari program se-ara berurutan atau
proses pen#elesaian masalah dari sebuah program se-ara berurutan* Mulai pendeinisian
(pendeklarasian) 2ariable$ penetapan spesiikasi masalah$ proses$ dan pen-etakan output
program* Jadi$ bias disimpulkan bah,a Sequential adalah pemrograman sederhana #ang han#a
dapat meme-ahkan masalah4masalah #ang sederhana*
Meskipun program ini han#a program sederhana namun jika kita telah mengetahui dan
mengerti alur dan logikan#a maka kita pasti akan dapat mengerti untuk soal4soal #ang
berikutn#a*
-
5/20/2018 FINAL PROJECT B.P 1
13/96
@I* D&(&' Ps(&!&
http !!!.googl".co#/s"$%"ntialprogra##ing/http!!!.&ocsto'.co#/t"ori &asar s"$%"ntial progra##ing/
%'% o&%l Pra'ti'%# ahasa P"#rogra#an UP+ -"t"ran a!a i#%r
http://www.google.com/sequentialhttp://www.google.com/sequential -
5/20/2018 FINAL PROJECT B.P 1
14/96
LAPORAN RESMI
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL # 6 PERCABANGAN ,BRANCHING
-
5/20/2018 FINAL PROJECT B.P 1
15/96
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul : " (ua)
Judul : Per-abangan (Bran-hing)
Rombongan :
!roup : "
Suraba#a$ %ktober "&1&
Men#etujui$
-
5/20/2018 FINAL PROJECT B.P 1
16/96
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
MODUL #
PERCABANGAN ,BRANCHING
I5 D&s&' Teo'i
Pen#eleksian kondisi digunakan untuk mengarahkan perjalanan suatu proses* Pen#eleksian kondisi
dapat diibaratkan sebagai katup atau kran #ang mengatur jalann#a air* Bila katup terbuka maka air akan
mengalir dan sebalikn#a bila katup tertutup air tidak akan mengalir atau akan mengalir melalui tempat
lain* 7ungsi pen#eleksian kondisi penting artin#a dalam pen#usunan bahasa .$ terutama untuk program
#ang kompleks*
15 S('!(' Ko)?isi I5559
Struktur i dibentuk dari pern#ataan i dan sering digunakan untuk men#eleksi suatu kondisi tunggal*
Bila proses #ang diseleksi terpenuhi atau bernilai benar$ maka pern#ataan #ang ada di dalam blok i akan
diproses dan dikerjakan* Bentuk umum struktur kondisi i adalah :
.ontoh Program 1 :
Program struktur kondisi if untuk memeriksa suatu kondisi
If (kondisi)
{
Pernyataan1;
..........
Pernyataan_n;
}
-
5/20/2018 FINAL PROJECT B.P 1
17/96
Bentuk di atas mempun#ai arti jika kondisi bernilai benar maka pern#ataan di ba,ahn#a akan dikerjakan*
Jadi perintah 07 merupakan perintah #ang menentukan pengambilan keputusan bah,a pern#ataan itu akan
dikerjakan atau tidak*
#5 S('!(' Ko)?isi I555Else5559
alam struktur kondisi i*****else minimal terdapat dua pern#ataan* Jika kondisi #ang diperiksa
bernilai benar atau terpenuhi maka pern#ataan pertama #ang dilaksanakan dan jika kondisi #ang diperiksa
bernilai salah maka pern#ataan #ang kedua #ang dilaksanakan* Bentuk umumn#a adalah sebagai berikut :
.ontoh Program :
0 (kondisi)
C
Pern#ataan 1F
GG**
Pern#ataanDmF
H
Ilse
C
Pern#ataan F
GG**
Pern#ataanDnF
H
5 Ko)?isi
+ondisi adalah sebuah perbandingan antara dua nilai (2ariabel 2s 2ariabel$ 2ariabel 2s
-
5/20/2018 FINAL PROJECT B.P 1
18/96
konstanta)* alam membandingkan digunakan oe'&(o' e'&)?i)
-
5/20/2018 FINAL PROJECT B.P 1
19/96
Pern#ataanD/F
H
II5 So&l
1) Buatlah program seleksi ilai ETS dengan kategori nilai sbg berikut : (ilai . ; 1 sd =
-
5/20/2018 FINAL PROJECT B.P 1
20/96
9* Jika inputan termasuk dalam kondisi nilai ETS ; 1 ' K; =
-
5/20/2018 FINAL PROJECT B.P 1
21/96
#5 So'>e Co?e
START
Int nilai_UTS
Masukkan Nilai
UTS Anda :
(Nilai UTS >= 41
&& = 66
&&
-
5/20/2018 FINAL PROJECT B.P 1
22/96
#include"stdio.h"voidmain()
{intnilai=printf("'n $ eleksi Bilai $'n")printf("33333333333333333333333333333333333'n")printf(" 0 >asukkan Bilai !nda : ")scanf("1i", %nilai=)printf("33333333333333333333333333333333333'n")if(nilai= 0 C6 %% nilai= D5)
printf("'t Bilai anda : E'n'n")else if(nilai= 0 DD %% nilai= F4)
printf("'t Bilai anda : 'n'n")else if(nilai= 0 F6 %% nilai= 644)
printf("'t Bilai anda : !'n'n")elseprintf(" >ohon maaf,nilai anda tidak masuk 'n kategori
Bilai 2ang telah'n't ditentukan??'n'n")A
5 O(( P'o
-
5/20/2018 FINAL PROJECT B.P 1
23/96
-
5/20/2018 FINAL PROJECT B.P 1
24/96
.5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
25/96
>in-lude ?stdio*h@ pada bagian ini adalah pengarah -ompiler 2isual .AA* >in-lude
memberitahukan 2isual .AA untuk mengambil nama ile #ang disertakan dalam tanda
petik (?@) dan membuat ile tersebut ke dalam 2isual .AA*
oid main ( )pern#ataan ini mendeklarasikan ungsi utama$ bah,a suatu program .AA
dapat berisi ban#ak ungsi$ #ang harus selalu memiliki sebuah ungsi utama (main
un-tion)$ 7ungsi adalah modul #ang berisi kode4kode untuk men#elesaikan masalah4
masalah tertentu* +ata oid menandakan ungsi main tidak bertipe*Cadalah kurung kura,al buka menandakan a,al program*
0nt nilaiDETSF bagian ini adalah mendeinisikan 2ariabel* ariabel adalah nilai bernama
untuk men#impan data #ang dapat diubah*Int adalah tipe data untuk bilangan bulat*If ( ) adalah jika kondisi bernikai benar$ maka perintah akan dikerjakan dan jika tidak
memenuhi s#arat maka akan di abaikan*1ls" If ( )adalah jika kondisi salah*
Printf( )adalah untuk men#impan pesan atau -omment diantara diantara tanda kutip ? ?*Scanf( )adalah untuk menangkap ketikan dari ke#board*
/nadalah untuk menambahkan enter dalam tampilan .AA*
%5 Kesiml&)
+esimpulan dari laporan ini adalah Pada intin#a adalah :
1* Per-abangan adalah pemilihan pelaksanaan perintah berdasarkan suatu kondisi* dan i
else sendiri adalah merupakan salah satu -ara untuk membuat suatu per-abangan
(2rancing)* selain dengan menggunakan i else per-abangan juga bisa dibuat seperti
dengan S,it-h .ase$ ested 0 $dll tergantung bagaimana per-abangan itu diperlukan*
"* 0 else sendiri mempun#ai pengertian ?jika kondisi bernilai benar maka perintah41
akan di kerjakan dan jika tidak memenuhi s#arat maka akan mengerjakan perintah4"@*
9* +eberhasilan dalam suatu program bran-ing salah satun#a di tentukan oleh algoritma
#ang baik$ maka hendakn#a sebelum membuat program buatlah suatu algoritma #ang
-
5/20/2018 FINAL PROJECT B.P 1
26/96
baik terlebih dulu agar nantin#a dalam pembuatan program tidak ban#ak terjadi
kesalahan*
@I* D&(&' Ps(&!&
http !!!.googl".co#/&asart"ori p"rca2angan/
http!!!.&ocsto'.co#/p"rca2angan (2ranching)/%'% o&%l Pra'ti'%# ahasa P"#rogra#an UP+ -"t"ran a!a i#%r
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
27/96
LAPORAN RESMIPRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 6 PERULANGAN ,LOOPING
-
5/20/2018 FINAL PROJECT B.P 1
28/96
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul : 9
Judul : Perulangan (5ooping)
Rombongan :
!roup : "
-
5/20/2018 FINAL PROJECT B.P 1
29/96
Suraba#a$ o2ember "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
MODUL
PERULANGAN ,LOOPING
I5 D&s&' Teo'i
Perulangan adalah perintah pengulangan #ang di gunakan untuk melakukan suatu proses
se-ara berulang4ulang jika suatu kondisi dipenuhi atau sebalikn#a* Mengulang suatu proses
merupakan tindakan #ang ban#ak dijumpai dalam suatu pemrograman* Pada semua bahasa
pemrograman pengulangan proses ditangani dengan suatu mekanisme #ang disebut 5%%P*
Misal$ menampilkan tulisan seban#ak mungkin pada la#ar dapat di implementasikan dengan
kode program #ang pendek* Pada Baha-a . terdapat tiga buah struktur loop$ #aitu berupa 7%R$
%4Q05I$ dan Q05I*
5oop atau di sebut juga perulangan #aitu suatu proses #ang melakukan statemen4statemen
dalam sebuah program se-ara terus menerus sampai terdapat kondisi untuk menghentikann#a*
Jenis statemen perulangan :
,hile
do4,hile
-
5/20/2018 FINAL PROJECT B.P 1
30/96
or (positi or negati)
15 S('>!(' ,+=ile
#aitu perulangan #ang melakukan penge-ekan kondisi di a,al blok struktur$ perulangan inihan#a akan dilakukkan jika kondisi #ang di deinisikan di dalamn#a terpenuhi (bernilai
benar) dan jika kondisi #ang di deinisikan tidak terpenuhi (bernilai salah) maka statement4
statement #ang terdapat di dalam blok perulanganpun tidak akan pernah dieksekusi oleh
program*
.ontoh Program Qhile :
i;9&F
,hile(i&)
C
print(?dn@$i)F
iAAF
H
#5 S('!(' ,Do+=ile
Struktur ini berbeda dengan struktur ,hile #ang melakukan penge-ekan kondisi di a,al blok
perulangan$ pada struktur do4,hile kondisi justru ditempatkan di bagian akhir* Biasan#a
struktur ini melakukkan perulangan terlebih dahulu dan pengujiann#a dilakukan di belakang*
.ontoh Statement Program o 4 Qhile :
.ounter;1F
doC
print(?.AAn@)F
-ounterAAF
-
5/20/2018 FINAL PROJECT B.P 1
31/96
H,hile(-ounterK1
-
5/20/2018 FINAL PROJECT B.P 1
32/96
II5 So&l
1* Buatlah program #ang memiliki ungsi untuk menampilkan (;inputan user) bilangan
pertama deret 7ibbonan-i* eret 7ibbonan-i adalah : &$1$"$9$
-
5/20/2018 FINAL PROJECT B.P 1
33/96
) Set ariabel sukuDiD" ; 1*
=&'(
Sta't
In2utkan N :
Suku_i_1 = !
Suku_i_3 = 1
4i55nan6i = Suku_i_1 7Suku_i_3
Suku_i = Suku_i_1 7Suku_i_3
8*il# (Suku_i
-
5/20/2018 FINAL PROJECT B.P 1
34/96
75 So'>e Co?e
#include"stdio.h"#include"GindoGs.h"
-
5/20/2018 FINAL PROJECT B.P 1
35/96
void main(){
intB // pendeklarasian nilai inputan Bchar2es // pendeklarasian inputan &Gaban utk mengulang program
do{
s2stem("cls") // utk membersihkan la2ar// baris pemisah % &udul program
printf("'n================================================='n")printf(" $$$rogram encetak Bilai Heret Iibbonanci$$$'n")
printf("'n")// inputan nilai deret Iibbonanciprintf(" >asukkan Bilai (lebih besar dari 6)'t: ")scanf("1i",%B)// baris pemisah hasil dri inputan
printf("'n")
printf("0 Jasil : ") // hasil deret Iibbonanci
intsuku,suku=i=6,suku=i=7,suku=isuku4suku=i=66suku=i=76suku=isuku=i=6 K suku=i=7printf("1d ", suku)printf("1d ", suku=i=6)printf("1d ", suku=i)
inti 4
Ghile(suku=iB){suku=i=7suku=i=6suku=i=6suku=isuku=isuku=i=6Ksuku=i=7iKKprintf("1d ", suku=i)
A
printf("'n'n")fflush(stdin)printf("'n't+ngin >engulang rogram (M/) : ")scanf("1c",%2es)
AGhile(2es N2N--2es NMN)printf("'n===================erima
-
5/20/2018 FINAL PROJECT B.P 1
36/96
7I5 O(( P'o
-
5/20/2018 FINAL PROJECT B.P 1
37/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
38/96
1. alam bahasa . tersedia suatu asilitas #ang digunakan untuk melakukan
proses #ang berulang4ulang seban#ak keinginan kita* Misaln#a saja$ bila kita ingin
menginput dan men-etak bilangan dari 1 sampai 1&& bahkan 1&&&$ tentun#a kita akan
merasa kesulitan* amun dengan struktur perulangan proses$ kita tidak perlu
menuliskan perintah sampai 1&& atau 1&&& kali$ -ukup dengan beberapa
perintah saja* Struktur perulangan dalam bahasa . mempun#ai bentuk #ang berma-am4
ma-am*
2. Perulangan #aitu suatu proses #ang melakukan statemen4statemen dalam sebuah program
se-ara terus menerus sampai terdapat kondisi untuk menghentikann#a*
3. o** Qhile** sendiri mempun#ai pengertian ?perulangan akan dilakukan minimal 1/
terlebih dahulu$ kemudian baru dilakukan penge-ekan terhadap kondisi$ jika kondisi
benar maka perulangan masih akan tetap dilakukan$ perulangan dengan do***,hile() akan
dilakukan sampai kondisi alse*@*
4. +eberhasilan dalam suatu program looping salah satun#a di tentukan oleh algoritma #ang
baik$ maka hendakn#a sebelum membuat program buatlah suatu algoritma #ang baik
terlebih dulu agar nantin#a dalam pembuatan program tidak ban#ak terjadi kesalahan
pada program*
@I* D&(&' Ps(&!&
http: www.google.com/dasarteori perulangan/
http:www.docstok.com/perulangan (looping)/
http:www.wikipedia.com/struktur program c/
Buku Modul Praktikum Bahasa Pemrograman 1 P! "#eteran$ %awa &imur
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
39/96
LAPORAN RESMI
PRAKTIKUM BAHASA PEMOGRAMAN 1MODUL . 6 PERULANGAN LANJUTAN ,NESTED LOOPING
-
5/20/2018 FINAL PROJECT B.P 1
40/96
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul :
Judul : Perulangan 5anjutan (ested 5ooping)
Rombongan :
!roup : "
-
5/20/2018 FINAL PROJECT B.P 1
41/96
Suraba#a$ o2ember "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
MODUL .
PERULANGAN LANJUTAN ,NESTED LOOPING
I5 D&s&' Teo'i
S('!(' o' e's&'&)< ,)es(e? loo
Struktur ini sama haln#a seperti pada per-abangan$ pada struktur pengulangan dapat juga
diterapkan perulangan #ang bersarang (nested loop)*
Co)(o= 'o
-
5/20/2018 FINAL PROJECT B.P 1
42/96
>=&'a$bF
-lrs-r()F
o'(a;NaXF aK;NeXF aAA)
C
-outKK@n@F
o'(b;aF bK;NeXF AAb )
-outKKaKK@ ?F
H
get-h()F
}
II5 So&l
1. Buatlah program pen-etak bintang dalam bentuk segitiga beserta -erminann#a$ dimana
perulangan pertama set;16
-
5/20/2018 FINAL PROJECT B.P 1
43/96
III5 Al
-
5/20/2018 FINAL PROJECT B.P 1
44/96
75 So'>e Co?e
-
5/20/2018 FINAL PROJECT B.P 1
45/96
#include"stdio.h"#include"GindoGs.h"voidmain(){
int8,2,Ochar&Gbdo{s2stem("cls")printf("----'n")printf("--rogram encetak intang--'n")printf("----'n")printf(" +nputkan tinggi bintang : ")scanf("1d",%O)printf("--3333333333333333--'n")
for(868O8KK){
for(26282KK)printf("$")
for(262O382KK)
printf(" ")for(282O362KK)
printf(" ")
for(26282KK)printf("$")printf("'n")
Aprintf("----'n")fflush(stdin)printf(" +ngin >engulang (M/B) : ")scanf("1c",%&Gb)
A
Ghile(&GbNMN--&GbN2N)printf("--333333333333333333333333333333--'n")A
7I5 O(( P'o
-
5/20/2018 FINAL PROJECT B.P 1
46/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
47/96
For()igunakan untuk perulangan #ang batasn#a sudah diketahui dengan jelas$ misaln#a
dari 1 sampai 1&* 7or memerlukan " buah 2ariabel a,al dan akhir perulangan$ nilai
2ariabel penghitung akan se-ara otomatis bertambah atau berkurang tiap kali sebuah
pengulangan dilaksanakan*
45 Kesiml&)
+esimpulan dari laporan ini adalah Pada intin#a adalah :
1. alam bahasa . tersedia suatu asilitas #ang digunakan untuk melakukan
proses #ang berulang4ulang seban#ak keinginan kita* Misaln#a saja$ bila kita ingin
menginput dan men-etak bilangan dari 1 sampai 1&& bahkan 1&&&$ tentun#a kita akan
merasa kesulitan* amun dengan struktur perulangan proses$ kita tidak perlu
menuliskan perintah sampai 1&& atau 1&&& kali$ -ukup dengan beberapa
perintah saja* Struktur perulangan dalam bahasa . mempun#ai bentuk #ang berma-am4
ma-am*
2. Perulangan 5anjutan #aitu suatu proses #ang melakukan statemen4statemen dalam sebuah
program se-ara terus menerus sampai terdapat kondisi untuk menghentikann#a*
3.For()igunakan untuk perulangan #ang batasn#a sudah diketahui dengan jelas$ misaln#a
dari 1 sampai 1&* 7or memerlukan " buah 2ariabel a,al dan akhir perulangan$ nilai
2ariabel penghitung akan se-ara otomatis bertambah atau berkurang tiap kali sebuah
pengulangan dilaksanakan*
4. o** Qhile** sendiri mempun#ai pengertian ?perulangan akan dilakukan minimal 1/
terlebih dahulu$ kemudian baru dilakukan penge-ekan terhadap kondisi$ jika kondisi
e)&' maka perulangan masih akan tetap dilakukan$ perulangan dengan do***,hile() akan
dilakukan sampai kondisi &lse5@*
5. +eberhasilan dalam suatu program looping lanjutan salah satun#a di tentukan oleh
algoritma #ang baik$ maka hendakn#a sebelum membuat program buatlah suatu
algoritma #ang baik terlebih dulu agar nantin#a dalam pembuatan program tidak ban#ak
terjadi kesalahan pada program*
-
5/20/2018 FINAL PROJECT B.P 1
48/96
@I* D&(&' Ps(&!&
http: www.google.com/dasarteori perulangan lan'utan/
http:www.docstok.com/perulangan lan'utan (nested looping)/
http:www.wikipedia.com/struktur program perulangan lan'utan/
Buku Modul Praktikum Bahasa Pemrograman 1 P! "#eteran$ %awa &imur
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
49/96
LAPORAN RESMI
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL % 6 FUNGSI ,SUBRUTIN
Sesi / Kelomo! "D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
-
5/20/2018 FINAL PROJECT B.P 1
50/96
Praktikum : Bahasa Pemrograman 1
Modul : asukkan pan&ang (p) : ")scanf("1i",%pan&ang)printf(" 0 >asukkan lebar (l) : ")scanf("1i",%lebar)printf(" 0 >asukkan tinggi (t) : ")scanf("1i",%tinggi)volume=balok(pan&ang,lebar,tinggi,Polume)
printf("--
--'n")printf(" 300 >aka Polume alok adalah : 1i'n",Polume)fflush(stdin)printf("--
--'n")printf(" 300 !pakah !nda +ngin >engulang rogram (2/t)
")scanf("1c",%ulang)
AGhile(ulangN2N--ulangNMN)printf("--
--'n")A
7I5 O((
-
5/20/2018 FINAL PROJECT B.P 1
59/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
60/96
un-tion)$ 7ungsi adalah modul #ang berisi kode4kode untuk men#elesaikan masalah4
masalah tertentu* +ata oid menandakan ungsi main tidak bertipe*oid 2olumeDbalok(int panjang$ int lebar$ int tinggi$ int 8olume) pern#ataan ini
merupakan pendeklarasian ungsi dengan nilai balik untuk mengoperasikan program$
dimana dalam tanda () terdapat 2ariabel dari ungsi tsb*Cadalah kurung kura,al buka menandakan a,al program*
0nt panjang$ lebar$ tinggi$ olumeF bagian ini adalah mendeinisikan 2ariabel* ariabel
adalah nilai bernama untuk men#impan data #ang dapat diubah* Int adalah tipe data untuk
bilangan bulat*
.har ulangF bagian ini adalah mendeinisikan sebuah 2ariabel karakter* 6har adalah tipe
data untuk karakter*
Printf( )adalah untuk men#impan pesan atau -omment diantara diantara tanda kutip ? ?*
Scanf( )adalah untuk menangkap ketikan dari ke#board*
/nadalah untuk menambahkan enter dalam tampilan .AA*7o 89bagian ini adalah statement perulangan #ang memiliki ungsi mengeksekusi
(menjalankan) statement program dalam ?CH@ (kurung kura,al) sesuai dengan perintah
statement inisialisasi$ 8 s#arat pengulangan pada program*
:hil" ( )bagian ini adalah statement perulangan #ang memiliki ungsi men#atakan proses
perulangan selama kondisi tertentu dalam ?()@*
7III5 Kesiml&)
+esimpulan dari laporan ini adalah Pada intin#a adalah :
1. Suatu ungsi adalah suatu bagian dari program #ang dimaksudkan untuk mengerjakan
suatu tugas tertentu dan letakn#a dipisahkan dari bagian program #ang
menggunakann#a*
2. Tujuan penggunaan ungsi :
a* Program menjadi terstruktur
b* apat mengurangi pengulangan kode program*
3. 7ungsi dapat diimplementasikan dalam tiga bentuk :
a* Pendeklarasian ungsi sebagai protot#pe ungsi*
b* Pendeinisian ungsi*
-* pemanggilan ungsi dari program lain*
-
5/20/2018 FINAL PROJECT B.P 1
61/96
4. o** Qhile** sendiri mempun#ai pengertian ?perulangan akan dilakukan minimal 1/
terlebih dahulu$ kemudian baru dilakukan penge-ekan terhadap kondisi$ jika kondisi
e)&' maka perulangan masih akan tetap dilakukan$ perulangan dengan do***,hile()
akan dilakukan sampai kondisi &lse5@*
5. +eberhasilan dalam suatu program ungsi salah satun#a di tentukan oleh algoritma
#ang baik 8 pendeklarasian ungsi$ maka hendakn#a sebelum membuat program
buatlah suatu algoritma 8 siapkan ungsi beserta 2ariable #ang sesuai 8 baik terlebih
dulu agar nantin#a dalam pembuatan program tidak ban#ak terjadi kesalahan pada
program*
@I* D&(&' Ps(&!&
http: www.google.com/dasarteori fungsi (surutin)/
http:www.docstok.com/ungsi ekursi + ekursif/
http:www.wikipedia.com/struktur program fungsi pengoprasian penghitungan ,olume
alok/
Buku Modul Praktikum Bahasa Pemrograman 1 P! "#eteran$ %awa &imur
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
62/96
LAPORAN RESMI
PRAKTIKUM BAHASA PEMOGRAMAN 1MODUL 4 6 ARRA* / LARIK
-
5/20/2018 FINAL PROJECT B.P 1
63/96
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTERJUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
#$1$
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul : =
Judul : 'RR'V 5'R0+
Rombongan :
!roup : "
-
5/20/2018 FINAL PROJECT B.P 1
64/96
Suraba#a$ &O o2ember "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
MODUL 4
ARRA* / LARIK
I5 D&s&' Teo'i
'rra# adalah suatu 2ariabel #ang dapat menampung lebih dari satu data dengan tipe
data #ang sama dan dibedakan berdasarkan nomor inde/n#a*Ilemen4elemen arra# tersusun
se-ara sekuensial di dalam memori sehingga memiliki alamat #ang berdekatan*'rra# dapat berupa arra# satu dimensi$ dua dimensi$ bahkan n4dimensi*
Ilemen4elemen arra# bertipe data sama tapi bisa bernilai sama atau berbeda4beda* alam
bahasa .$ arra# selalu dimulai dari inde/ ke4& (nol)*
.ontoh deklarasi arra# :
i)( N1$
eklarasi diatas berarti pendeklarasian 2ariabel arra# bernama #ang mempun#ai
elemen seban#ak 1& buah dengan inde/ dimulai dengan nomor & sampai W*
Entuk memasukan suatu elemen data dalam arra#$ perintah #ang dilakukan ditulis
seperti pemba-aan data 2ariabel biasa han#a perbedaann#a harus ditulis untuk inde/ ke
berapa*
.ontoh untuk pengisian data ke elemen arra# :
s>&),?9 N#
Perintah diatas berarti pemba-aan data dari ke#board untuk data bertipe integer (d)
dan dimasukan ke 2ariabel arra# inde/ ke4" (urutan ke49)*.ontoh4-ontoh lain pengisian ke suatu elemen arra# :
I% // &'i&el I ?iisi ?e)
-
5/20/2018 FINAL PROJECT B.P 1
65/96
NI // ?&(& !e-I ?&'i &'i&el N ?iisi ?e)&),?9NNI
// em&>&&) ?&(& )(! &'i&el N &?& i)?e !e-NI ,
'rra# sendiri ada " ma-am arra# satu dimensi dan arra# dua dimensi $arra# satu
dimensi sudah dijelaskan seperti -ontoh #ang diatas sedangkan arra# dua dimensi berikut
penjelasann#a*
ARRA* SATU DIMENSI
Tanda Z[ disebut juga ?elemen #ang ke4 \* Misaln#a kondisiZ&[ berarti elemen #ang ke
nol*
'rra# #ang sudah dipesan$ misaln#a 1& tempat tidak harus diisi semuan#a$ bisa saja
han#a diisi < elemen saja$ baik se-ara berurutan maupun tidak* amun pada kondisi #ang
tidak sepenuhn#a terisi tersebut$ tempat pemesanan di memori tetap seban#ak 1& tempat$
jadi tempat #ang tidak terisi tetap akan terpesan dan dibiarkan kosong*.ontoh:
//De)
-
5/20/2018 FINAL PROJECT B.P 1
66/96
2ariable dengan nama4nama #ang berbeda$msaln#a 2ariable ]1 untuk men#impan nilai
O$2ariable ]" untuk nilai < dan ]9 untuk nilai*
II5 So&l
1* Buatlah program Penjumlahan M'TR0+ ber4%rdo "/" menggunakan ungsi 66
-
5/20/2018 FINAL PROJECT B.P 1
67/96
III5 Al=&'(
-
5/20/2018 FINAL PROJECT B.P 1
68/96
75 So'>e
Co?e
Mulai
void jumlah(int mat1[][]!
int mat[][]! int mat"[][]!
int brs! int #lm)
void display(int
matri#s[][]! int
brs! int #lm)
int m1[][]! m[][]! m"[][];int baris$! #olom$;
%har ulang;
isi&data(m1!
baris! #olom);
isi&data(m!
baris! #olom);
jumlah(m1! m! m"!baris! #olom);
'pa#ah andaingin mengulangprogram [y/n]
hile(ulang$$*y*++ ulang$$*,*);
-elesai
.alse
rue
void isi&data(int
matri#s[][]! int
brs! int #lm)
display(m1!baris! #olom);
display(m!baris! #olom);
display(m"!baris! #olom);
i$0;
ibrs;
i22
j$0;
j#lm;
j22
33 4si 5ata dibaris 6d! 7olom
6d8
i$0;
ibrs;
i22
j$0;
j#lm;
j22
mat"[i][j]$mat1[i][j]2mat[i][j];
i$0;
ibrs;
i22
j$0;
j#lm;
j22
matri#s[i][j]
-
5/20/2018 FINAL PROJECT B.P 1
69/96
9includestdio:h39includeindos:h3voidisi&data(intmatri#s[][]! intbrs! int#lm){or(inti$0;ibrs;i22){
or(intj$0;j#lm;j22){
print(< 33 4si 5ata di baris 6d! 7olom 6d8
}print(nnnn>n
-
5/20/2018 FINAL PROJECT B.P 1
70/96
print(n $33 4si matri#s #edua adalah 8 >n>nnn>n
-
5/20/2018 FINAL PROJECT B.P 1
71/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
72/96
:hil" ( )bagian ini adalah statement perulangan #ang memiliki ungsi men#atakan proses
perulangan selama kondisi tertentu dalam ?()@*For( ) igunakan untuk perulangan #ang batasn#a sudah diketahui dengan jelas$
misaln#adari 1 sampai 1&*7or memerlukan " buah 2ariabel a,al dan akhir perulangan$
nilai 2ariabel penghitung akan se-ara otomatis bertambah atau berkurang tiap kali sebuah
pengulangan dilaksanakan*
7III5 Kesiml&)
+esimpulan dari Tugas Pendahuluan ini adalah Pada intin#a adalah :
1* alam bahasa . tersedia suatu asilitas #ang digunakan untuk melakukan
proses #ang berulang4ulang seban#ak keinginan kita* Misaln#a saja$ bila kita ingin
menginput dan men-etak bilangan dari 1 sampai 1&& bahkan 1&&&$ tentun#a kita akan
merasa kesulitan* amun dengan struktur perulangan proses$ kita tidak perlu
menuliskan perintah sampai 1&& atau 1&&& kali$ -ukup dengan beberapa
perintah saja*
-
5/20/2018 FINAL PROJECT B.P 1
73/96
"* 'rra# merupakan koleksi data dimana setiap elemen memakai nama dan tipe #ang sama
serta setiap elemen diakses dengan membedakan indeks arra#n#a*9* ariable arra# dideklarsikan dengan men-antumkan tipe dan nama 2ariable #ang diikuti
dengan ban#akn#a lokasi memori #ang ingin dibuat*
* Ban#akn#a lokasi memori dapat se-ara otomatis disediakan sesuai dengan ban#akn#anilai #ang akan dimasukkan*
-
5/20/2018 FINAL PROJECT B.P 1
74/96
LAPORAN RESMI
-
5/20/2018 FINAL PROJECT B.P 1
75/96
PRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 6 ARRA* / LARIK LANJUTAN
Sesi / Kelomo! "D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
2010
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul :
Judul : 5'R0+ 'RR'V 5'JET
Rombongan :
-
5/20/2018 FINAL PROJECT B.P 1
76/96
!roup : "
Suraba#a$ 1< o2ember "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
MODUL
LARIK / ARRA* LANJUT
I5 D&s&' Teo'i
'rra# adalah suatu 2ariabel #ang dapat menampung lebih dari satu data dengan tipe
data #ang sama dan dibedakan berdasarkan nomor inde/n#a*Ilemen4elemen arra# tersusunse-ara sekuensial di dalam memori sehingga memiliki alamat #ang berdekatan*
'rra# dapat berupa arra# satu dimensi$ dua dimensi$ bahkan n4dimensi*Ilemen4elemen arra# bertipe data sama tapi bisa bernilai sama atau berbeda4beda* alam
bahasa .$ arra# selalu dimulai dari inde/ ke4& (nol)*
.ontoh deklarasi arra# :
i)( N1$
eklarasi diatas berarti pendeklarasian 2ariabel arra# bernama #ang mempun#ai
elemen seban#ak 1& buah dengan inde/ dimulai dengan nomor & sampai W*
-
5/20/2018 FINAL PROJECT B.P 1
77/96
Entuk memasukan suatu elemen data dalam arra#$ perintah #ang dilakukan ditulis
seperti pemba-aan data 2ariabel biasa han#a perbedaann#a harus ditulis untuk inde/ ke
berapa*
.ontoh untuk pengisian data ke elemen arra# :
s>&),?9 N#Perintah diatas berarti pemba-aan data dari ke#board untuk data bertipe integer (d)
dan dimasukan ke 2ariabel arra# inde/ ke4" (urutan ke49)*
.ontoh4-ontoh lain pengisian ke suatu elemen arra# :
I% // &'i&el I ?iisi ?e)&&) ?&(& )(! &'i&el N &?& i)?e !e-NI ,
'rra# sendiri ada " ma-am arra# satu dimensi dan arra# dua dimensi $arra# satu
dimensi sudah dijelaskan seperti -ontoh #ang diatas sedangkan arra# dua dimensi berikut
penjelasann#a*
ARRA* SATU DIMENSI
Tanda Z[ disebut juga ?elemen #ang ke4 \* Misaln#a kondisiZ&[ berarti elemen #ang ke
nol*
'rra# #ang sudah dipesan$ misaln#a 1& tempat tidak harus diisi semuan#a$ bisa saja
han#a diisi < elemen saja$ baik se-ara berurutan maupun tidak* amun pada kondisi #ang
tidak sepenuhn#a terisi tersebut$ tempat pemesanan di memori tetap seban#ak 1& tempat$
jadi tempat #ang tidak terisi tetap akan terpesan dan dibiarkan kosong*.ontoh:
//De)
-
5/20/2018 FINAL PROJECT B.P 1
78/96
Pemba-aan elemen4elemen arra# dua dimensi melibatkan " perulangan* 1 perulangan
baris dan 1 perulangan kolom*
3Be?& L&'i! / A''& De)
-
5/20/2018 FINAL PROJECT B.P 1
79/96
III5 Al
-
5/20/2018 FINAL PROJECT B.P 1
80/96
I75 Flo3>=&'(
75 So'>e Co?e
9include
i$0;
i#;
i22
j$0;
jl;
j22
%eta#
4nputan
Eilai Flemen
Matri#
i$0;
i#;
i22
j$0;
jl;
j22
%eta# 4nputan
Eilai Flemen
Matri# #e rumus
/ranspose
inputan[i][j]
$inputan1[j][i];
S#l#sai
-
5/20/2018 FINAL PROJECT B.P 1
81/96
intmain(){int#$"!l$"!i!j!inputan1["]["]!inputan["]["];
print(Matri#388888888888883>n>nprint(n>nnprint(n>nn
-
5/20/2018 FINAL PROJECT B.P 1
82/96
7I5 O(( P'o
-
5/20/2018 FINAL PROJECT B.P 1
83/96
7II5 A)&lis& P'o
-
5/20/2018 FINAL PROJECT B.P 1
84/96
15 alam bahasa . tersedia suatu asilitas #ang digunakan untuk melakukan
proses #ang berulang4ulang seban#ak keinginan kita* Misaln#a saja$ bila kita ingin
menginput dan men-etak bilangan dari 1 sampai 1&& bahkan 1&&&$ tentun#a kita akan
merasa kesulitan* amun dengan struktur perulangan proses$ kita tidak perlu
menuliskan perintah sampai 1&& atau 1&&& kali$ -ukup dengan beberapa
perintah saja*
#5 'rra# merupakan koleksi data dimana setiap elemen memakai nama dan tipe #ang sama
serta setiap elemen diakses dengan membedakan indeks arra#n#a*
5 ariable arra# dideklarsikan dengan men-antumkan tipe dan nama 2ariable #ang diikuti
dengan ban#akn#a lokasi memori #ang ingin dibuat*
.5 Ban#akn#a lokasi memori dapat se-ara otomatis disediakan sesuai dengan ban#akn#a
nilai #ang akan dimasukkan*
%5 'rra# adalah struktur data #ang men#impan sekumpulan elemen #ang sama* Setiapelemen diakses langsung melalui indeksn#a* 0ndeks larik haruslah tipe data #ang
men#atakan keurutan*
45 ariabel tunggal adalah sebuah 2ariabel #ang han#a bisa dihubungkan dengan sebuah
nilai saja*
5 'rra# adalah 2ariabel #ang mempun#ai satu nama tetapi mampu men#impan lebih dari
satu data*
I@5 D&(&' Ps(&!&
http: www.google.com/dasarteori arra- lan'ut/
http:www.docstok.com/pengertian arra- (larik) erlan'ut/
http:www.wikipedia.com/struktur program matriks erordo dgn rumus
transpose/
Buku Modul Praktikum Bahasa Pemrograman 1 P! "#eteran$ %awa &imur
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
85/96
-
5/20/2018 FINAL PROJECT B.P 1
86/96
LAPORAN RESMIPRAKTIKUM BAHASA PEMOGRAMAN 1
MODUL 8 6 STRUCT
Sesi / Kelomo! "
D# / $%
N&m& P'&!(i!&) "
OKT*A+AN ADIT*A ,1$.$1$1%
ASISTEN "
A)0&s P')omo ,$8.$1$12
He'm&) K')i&3&) ,$8.$1$$.4
LABORATORIUM PEMROGRAMAN KOMPUTER
JUR5 TEKNIK INFORMATIKA 6 FAKULTAS TEKNIK INDUSTRI
UNI7ERSITAS PEMBANGUNAN NASIONAL 7ETERAN9 JA+A TIMUR
-
5/20/2018 FINAL PROJECT B.P 1
87/96
2010
LEMBAR PENGESAHAN
Telah diperiksa dan disetujui laporan resmi :
Praktikum : Bahasa Pemrograman 1
Modul : O
Judul : STRE.T
Rombongan :
!roup : "
Suraba#a$ "1 esember "&1&
Men#etujui$
'sisten Penguji
,;;;;;;;;;;;;;;;;;;
PM:
-
5/20/2018 FINAL PROJECT B.P 1
88/96
MODUL 8
STRUCT
I5 D&s&' Teo'i
Stru-t adalah tipe data #ang dapat melakukan pen#impanan beberapa data #ang saling
terkait (seperti ama$ RP$ 'lamat)$ sebagai suatu kesatuan$ sehingga data4data tersebut
seakan4akan menjadi suatu data tunggal* Pembuatan tipe data baru dalam . dilakukan
dengan menggunakan kata kun-i stru-t$ #ang merupakan kependekan dari stru-ture
(struktur)*S#nta/ :
Stru-t ZKstru-t t#pe name[C
ZKt#peK2ariabel4nameZ$2ariabel4name$ ***[[F
**
*
H ZKstru-ture 2ariabels[F.ontoh :
t#pede stru-t
Cint 0P F
-har namaZ9&[
H pega,aiDtF
Perbedaan dengan Tipe data lain :
Tipe data #ang lain han#a terdiri dari 1 element$ sehingga han#a dapat men#impan
sebuah nilai atau sebuah string saja$ sedangkan tipe data stru-t dapat men#impan beberapa
elemen$ dengan berbagai ma-am tipe seperti int$ -har$ long$ dll*
%perator titik digunakan sebagai pemisah antara 2ariabel struktur dengan elemenn#a$
penulisan ini sebaikn#a tidak dipisahkan oleh spasi* %perator ini berungsi untuk mengaksessuatu element dari 2ariabel struktur*
%perator panah digunakan untuk pengaksesan operasi pointer$ atau menggunakan
operator bintang (N3N)$ untuk pengaksesan element4element suatu struktur #ang berupa
pointer*
.ontoh :
t#pede stru-t
-
5/20/2018 FINAL PROJECT B.P 1
89/96
C
int 0P F
-har namaZ9&[H pega,aiDt$ 3pegDtF
Pengaksesan dengan operator titik dan panah:pega,aiDt*0P
pega,aiDt*nama
(3pegDt)*0P ;; pegDt 4 0P
II5 So&l
1* Buatlah program STRE.T input data$ dimana pada program tsb memiliki tampilan
menu #ang terdiri dari :a* 0nput ata
b* ie, ata
-* Idit ata
-
5/20/2018 FINAL PROJECT B.P 1
90/96
III5 Al=inputan1[i][j]
i$0;
i#;
i22
j$0;
jl;
j22
%eta#
4nputan
Eilai Flemen
Matri#
i$0;
i#;
i22
j$0;
jl;
j22
%eta# 4nputan
Eilai Flemen
Matri# #e rumus
/ranspose
inputan[i][j]
$inputan1[j][i];
S#l#sai
-
5/20/2018 FINAL PROJECT B.P 1
91/96
@I5 So'>e Co?e
9include
-
5/20/2018 FINAL PROJECT B.P 1
92/96
print(n8888888888888Casil Eilai 4nputan Flemen
Matri#388888888888883>n>nprint(n>nn}
print(n>nn
-
5/20/2018 FINAL PROJECT B.P 1
93/96
@II5 O(( P'o
-
5/20/2018 FINAL PROJECT B.P 1
94/96
Stdlib*h adalah salah satu librar# ungsi pada bahasa pemrograman isual .AA*
0nt main ()pern#ataan ini mendeklarasikan ungsi utama$ bah,a suatu program .AA
dapat berisi ban#ak ungsi$ #ang harus selalu memiliki sebuah ungsi utama (main
un-tion)$ 7ungsi adalah modul #ang berisi kode4kode untuk men#elesaikan masalah4
masalah tertentu* +ata 0nt menandakan ungsi main bertipe*Cadalah kurung kura,al buka menandakan a,al program*
int k;9$l;9$i$jFbagian ini adalah mendeinisikan 2ariabel* ariabel adalah nilai bernama
untuk men#impan data #ang dapat diubah*Int adalah tipe data untuk bilangan bulat*
Printf( )adalah untuk men#impan pesan atau -omment diantara diantara tanda kutip (??)*
Scanf( )adalah untuk menangkap ketikan dari ke#board*
/nadalah untuk menambahkan enter dalam tampilan .AA*For()igunakan untuk perulangan #ang batasn#a sudah diketahui dengan jelas$ misaln#a
dari 1 sampai 1&* 7or memerlukan " buah 2ariabel a,al dan akhir perulangan$ nilai
2ariabel penghitung akan se-ara otomatis bertambah atau berkurang tiap kali sebuahpengulangan dilaksanakan*
@I75 Kesiml&)
+esimpulan dari Tugas Pendahuluan ini adalah Pada intin#a adalah :
85 alam bahasa . tersedia suatu asilitas #ang digunakan untuk melakukan
proses #ang berulang4ulang seban#ak keinginan kita* Misaln#a saja$ bila kita ingin
menginput dan men-etak bilangan dari 1 sampai 1&& bahkan 1&&&$ tentun#a kita akan
merasa kesulitan* amun dengan struktur perulangan proses$ kita tidak perlu
menuliskan perintah sampai 1&& atau 1&&& kali$ -ukup dengan beberapa
perintah saja*25 'rra# merupakan koleksi data dimana setiap elemen memakai nama dan tipe #ang sama
serta setiap elemen diakses dengan membedakan indeks arra#n#a*
1$5 ariable arra# dideklarsikan dengan men-antumkan tipe dan nama 2ariable #ang diikuti
dengan ban#akn#a lokasi memori #ang ingin dibuat*
-
5/20/2018 FINAL PROJECT B.P 1
95/96
115 Ban#akn#a lokasi memori dapat se-ara otomatis disediakan sesuai dengan ban#akn#a
nilai #ang akan dimasukkan*
1#5 'rra# adalah struktur data #ang men#impan sekumpulan elemen #ang sama* Setiap
elemen diakses langsung melalui indeksn#a* 0ndeks larik haruslah tipe data #ang
men#atakan keurutan*15 ariabel tunggal adalah sebuah 2ariabel #ang han#a bisa dihubungkan dengan sebuah
nilai saja*
1.5 'rra# adalah 2ariabel #ang mempun#ai satu nama tetapi mampu men#impan lebih dari
satu data*
@75 D&(&' Ps(&!&
http: www.google.com/dasarteori arra- lan'ut/
http:www.docstok.com/pengertian arra- (larik) erlan'ut/http:www.wikipedia.com/struktur program matriks erordo dgn rumus
transpose/
Buku Modul Praktikum Bahasa Pemrograman 1 P! "#eteran$ %awa &imur
http://www.google.com/dasarhttp://www.google.com/dasar -
5/20/2018 FINAL PROJECT B.P 1
96/96