KU1072 W002 PendahuluanPemrograman

64
KU1072/Pengenalan Teknologi Informasi B  T ahap T ahun Pertama Bersama Institut Teknologi Bandung Struktur Dasar Program Prosedural (dalam Bahasa !! ! "lo#$hart%  T im P enyusun Materi PTI- B

Transcript of KU1072 W002 PendahuluanPemrograman

Page 1: 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

Page 2: KU1072 W002 PendahuluanPemrograman

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 /

Page 3: KU1072 W002 PendahuluanPemrograman

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

Page 4: KU1072 W002 PendahuluanPemrograman

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

Page 5: KU1072 W002 PendahuluanPemrograman

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

Page 6: KU1072 W002 PendahuluanPemrograman

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

Page 7: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 7/64

Page 8: KU1072 W002 PendahuluanPemrograman

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

Page 9: KU1072 W002 PendahuluanPemrograman

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

Page 10: KU1072 W002 PendahuluanPemrograman

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

Page 11: KU1072 W002 PendahuluanPemrograman

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

Page 12: KU1072 W002 PendahuluanPemrograman

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 /

Page 13: KU1072 W002 PendahuluanPemrograman

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

Page 14: KU1072 W002 PendahuluanPemrograman

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

Page 15: KU1072 W002 PendahuluanPemrograman

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

Page 16: KU1072 W002 PendahuluanPemrograman

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

Page 17: KU1072 W002 PendahuluanPemrograman

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 .

Page 18: KU1072 W002 PendahuluanPemrograman

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 ?

Page 19: KU1072 W002 PendahuluanPemrograman

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

Page 20: KU1072 W002 PendahuluanPemrograman

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 /

Page 21: KU1072 W002 PendahuluanPemrograman

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 /

Page 22: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 22/64

Page 23: KU1072 W002 PendahuluanPemrograman

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

Page 24: KU1072 W002 PendahuluanPemrograman

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

Page 25: KU1072 W002 PendahuluanPemrograman

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

Page 26: KU1072 W002 PendahuluanPemrograman

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

Page 27: KU1072 W002 PendahuluanPemrograman

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 /.

Page 28: KU1072 W002 PendahuluanPemrograman

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

Page 29: KU1072 W002 PendahuluanPemrograman

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

Page 30: KU1072 W002 PendahuluanPemrograman

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

Page 31: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 31/64

Page 32: KU1072 W002 PendahuluanPemrograman

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/

Page 33: KU1072 W002 PendahuluanPemrograman

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

Page 34: KU1072 W002 PendahuluanPemrograman

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

Page 35: KU1072 W002 PendahuluanPemrograman

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

Page 36: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 36/64

Page 37: KU1072 W002 PendahuluanPemrograman

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 (!!% =

Page 38: KU1072 W002 PendahuluanPemrograman

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?

Page 39: KU1072 W002 PendahuluanPemrograman

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

Page 40: KU1072 W002 PendahuluanPemrograman

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 ';

Page 41: KU1072 W002 PendahuluanPemrograman

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

Page 42: KU1072 W002 PendahuluanPemrograman

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

Page 43: KU1072 W002 PendahuluanPemrograman

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

Page 44: KU1072 W002 PendahuluanPemrograman

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

Page 45: KU1072 W002 PendahuluanPemrograman

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

Page 46: KU1072 W002 PendahuluanPemrograman

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

Page 47: KU1072 W002 PendahuluanPemrograman

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.

Page 48: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 48/64

Page 49: KU1072 W002 PendahuluanPemrograman

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

Page 50: KU1072 W002 PendahuluanPemrograman

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

Page 51: KU1072 W002 PendahuluanPemrograman

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

Page 52: KU1072 W002 PendahuluanPemrograman

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

Page 53: KU1072 W002 PendahuluanPemrograman

8/9/2019 KU1072 W002 PendahuluanPemrograman

http://slidepdf.com/reader/full/ku1072-w002-pendahuluanpemrograman 53/64

'enghitung 8arak (!!% (2%

Page 54: KU1072 W002 PendahuluanPemrograman

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 ';

Page 55: KU1072 W002 PendahuluanPemrograman

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

Page 56: KU1072 W002 PendahuluanPemrograman

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

Page 57: KU1072 W002 PendahuluanPemrograman

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

Page 58: KU1072 W002 PendahuluanPemrograman

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

Page 59: KU1072 W002 PendahuluanPemrograman

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.

Page 60: KU1072 W002 PendahuluanPemrograman

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

Page 61: KU1072 W002 PendahuluanPemrograman

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

Page 62: KU1072 W002 PendahuluanPemrograman

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/

Page 63: KU1072 W002 PendahuluanPemrograman

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  −+−

Page 64: KU1072 W002 PendahuluanPemrograman

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