KU1072 W002 PendahuluanPemrograman
-
Upload
achmad-rochliadi -
Category
Documents
-
view
223 -
download
0
Transcript of KU1072 W002 PendahuluanPemrograman
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 1/64
KU1072/Pengenalan Teknologi Informasi B
Tahap Tahun Pertama Bersama
Institut Teknologi Bandung
Struktur Dasar ProgramProsedural
(dalam Bahasa !! !"lo#$hart%
Tim Penyusun Materi PTI-B
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 2/64
Tu&uan
• Subtopik – Input – Proses – Output dalam program
– Deklarasi dan penggunaan variabel, type dasar dan bentukan!,konstanta, ekspresi aritmatika, relasional, dan logika!
–Input"output – Sekuens
– #lo$%hart terkait
– &ontoh kasus
• Out%ome
– Memahami makna dan penggunaan variable, type, konstanta,input"output, dan sekuens'
– Memahami persoalan yang dapat dikonversi men(adi programsederhana dengan meman)aatkan variable, type, konstanta,ekspresi dasar, input"output, dan sekuens
*+./"Pengantar Teknologi In)ormasi B"/0"0 /
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 3/64
!!
• !! merupakan bahasa pemrograman general purposedan multi paradigma prosedural, object oriented!
• Bahasa pemrograman yang sangat populer dan banyakdigunakan
• Dikembangkan oleh B(arne Stroustrup mulai tahun 1.1di Bell 2abs
• Merupakan pengembangan dari Bahasa & proseduralmurni! dengan penambahan konsep, object-orientation
•Dalam kuliah ini, hanya akan menggunakan paradigmaprosedural
• Merupakan bahasa yang %ase sensitive perbedaanhuru) besar dan ke%il berpengaruh
*+./"Pengantar Teknologi In)ormasi B"/0"0 3
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 4/64
'asukan Proses )uaran
*+./"Pengantar Teknologi In)ormasi B
Input Proses Output
input (A)input (B)
A ← A + Boutput (A)output (B)
cin >> A;cin >> B;
A = A + B;cout << A;cout << B;
!!
"/0"0 4
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 5/64
"lo#$hart Umum
"/0"0 *+./"Pengantar Teknologi In)ormasi B 5
Input6!
Output6!
Proses
Mulai
Selesai
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 6/64
Struktur Dasar Program Prosedural Se$ara Umum
*+./"Pengantar Teknologi In)ormasi B
Program 78udulProgram9"" Spesi:kasi Program
K*'US
"" Deklarasi type, variabel, konstanta,)ungsi, prosedur
*)+,-IT'*
"" Deretan langkah algoritmik untukpenyelesaian"" persoalan
"" D6P6T DIS+S+; D626M #2O<&=6>T
"/0"0 0
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 7/64
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 8/64
ontoh Programdan "lo#$hart
"/0"0 *+./"Pengantar Teknologi In)ormasi B ?
Mulai
input6!inputB!
6 @ 6 A BB @ B - 6
output6!outputB!
Selesai
$rogram est
// eng&itung A + B
KAMUS int A;
int B;
ALG!"MA // *i&at floc&art
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 9/64
*+./"Pengantar Teknologi In)ormasi B
Prosedural
"/0"0 1
// Program ,est// Spesifiasi - eng&itung nilai A dan B
#include <iostream>using namespace std;
int main () {//KAMUS
int A;int %;
//ALG!"MAcin >> A; // inputcin >> %;
A & A ' %; // proses% & % A;cout << A << endl; // outputcout << % << endl;
return ';
8udul Program Aspesi:kasi,
dituliskan dalamkomentar
*6M+Sdeklarasi
variabel 6 danB
62CO>ITM6Input,
Proses,Output
Bagian ini perlu ditambahkan sebagaistandard pemrograman &A
A di layar &onsole
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 10/64
Komentar
• Dalam bahasa pemrograman komentaradalah bagian program yang tidakdieksekusi
– Bagian ini hanya digunakan untuk memberikanpen(elasan suatu langkah, rumus ataupun bisahanya berupa keterangan
• Dalam &AA, komentar dituliskan sebagai
– 6ntara " dan "/ ini *omentar /
– Dia$ali dengan ""
// ini *omentar*+./"Pengantar Teknologi In)ormasi B"/0"0
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 11/64
Kamus.
Tie Data ariaelKonstanta
*+./"Pengantar Teknologi In)ormasi B"/0"0
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 12/64
Kamus
• *amus dipakai untuk mendeklarasi nama-nama yang digunakan dalam program
• Deklarasi nama yang dide:nisikanpemrogram – type
– variabel – konstanta
• Deklarasi B+*6; instruksi• &ontoh deklarasi EvariabelF
KU1072/Pengantar Teknologi Informasi B
!!int iG
Hoat 8umlah+angPoint TitikG
"/0"0 /
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 13/64
ariael (1%
• ariabel adigunakan menyimpan suatu nilai yang
ber-Jtipe dataJ tertentu sesuai dengan deklarasi
• Merepresentasikan suatu makna di dunia nyata yang
ingin diolah dalam program, misalnya – Sum (umlah beberapa angka
– 'a3 nilai maksimum
• ariabel
– deklarasi supaya nama dikenal dan diketahui tipe datanya!,
– inisialisasi nilai siap dimanipulasi!
KU1072/Pengantar Teknologi Informasi B"/0"0 3
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 14/64
ariael (2%
• &ontoh
deklarasi dan
inisialisasi
variabel
KU1072/Pengantar Teknologi Informasi B
+''
int main () . // A0Sint i;
,loat A;
// A*1234,A 5555 i & -..; A & i .;
5555 return ';
"/0"0 4
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 15/64
'emuat 4ama ariael 5ang Benardan 6aik
• ;ama variabel harus dimulai dengan huru)dan dapat diikuti dengan huru) lagi dan angka – Tidak boleh ada tanda ba%a
• Dalam nama variabel tidak boleh dipisahkanoleh spasi
• &ari nama variabel yang bisa dimengerti – 6gar tidak membingungkan
• &AA adalah bahasa yang %ase sensitive *esalahan penulisan huru) besar dan ke%ilmenyebabkan error
KU1072/Pengantar Teknologi Informasi B"/0"0 5
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 16/64
&ontoh yang benarTotal 8umlah*
&ontoh yang salah9-oda 8umlahtotal:
Benar atau salahKKar2stringTotal;<
=angka>>>>SuerDa5a+una)um;<::a$*+./"Pengantar Teknologi In)ormasi B"/0"0 0
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 17/64
Tie Data (1%
• Setiap data memiliki (enis yang berbeda-beda – Data umur seseorang berbeda dengan data
nama• Data +mur dibentuk dari kumpulan angka
• Data nama dibentuk dari serangkaian huru)
– +ntuk setiap (enis data (uga memiliki rentangrange! yang berbeda
• Data umur rentangnya antara sampai biladiasumsikan bah$a umur seseorang tidak lebih dari!'
• Data nama rentangnya mulai dari sampai 5 biladi anggap nama tidak ada yang melebihi 5 huru)
*+./"Pengantar Teknologi In)ormasi B"/0"0 .
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 18/64
Tie Data (2%
• ;ilai yang diperbolehkan untuk variabeltergantung pada tipe data-nya
• Tipe data mende:nisikan himpunan nilai-
nilai tertentu, misalnya – Tipe data integer himpunan nilai yang terdiri
atas bilangan bulat negati), , positi)!
– Tipe data boolean himpunan nilai yang terdiri
atas nilai true dan )alse
"/0"0*+./"Pengenalan Teknologi In)ormasi
B ?
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 19/64
8enis Tie Data (1%
• Tipe data rimitif atau tipe dasar – Disediakan oleh bahasa pemrograman
*+./"Pengantar Teknologi In)ormasi B
!! Domain 4ilai
bool Boolean true @ G )alse @ int Integer"bilangan bulat bilangan bulat negati),
, bilangan bulat positi) &ontoh G -44G 111G
Hoat Bilangan riil, %ontoh 3'4G 4'LA
%har &hara%ter karakter"huru), ditandai dengankutip tunggalG&ontoh 6NG NG bN
string *umpulan karakter"huru), ditandai dengankutip tunggal dalam &AA!&ontoh Q%Q%QJ
"/0"0 1
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 20/64
ontoh Penentuan Tie Data ariael
+mur
*ota
;ama
Suhu
2uas
BeratBada
n;IM
*+./"Pengantar Teknologi In)ormasi B
Integer %ontoh /5G 44G 35
String, %ontoh 8akartaJG BandungJ
String, %ontoh BudiJG 6liJ
Integer atau Hoat, %ontoh 3.'5G Integer atau Hoat, %ontoh 4G 43'5
Integer atau Hoat, %ontoh 0'5G .5
Integer atau stringK, %ontoh5?/
"/0"0 /
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 21/64
8enis Tie Data (2%
• Tipe data entukan " komosit " re$ord
– Tidak tersedia se%ara otomatis, harus dibuat olehprogrammer
– Dibentuk dari gabungan tipe dasar
– &ontoh
*+./"Pengantar Teknologi In)ormasi B
!!
Deklarasi type *6M+S! t"pedef struct .
int 6; int "; Point;t"pedef struct . string 74; string 7ama;
a&asisa;
Deklarasi variabel*6M+S!
Point P;a&asisa ;
"/0"0 /
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 22/64
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 23/64
Konstanta
• Berbeda dengan ariable, suatu konstanta tidakoleh diuah nilainya
• &ontoh
%onst Hoat PI @ 3'45%onst int nilai @
• Pemakaian yang salah
PI @ 44'5nilai @ 5
KU1072/Pengantar Teknologi Informasi B
Keduan5a salah karena PI
dan nilai sudah ditandaiseagai konstanta dengannilai 9?1;1<@ dan 1000
&adi nilain5a tidak olehdiuah
"/0"0 /3
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 24/64
*)+,-IT'*.
*ssignment AksresiInut/,utut
*ksi Sekuensial
*+./"Pengantar Teknologi In)ormasi B"/0"0 /4
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 25/64
*lgoritma
• 6dalah bagian program dalam bentuk teksalgoritmik yang berisi instruksi ataupemanggilan aksi
• Teks algoritmik tsb' dapat berupa – Perintah dasar Input"Output, assignment
– Perintah perintah yang berurutan
– 6nalisis kasus (ika-maka!
– PengulanganR dll'
• Dalam Bahasa &AA, setiap instruksi ditandaidengan semi%olon"titik koma! di akhir instruksi – &ontoh $in CC *
KU1072/Pengantar Teknologi Informasi B"/0"0 /5
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 26/64
Pemerian 4ilai
• Suatu besaran dengan tipe tertentu!,misalnya variabel, yang telah dikenaldapat diberi nilai/harga
• Pemberian nilai – Pemberian nilai langsung atau disebut
sebagai assignment • &ontoh * 10
– Diba%a dari piranti masukan perintahinput!
• &ontoh $in CC *
KU1071/Pengantar Teknologi Informasi
A/Sem 1 2011-2012
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 27/64
*ssignment
• Assignment Pemberian nilai suatuvariabel
• >uas kiri harus Eariale
• >uas kanan haruseksresi/nilai/Eariael 5ang sudah &elas nilain5a
KU1072/Pengantar Teknologi Informasi B
!!
<3uasiri> = <3uasanan>;
9onto&-i = 8';7ama = :a"a; = i + 8';
;ilai di-assigndenganekspresi
"/0"0 /.
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 28/64
Aksresi
• Operasi yang bisa diberlakukan tergantung padatie data
• Struktur umum operasi biner!
• Tipe data hasil operasi tergantung pada tipe dataoperan
• Operan tidak hanya berupa nilai"variable, bisaberupa ekspresi
• 8enis – Lkspresi iner / operan, %ontoh operator - " and or
– Lkspresi uner operan, %ontoh operator not
"/0"0*+./"Pengenalan Teknologi In)ormasi
B /?
7operan9 7operator9 7operan/9
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 29/64
8enis Aksresi
!!
Aksresi *ritmatika. operan numerik integer"real!, hasilnumerik integer"real!
A + B6 + "P ? @ + 3/S
Aksresi -elasional operannumerik integer"real!, hasilboolean
A < B == ,otal >= nilai
Aksresi )ogika operan boolean,hasil boolean
A B9 CC B
*+./"Pengantar Teknologi In)ormasi B"/0"0 /1
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 30/64
,erasi ada nilai suatu tie data
• Operasi perhitungan akan memerlukan
operator seperti 6! 6= 6F dan6/ tambah, kurang, kali dan bagi! untuk
melakukan kalkulasi• Operasi AJ pada tipe data bukan numerik
memiliki arti yang berbeda – &ontoh =alo A 6pa kabar =alo 6pa
kabarJ
• Tidak semua operator dapat digunakanuntuk tipe data numerik'
– &ontoh =alo 6pa kabar
*+./"Pengantar Teknologi In)ormasi B"/0"0 3
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 31/64
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 32/64
Inut/,utut (1%
• Perintah Input pemberian nilai Eariaeldari piranti masukan, misal keyboard diba%a atas masukan dari pengguna
Perintah di &AA $in&ontoh
$in CC * "" mengisi nilai 6 dengan masukandari
"" keyboard"pengguna
"/0"0*+./"Pengenalan Teknologi In)ormasi
B 3/
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 33/64
Inut/,utut (2%
• Perintah output penulisan nilaivariabel"konstanta"hasil ekspresi! kepiranti keluaran, misal monitor
Perintah di &AA $out&ontohcout << A; // menulis isi $aria%el A e la"ar#
// dia&iri enter
cout << 45ello6; // menulis Dello e la"arcout << A 7; // menulis &asil peralian AE
cout << $"; // menulis nilai onstanta P4
"/0"0*+./"Pengenalan Teknologi In)ormasi
B 33
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 34/64
)atihan=1
• Buatlah program yang menampilkan hasilperhitungan luas lingkaran berdasarkanmasukan nilai (ari-(ari
*+./"Pengantar Teknologi In)ormasi B"/0"0 34
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 35/64
'enghitung )uas
)ingkaran("lo#$hart%
"/0"0 *+./"Pengantar Teknologi In)ormasi B 35
Mulai
input(ari(ari!
luas @ 3'4 (ari(ari (ari(ari
outputluas!
Selesai
$rogram Ditung*uas*ingaran// eng&itung luas lingaran// %erdasaran masuan FariGFari
KAMUS float FariFari; float luas;
ALG!"MA // *i&at floc&art
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 36/64
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 37/64
*lternatif.
'enghitung )uas)ingkaran("lo#$hart%
"/0"0 *+./"Pengantar Teknologi In)ormasi B 3.
Mulai
input(ari(ari!
luas @ PI (ari(ari (ari(ari
outputluas!
Selesai
$rogram Ditung*uas*ingaran// eng&itung luas lingaran// %erdasaran masuan FariGFari
KAMUS const ,loat $" & 83-7-; float FariFari; float luas - real;
ALG!"MA // *i&at floc&art
'enghitung )uas )ingkaran (!!% =
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 38/64
6lgoritma
Pende:nisian variabel
Pende:nisian konstanta
'enghitung )uas )ingkaran (!!% *lternatif
KU1072/Pengantar Teknologi Informasi B
// Program Ditung*uas*ingaran
// eng&itung luas lingaran %erdasaran FariG
FariHinclude <iostream>
using namespace std;
int main()
. // A0S const float P4 = I58E8;
float FariFari;
float luas;
// A*1234,A cin >> FariFari;
luas = P4 FariFari FariFari;
cout << luas << endl;
return ';
"/0"0 3?
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 39/64
)atihan=2
• Buatlah program untuk
menghitung luaslingkaran berdasarkanmasukan alas dantinggi
KU1072/Pengantar Teknologi Informasi B"/0"0 31
$rogram 5itungLuasSegitiga// eng&itung luas segitiga// %erdasaran masuan alasdan// tinggi segitiga
KAMUS float alas# tinggi; float luas;
ALG!"MA // li&at floc&art
Mulai
inputalas!Inputtinggi
!
luas @ '5 alas tinggi
outputluas!
Selesai
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 40/64
'enghitung )uas Segitiga (!!%
*+./"Pengantar Teknologi In)ormasi B"/0"0 4
// Program Ditung*uasSegitiga// eng&itung luas segitiga %erdasaran alas dan tinggin"a
Hinclude <iostream>using namespace std;
int main(). // A0S ,loat alas; ,loat tinggi; ,loat luas;
// A*1234,A cin >> alas; cin >> tinggi;
luas & .3 alas tinggi;
cout << Luas << endl;
return ';
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 41/64
)atihan=9
• Buat program menghitung rata-rata daritinggi badan 5 anak – Program akan menerima masukan data tinggi
badan untuk 5 orang anak – *emudian program akan menghitung tinggirata-rata dari ke lima anak tersebut
KU1072/Pengantar Teknologi Informasi B"/0"0 4
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 42/64
'enghitung Tinggi -ata=-ata("lo#$hart%
$rogram inggi!ata!ata// eng&itung tinggirataG// rata ana
KAMUS int t8# t# tI# tE#t; float ratarata;
ALG!"MA // li&at floc&art
"/0"0 *+./"Pengantar Teknologi In)ormasi B 4/
Mulai
inputt,t/, t3, t4,
t5!
ratarata @tAt/At3At4At5!"5
outputratarata!
Selesai
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 43/64
'enghitung Tinggi -ata=-ata (!!%
*+./"Pengantar Teknologi In)ormasi B
// Program ,inggi3ata3ata// Ditung tinggi rataGrata ana
Hinclude <iostream>using namespace std;int main(). // A0S
int tinggi8# tinggi# tinggiI# tinggiE# tinggi; float ratarata; // A*1234,A cin >> tinggi8; cin >> tinggi; cin >> tinggiI; cin >> tinggiE; cin >> tinggi;
ratarata = (tinggi8 + tinggi + tinggiI +tinggiE +tinggi)/; cout << ratarata << endl; return ';
"/0"0 43
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 44/64
DeGnisi *ksi Sekuensial
• 6ksi sekuensial
– sederetan instruksi primiti) dan"atauaksi yang akan dilaksanakan
dieksekusi! oleh komputer berdasarkanurutan penulisannya
– Setiap aksi akan mengubah status dariprogram• 8adi setiap aksi sekuensial harus ada a$al
dan akhir'
• atau dengan kata lain suatu program harusdimulai dan suatu ketika harus berakhir
– Program yang tidak pernah berhenti adalah*+./"Pengantar Teknologi In)ormasi B"/0"0 44
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 45/64
Penulisan untuk Instruksi Sekuensial
• Instruksi ditulis terurut sesuai penulisanper baris
• Setiap instruksi selalu diakhiri dengantanda titik koma – 8adi dalam satu baru dapat terdiri dari lebih
dari instruksi'
*+./"Pengantar Teknologi In)ormasi B"/0"0 45
ontoh aksi sekuensial
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 46/64
ontoh aksi sekuensial
*+./"Pengantar Teknologi In)ormasi B
/ conto& asi seuensialper %aris /
int main()
. / amus /
int i;
float 6;
/ Algoritma /
cin >> i;
6 = 8''5K;
cout << 6 << endl;
cout << i << endl;
return ';
/ conto& asi seuensial dg titi oma/
int main()
. / amus /
int i;
float 6;
/ Algoritma /
cin >> i ; 6 = 8''5K;
cout << 6 << endl; cout << i <<endl;
return ';
"/0"0 40
ontoh aksi sekuensial
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 47/64
*+./"Pengantar Teknologi In)ormasi B
ontoh aksi sekuensial
/ conto& asi seuensialper %aris /
int main()
. / amus /
int i;
float 6;
/ Algoritma /
cin >> i;
6 = 8''5K;
cout << 6 << endl;
cout << i << endl;
return ';
/ conto& asi seuensial dg titi oma/
int main()
. / amus /
int i;
float 6;
/ Algoritma /
cin >> i ; 6 = 8''5K;
cout << 6 << endl; cout << i <<endl;
return ';
Perhatikan bah$a keduanyamemliki urutan eksekusi yangsama dan (uga hasil eksekusiyang identik'Perbedaannya hanyalah di %arapenulisannya' 'ana 5ang leih
aik enulisann5aH"/0"0 4.
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 48/64
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 49/64
Penguahan urutan eksekusi 5angtidak menguah hasil eksekusi
*+./"Pengantar Teknologi In)ormasi B
// conto& asi seuensial per// %aris
int main() .
// A0S
int i;
float 6;
// A*1234,A
cin >> i;
6 = 8''5K;
cout << 6 << endl;
cout << i << endl;
return ';
// conto& asi seuensial per// %aris
int main() .
// A0S
float 6;
int i;
// A*1234,A
6 = 8''5K;
cin >> i;
cout << 6 << endl;
cout << i << endl;
return ';
"/0"0 41
P h t k k i
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 50/64
Penguahan urutan eksekusi 5angmenguah hasil eksekusi
*+./"Pengantar Teknologi In)ormasi B
/ conto& asi seuensial per%aris /
int main()
.
/ amus /
int i; float 6;
/ Algoritma /
cin >> i;
6 = 8''5K;
cout << 6 << endl;
cout << i << endl;
return ';
/ conto& asi seuensial per%aris /
int main()
.
/ amus /
float 6; int i;
/ Algoritma /
6 = 8''5K;
cin >> i;
cout << i << endl;
cout << 6 << endl;
return ';
"/0"0 5
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 51/64
)atihan=;.
'enghitung 8arak
• Buatlah program untuk menghitung (arakberdasarkan masukan ke%epatan dan
$aktu• Dekomposisi masalah
– Program menerima masukan ke%epatan
– *emudian program menerima masukan $aktu – 2alu program akan melakukan perhitungan
(arak
– *emudian menampilkan hasil perhitungan
*+./"Pengantar Teknologi In)ormasi B"/0"0 5
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 52/64
'enghitung 8arak
("lo#$hart%
$rogram 5itung9ara*
// eng&itung Fara%erdasaran// masuan ecepatan ($) dan// atu (t)
KAMUS
float $# t# s;ALG!"MA // li&at floc&art
"/0"0 *+./"Pengantar Teknologi In)ormasi B 5/
Mulai
inputv, t!
s @ v t
outputs!
Selesai
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 53/64
'enghitung 8arak (!!% (2%
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 54/64
'enghitung 8arak (!!% (2%
*+./"Pengantar Teknologi In)ormasi B"/0"0 54
// Program DitungJara
// eng&itung Fara %erdasaran masuan
// ecepatan ($) dan atu (t)Hinclude <iostream>
using namespace std;
int main()
. // A0S
int Fara# $# t;
// A*1234,A
cout << :ecepatan = :;
cin >> $;
cout << :atu = :;
cin >> t;
Fara = $ t;
cout << :Jara = : << Fara << endl;
return ';
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 55/64
)atihan=<.
8umlah 2 Pe$ahan
• Buat program yang menerima masukan /pe%ahan dan menghitung pen(umlahannya
• Spesi:kasi program – Program menerima masukan pe%ahan pertama
berupa pembilang dan penyebut
– *emudian program menerima pe%ahan kedua
– 2alu program akan melakukan pen(umlahan
– *emudian menampilkan hasilnya berupapembilang dan penyebut hasil pen(umlahan
*+./"Pengantar Teknologi In)ormasi B"/0"0 55
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 56/64
)angkah Solusi (1%
• Program menerima masukan pe%ahanpertama berupa pembilang dan penyebut
input(pem%ilang8);
input(pen"e%ut8)
• *emudian program menerima pe%ahan
keduainput(pem%ilang);
input(pen"e%ut);
*+./"Pengantar Teknologi In)ormasi B"/0"0 50
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 57/64
)angkah Solusi (2%
• 2alu program akan melakukan pen(umlahan
pem%ilangI =
pem%ilang8 pen"e%ut + pem%ilang pen"e%ut8;
pen"e%utI = pen"e%ut8 pen"e%ut;
• *emudian menampilkan hasilnya berupapembilang dan penyebut hasil pen(umlahan
output(pem%ilangI);
output(pen"e%utI);
*+./"Pengantar Teknologi In)ormasi B
"/0"0 5.
8umlah 2 Pe$ahan Mulai
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 58/64
8umlah 2 Pe$ahan("lo#$hart%
$rogram 9umla:$eca:an;// eng&itung pem%ilang dan// pen"e%ut peca&an dari// penFumla&an dua %ua&peca&an// "ang dieta&ui pem%ilangdan // pen"e%utn"a
KAMUS int pem%ilang8#pem%ilang#
pem%ilangI; int pen"e%ut8# pen"e%ut#
pen"e%utI;
ALG!"MA . li&at floc&art
"/0"0 *+./"Pengantar Teknologi In)ormasi B 5?
Mulai
inputpembilang!
inputpenyebut!
inputpembilang/!
inputpenyebut/!
pem%ilangI = pem%ilang8 pen"e%ut +pem%ilang pen"e%ut8pen"e%utI = pen"e%ut8 pen"e%ut
outputpembilang
3!outputpenyebut3!
Selesai
// Program Jumla&Peca&an
// eng&itung pem%ilang dan pen"e%ut peca&an dari penFumla&an
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 59/64
*+./"Pengantar Teknologi In)ormasi B"/0"0 51
// eng&itung pem%ilang dan pen"e%ut peca&an dari penFumla&an
// dua %ua& peca&an "ang dieta&ui pem%ilang dan pen"e%utn"a
Hinclude <iostream>
using namespace std;
int main(). // A0S
int pem%ilang8# pem%ilang# pem%ilangI;
int pen"e%ut8# pen"e%ut# pen"e%utI;
// A*1234,A
cin >> pem%ilang8; cin >> pen"e%ut8;
cin >> pem%ilang;
cin >> pen"e%ut;
pem%ilangI = pem%ilang8 pen"e%ut + pem%ilang
pen"e%ut8; pen"e%utI = pen"e%ut pen"e%ut8;
cout << pem%ilangI << endl;
cout << pen"e%utI << endl;
return ';
8umlah 2 Pe$ah(!
*lternatif.
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 60/64
*lternatif. 8umlah 2 Pe$ahan
("lo#$hart%$rogram 9umla:$eca:an. 555
KAMUS
t0pede, struct { int pemilang;
int pen0eut; 2 $eca:an; // $aria%el Peca&an P8# P# PI;
ALG!"MA // li&at floc&art
"/0"0 *+./"Pengantar Teknologi In)ormasi B 0
Mulai
inputP!inputP/!
PI5pem%ilang -= P85pem%ilang P5pen"e%ut + P5pem%ilang P85pen"e%utPI5pen"e%ut -= P85pen"e%ut P5pen"e%ut
outputP3!
Selesai
// Program aliPeca&an// eng&itung pem%ilang dan pen"e%ut peca&an dari peralian
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 61/64
*+./"Pengantar Teknologi In)ormasi B"/0"0 0
// eng&itung pem%ilang dan pen"e%ut peca&an dari peralian// dua %ua& peca&an "ang dieta&ui pem%ilang dan pen"e%utn"aHinclude <iostream>using namespace std;// A0S
t"pedef struct . int pem%ilang;
int pen"e%ut; Peca&an;int main() . // A0S
Peca&an P8# P# PI;
// A*1234,A cin >> P85pem%ilang; cin >> P85pen"e%ut; cin >> P5pem%ilang; cin >> P5pen"e%ut;
PI5pem%ilang = P85pem%ilangP5 pen"e%ut +P5pem%ilangP85pen"e%ut; PI5pen"e%ut = P85pen"e%ut P5pen"e%ut;
cout << PI5pem%ilang; cout << PI5pen"e%ut;
return ';
8umlah 2 Pe$aha(!!
*lternati
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 62/64
*+./"Pengantar Teknologi In)ormasi B
Soal=1
• Buatlah sebuah program yang memba%adari keyboard – Pan&ang dari suatu persegi empat, misalnya
,
– )ear dari suatu persegi empat, misalnya l• 6sumsikan masukan pan(ang dan lebar
selalu 9 • Pan(ang dan lebar adalah bilangan real
• Selan(utnya program menuliskan ke layarluas persegi empat, misalnya 2PS, yangdihitung dengan rumus 2PS @ p l
"/0"0 0/
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 63/64
Soal=2
• Sebuah program yang mengelola type bentukanoint sebagai berikut t0pe point - < - integer; . a%sis
- integer . ordinat >
• Buatlah program yang memba%a dua buah point,misalnya P dan P/ dan tuliskan (arak antara keduapoint tersebut
• >umus perhitungan (arak / point
• Cunakan instruksi sYrt ! untuk perhitungan akarkuadrat dan untuk perhitungan kuadrat
*+./"Pengantar Teknologi In)ormasi B"/0"0 03
2
21
2
21 )()( y y x x −+−
8/9/2019 KU1072 W002 PendahuluanPemrograman
http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 64/64
Soal=9
• Buatlah sebuah program yang menerimamasukan / buah 8am dalam (am, menit, dandetik!, misalnya 81 dan 82 dan menghitungselisih di antara keduanya dalam (am, menit,
detik!• 6sumsikan 8 lebih a$al atau sama dengan 8/
• Misalnya 8 @ / dan 8/ @ 3 makaselisihnya adalah (am menit detik!
• Petun(uk +ntuk mengubah (am men(adi (umlahdetik gunakan rumus (am 30 A menit 0A detik