• Tidak ada hasil yang ditemukan

DASAR PEMROGRAMAN

N/A
N/A
Protected

Academic year: 2018

Membagikan "DASAR PEMROGRAMAN"

Copied!
565
0
0

Teks penuh

(1)

DASAR PEM ROGRAM AN

(2)

PENGANTAR

Tujuan umum matakuliah:

M embekali mahasiswa cara berpikir dalam pemecahan

persoalan dengan menggunakan beberapa paradigma

pemrograman, kemudian mahasiswa memiliki kemampuan membuat menyelesaikan masalah pemrograman t anpa t ergant ung pada bahasa pemrograman apapun.

M embekali mahasiswa dengan modul dasar dari algorit ma yang sering dipakai dalam pemrograman, t ermasuk dalam mengeksekusi program t ersebut dengan salah sat u bahasa

pemrograman yang sederhana, sebagai alat unt uk

(3)

PENGANTAR

Tujuan khusus mata kuliah:

M ahasisw a diharapkan m am pu unt uk :

M em ecahkan masalah dengan beberapa paradigm a pemrogram an dan m enuliskan spesifikasi dan algorit m anya t anpa t ergant ung pada bahasa pem rogram an apapun.

M enulis algorit m a dari suat u m asalah dengan m enggunakan m et odologi dan skem a st andard yang t erst rukt ur.

M enulis program yang baik sesuai dengan kriteria dalam bahasa pemrogram an yang ada, dengan m enggunakan at uran t ranslasi yang diperkenankan.

M enghasilkan program yang t erst rukt ur walaupun bahasa pem rogram annya bukan bahasa yang t erst rukt ur.

(4)

KEPUSTAKAAN

• Aho, Hopcroft , Ullman, " Data St ruct ures and Algorit hms" , Prent ice Hall, 1987.

• Knut h, D.E., " The Art of Computer Programming" , Vol. 1 : " Fundamentals Algorit ms" , Addison Wisley, 1968.

• Sedgew ick R., " Algorit hms" , Addison Wisley, 1984.

• Wirt h, N., " Algorit hms & Data St uct ures" , Prent ice Hall, 1986.

M unir, R dan Lidya, L. 2001. Algorit ma dan Pemrograman Dalam Bahasa Pascal dan C. Bandung: Informat ika.

Kadir, A dan Heriyanto. 2005. Algorit ma Pemrograman M enggunakan C++. Yogyakarta: Penerbit Andi.

Pranata, A. 2005. Algorit ma dan Pemrograman. Yogyakarta: Penerbit Graha Ilmu.

• P.J. Deitel, H.M . Deitel, “ C How to Program”, Pearson Internat ional Edit ion Fift h Edit ion, 2007.

• Stephen Prata, “ C Primer Plus”, SamsPublishing Fift h Edit ion, 2005.

• Fat hul Wahid, “ Dasar-Dasar Algorit ma & Pemrograman”, Penerbit Andi, Yogyakarta, 2004.

• Ellis Horow it z, Sartaj Sahni, Sangut hevar Rajasekaran. “ Computer Algorit hms / C++, Computer Science Press. 1998.

• Thomas H Cormen, Charles E Leiserson, Ronald L. “ Int roduct ion to Algorit hms”,2ndEdit ion. The M IT

Press. New York. 1990.

(5)

SISTEM PERKULIAHAN

1. Tugas M andiri

20%

2. UTS

30%

3. UAS

50%

(6)

PENGERTIAN

Pemrograman berkait an dengan komput er, yang

digunakan

unt uk

membant u

menyelesaikan

persoalan.

St rat egi penyelesaian masalah oleh komput er

mest i ditanamkan pada mesin t ersebut oleh

manusia

melalui

suat u

program

oleh

suat u

bahasa pemrograman.

Unt uk menghasilkan program, manusia mest i

(7)

PENGERTIAN

Program

merupakan pernyatan yang disusun

menjadi sat u kesat uan prosedur yang berupa

urutan langkah yang disusun secara logis dan

sist emat is unt uk menyelesaikan masalah.

Bahasa pemrograman adalah prosedur penulisan

program, umumnya t erdiri dari 3 fakt or ut ama:

Sint aks,

merupakan

at uran

penulisan

bahasa

pemrograman.

Semant ik, adalah art i at au m aksud yang t erkandung

pada st at emen.

Kebenaran logika, adalah berhubungan benar t idaknya

(8)

PENGERTIAN

(9)

PENGERTIAN

Tujuan pengajaran pemrograman m embent uk

mahasiswa

menjadi

perancang

(designer)

program.

(10)

PENGERTIAN

Pada prakt eknya, suat u rancangan harus dapat

di-kode,

unt uk

dieksekusi

oleh

m esin.

Sehingga belajar pemrograman dan bahasa

program saling berkait an sat u sama lain.

(11)

PENGERTIAN

Belajar memrogram dan belajar bahasa program

mempunyai t ingkat an kesulit an yang berbeda.

Belajar memrogram lebih bersifat pemahaman

(12)

PENGERTIAN

Belajar bahasa program adalah bagaimana cara

memakai

suat u

bahasa,

at uran

sint aks

(t at abahasa), set iap inst ruksi yang ada dan t at a

cara pengoperasian kompilat or atau int erpret er

bahasa yang bersangkut an pada mesin t ert ent u.

Belajar bahasa program lebih kepada ket rampilan

dari

pada

analisis

dan

sint esis,

yang

(13)

PENGERTIAN

Bahasa

M esin

,

m erupakan

bahasa

pem ograman

pada

mesin

yang

hanya

mengenal 2 keadaan yang berlawanan yait u

keadaan 0 dan 1 at au benar at au salah.

Bahasa Tingkat Rendah

, at au dikenal juga

M nemonics (pembant u unt uk mengingat )

Bahasa Assembler

Bahasa Tingkat Tinggi

(14)

PENGERTIAN

(15)

PENGERTIAN

Paradigma dalam pemrograman:

Prosedural

Fungsional

Deklarat if

Berorient asi Objek

Konkuren

Relasional

(16)

PENGERTIAN

• Cont oh bahasa-bahasa pemrograman yang ada :

– 1. Prosedural : Algol, Pascal, Fort ran, Basic, Cobol, C ...

– 2. Fungsional : LOGO, APL, LISP

– 3. Deklarat if/ Lojik : Prolog

– 4. Object oriented murni: Smalltalk, Eifel, Jaca, C++..

– 5. Konkuren : OCCAM , Ada, Java

– 6. Relasional: SQL pada basisdata relasional

• Paradigma Objek m ulai ditam bahkan pada bahasa-bahasa yang ada. Pemroses bahasa Pascal dan C versi terbaru dilengkapi dengan fasilit as terorientasi objek, misalnya Turbo Pascal (m ulai versi 5.5) pada komput er pribadi (PC) dan C++. Ada beberapa versi LISP dan Prolog yang juga memasukkan aspek OO.

• Suat u program dalam bahasa pemrograman tert ent u akan diproses oleh pemroses bahasanya. Ada dua kategori pemroses bahasa, yait u kompilat or dan interpreter.

(17)

Paradigma Pemrograman Prosedural

Paradigm a ini didasari oleh konsep mesin Van

Neumann,

dimana

sekelompok

t empat

penyim panan

(M emori),

yang dibedakan

menjadi memori inst ruksi dan memori dat a,

masing-masing dapat diberi nama dan harga

Inst ruksi akan dieksekusi sat u per sat u secara

sekuensial oleh sebuah pemroses t unggal

(18)

Paradigma Pemrograman Prosedural

Program dalam paradigma ini didasari pada

st rukt urisasi informasi dalam

m emori dan

manipulasi

dari

informasi

yang

disimpan

t ersebut

Program = Algorit ma + St rukt ur Dat a

(19)

Paradigma Pemrograman Fungsional

Paradigma ini didasari oleh konsep pemet aan dan

fungsi pada mat emat ika

Disini t idak dipermasalahkan memorisasi dan

st rukt ur data, t idak ada pemisahan ant ara dat a

dan

program

maupun

pengert ian

t ent ang

variabel

Semua kelakuan program adalah mat a rantai

(20)

Paradigma Pemrograman Fungsional

Pada pemrogram an fungsional, pemrogram

t idak perlu lagi m enget ahui bagaim ana mesin

mengeksekusi

at au

bagaimana

informasi

disimpan

pada

memori,

nam un

hanya

memperhat ikan keadaan awal dan akhir saja

(21)

Paradigma Pemrograman Deklarat if

Paradigm a ini

didasari

oleh

pendefinisian

relasi ant ar individu yang dinyat akan sebagai

predikat

(22)

Paradigma Berorient asi Objek

Paradigma ini didasari oleh Kelas dan Objek

(23)

Paradigma Konkuren

Paradigma ini didasari oleh kenyataan bahw a

dalam keadaan nyat a, sebuah sist em komput er

harus menangani beberapa program (task) yang

harus

dieksekusi

bersama

dalam

sebuah

lingkungan

Paradigma konkuren, yang erat hubungannya

dengan

arsit ekt ur

perangkat

keras

yang

memungkinkan pemrosesan secara paralel atau

perangkat

lunak

sist em

t erdist ribusi

yang

(24)

Paradigma Relasional

(25)

APA ITU ALGORITM A?

Cara menyelesaikan suat u proses

Terdiri at as langkah-langkah yang t erdefinisi dengan

baik

Bisa dihit ung (computable) at au bisa diukur

(measurable)

M enerima input , menghasilkan out put

An algorit hm is a sequence of comput at ional st eps t hat

t ransform t he input int o t he out put

(26)

DEFINISI ALGORITM A M ENURUT

PAKAR

• M enurut Abu Ja’far M ohammad Ibn M usa Al Khoarismi:

“ Suat u met ode khusus unt uk menyelesaikan

suat u persoalan.”

• M enurut Goodman Hedet Niemi:

“ Urut -urut an t erbat as dari operasi-operasi

t erdefinisi dengan baik, yang masing-masing

membu-t uhkan memory dan wakt u yang

(27)

ALGORITM A

Algorit ma adalah cara yang dapat dit empuh

oleh komput er dalam mencapai suat u t ujuan,

t erdiri at as langkah-langkah yang t erdefinisi

dengan baik, menerima input , melakukan

proses, dan menghasilkan out put . M eskipun

t idak selalu, biasanya sebuah algorit ma

(28)

SYARAT CORRECTNESS

Sebuah algorit ma dikat akan BENAR (correct )

jika algorit ma t ersebut berhasil mengeluarkan

out put yang benar unt uk semua kemungkinan

input .

Bagaimana dengan 99% benar?

(29)

PSEUDOCODE

Adalah cara unt uk menuliskan sebuah

algorit ma secara high-level

Biasanya dit uliskan dengan kombinasi bahasa

Inggris dan not asi mat emat ika

Lebih t erst rukt ur daripada bahasa Inggris biasa

Tidak det il dibanding program

(30)

PSEUDOCODE

Kode-palsu

at au dalam

bahasa inggris lebih

dikenal sebagai pseudocode merupakan deskripsi

t ingkat t inggi informal dan ringkas at as

algorit ma

pemrograman

komput er

yang

menggunakan

konvensi

st rukt ural

atas

suat u

bahasa

(31)

CONTOH PSEUDOCODE (1)

Algorit ma unt uk menampilkan 7 buah

simbol #

1 for i=1 to 7 do

2 display ”#”

(32)

CONTOH PSEUDOCODE (2)

Algorit ma unt uk menghit ung Fakt orial

dari N

1 iTampung=1

2 for i=1 to N do

3 iTampung=iTampung*i

4 end for

(33)

CONTOH PSEUDOCODE (3)

Algorit ma unt uk menampilkan 8 bilangan Fibonacci

1 f1=0

2 f2=1

3 for i=1 to 8 do

4 iFibo=f1+f2

5 display ”Angka ke-”,i,” adalah

”,iFibo,NL

6 f1=f2

(34)

KOM PONEN PSEUDOCODE

• Variabel

– M erupakan tempat penyimpanan sebuah nilai

Perulangan (loop)

– Teknik for-do

– Teknik repeat -unt il

– Teknik w hile-do

Percabangan (branch)

– Teknik if-t hen

– Teknik select -case

• M odul

– Procedure / Sub

– Funct ion

(35)

VARIABEL

M erupakan t empat penyimpanan sebuah nilai

M emiliki nama

Dapat dimasukkan sebuah nilai

Dapat dipanggil nilainya

M enampung t ipe dat a t ert ent u

– Numerik

– Karakt er

– St ring

(36)

TEKNIK FOR-DO

• Perulangan berdasar :

– Variabel penent u perulangan

– Batas baw ah

– Batas at as

• Cont oh algorit ma menampilkan N bilangan Fibonacci pertama (pseudocode 2.9b)

1 f1=0 2 f2=1

3 for i=1 to N do 4 iFibo=f1+f2

5 display ”Angka ke-”,i,” adalah ”,iFibo,NL 6 f1=f2

(37)

TEKNIK REPEAT-UNTIL

Perulangan berdasarkan kondisi (t rue at au false)

• Kondisi diperiksa di akhir perulangan

• Perulangan t erjadi selama kondisi belum terpenuhi

• M inimal terjadi 1x perulangan

• Cont oh algorit ma menampilkan N bilangan Fibonacci pert ama

(38)

TEKNIK WHILE-DO

Perulangan berdasarkan kondisi (t rue at au false)

Kondisi diperiksa di awal perulangan

Perulangan t erjadi selama kondisi masih t erpenuhi

Bisa t erjadi 0 perulangan jika dari awal kondisi t idak t erpenuhi

(39)

TEKNIK IF-THEN

Percabangan berdasarkan kondisi (t rue at au false)

Terdapat 2 segmen, akan dieksekusi berdasarkan kondisi

• Cont oh algorit ma dengan if-t hen (pseudocode 2.13b)

1 if iUmur >= 17 then

2 display ”Anda boleh masuk”,NL 3 else

(40)

TEKNIK SELECT-CASE

Percabangan berdasarkan nilai sebuah variabel ordinal

Terdapat banyak segmen, akan dieksekusi berdasarkan kondisi

• Cont oh algorit ma dengan select -case (pseudocode 2.15)

1 display ”Masukkan jumlah sisi bangun : ” 2 read iSisi

3 switch iSisi

4 case 3 : display ”segitiga”,NL 5 case 4 : display ”kotak”,NL 6 case 5 : display ”segilima”,NL

(41)

NOTASI M ATEM ATIKA

Penjumlahan dan sifat -sifat nya

1.

2. Sifat Linearit as

(42)

DERET

1. Deret Arit mat ika

2. Deret Harmonis

(43)

LATIHAN

Buat lah sebuah pseudocode unt uk menampilkan

N bilangan pert ama secara t erbalik.

cont oh : 10, 9, 8, 7, 6, 5, 4, 3, 2, 1

Buat dengan menggunakan t eknik for-do!

Buat dengan menggunakan t eknik repeat -unt il!

Buat dengan menggunakan t eknik w hile-do!

Buat sebuah pseudocode yang akan menerima

sebuah bilangan X dari user. Tampilkan pesan

“ benar ” jika X habis dibagi 2, 3 atau 7 dan

(44)

REVIEW

Apa yang sudah dipahami?

(45)

Pert emuan 2

(46)

Lear ni ng Out comes:

Pada

akhi r

per t emuan

i ni ,

di har apkan

mahasi swa akan mampu :

(47)

Out line M at eri

Algoritma dan Pemrograman

Definisi Algoritma

Tahap Pengembangan algoritma

Penyajian algoritma

M enulis Speudocode

Contoh Algoritma dengan Pseudocode

M embuat Flow Chart

Contoh Algoritma dengan Flow Chart

Kriteria Algoritma Yang Baik

(48)

Rujukan

Brian W. Kernighan, Dennis M . Rit chie (1988). The C Programming Language, Second Edit ion, Prent ice Hall

Deit el, H.M . and Deit el, P.J. (2001). C HOW TO PROGRAM . 3rd edit ion. Prent ice Hall, NJ.

Got t fried, B.S. (1996). Schaum’s Out line Series. Theory and Problems of Programming w it h C. M cGraw Hill, NY.

Ngoen. Th. S. (2004). Pengant ar Algorit ma dengan Bahasa C.

Penerbit Salemba Teknika.

(49)

Definisi Algorit ma

Algorit ma adalah sekumpulan

langkah-langkah t erbat as unt uk mencari solusi suat u

masalah.

Berasal dari kat a algoris dan rit mis

. Awalnya

diungkapkan oleh Al Khowarizmi

.

Di pemrograman, algorit ma didefinisikan

sebagai met ode yang t erdiri dari

(50)

DEFINISI

Sintak E rr

Executable code: => Run

Output E rr

M ASALAH PEM ECAHAN SOLUSI / HASIL

(51)

DEFINISI

Sintak E rr

Executable code: => Run

Output E rr

DOKUM EN TASI Masalah:

Tentukan akar-akar dari suatu persamaan kwadrat.

Definisi:

Persamaan kwadrat : ax^2 + bx + c = 0

Data yg diperlukan :

Koefisien a, b dan c : tipe real

(52)

DEFINISI

Sintak E rr

Executable code: => Run

Output E rr

DOKUM EN TASI Model Matematika :

Rumus ABC

x1 = (-b + sqrt(b^2 - 4ac))/ 2a

x2 = (-b – sqrt(b^2 - 4ac))/ 2a

(53)

DEFINISI

Sintak E rr

Executable code: => Run

Output E rr

DOKUM EN TASI

Start

d = b^2 – 4ac

d < 0

Masukkan a,b,c

Cetak Pesan “Akar imajiner” x1= (-b+ sqrt(d))/2a

x2 = (-b-sqrt(d))/2a

Cetak : x1, x2

Y

(54)

DEFINISI

Sintak E rr

Executable code: => Run

Output E rr

DOKUM EN TASI

(55)

TAHAP PENGEM BANGAN ALGORITM A

Sintak E rr

Executable code: => Run

Output E rr

(56)

TAHAP PENGEM BANGAN ALGORITM A

Sintak E rr

Executable code: => Run

Output E rr

(57)

TAHAP PENGEM BANGAN ALGORITM A

Sintak E rr

Executable code: => Run

Output E rr

(58)

TAHAP PENGEM BANGAN ALGORITM A

Sintak E rr

Executable code: => Run

Output E rr

(59)

TAHAP PENGEM BANGAN ALGORITM A

Sintak E rr

Executable code: => Run

Output E rr

(60)

Penyajian Algorit ma

Algorit ma bisa dibuat dengan:

Teknik t ulisan sepert i : St ruct ure english dan

Pseudocode.

(61)

Pseudocode

Out line

dari sebuah program komput er

Dit ulis dalam bahasa Inggris at au Indonesia

sederhana

Kat a kunci (keyw ord) digunakan unt uk

(62)

Pseudocode

Enam operasi dasar komput er:

1. M enerima informasi (Input )

2. M enampilkan Informasi (Out put )

3. M elakukan perhit ungan arit met ika (Comput e)

4. M emberikan nilai ke suat u ident ifier (St ore)

5. M embandingkan dan M emilih (Compare)

(63)

1. M enerima Informasi

Sewakt u komput er menerima informasi at au

input

, maka st at ement yang biasa digunakan

adalah “ Read”, “ Get ”, “ Baca” ,” Input ” at au

“ KeyIn”

Cont oh:

Read Bilangan

Get kode_pajak

(64)

2. M enampilkan Informasi

Sewakt u komput er menampilkan informasi

at aupun out put , maka st at ement yang biasa

digunakan adalah “ Print ”, “ Writ e”, “ Put ”,

“ Out put ”, “ Display” at aupun “ Cet ak”

Cont oh:

Print “ ITP”

(65)

Unt uk melakukan operasi arit met ika digunakan

pseudocode berikut :

+ unt uk penjumlahan (add)

- Unt uk pengurangan (subt ract ) * Unt uk perkalian (mult iply)

/ Unt uk pembagian (divide) () Unt uk kurung

St at ement “ Comput e”, “ Calculat e” at aupun “ Hit ung”

juga dapat digunakan.

Cont oh:

Add number t o t ot al Tot al = Tot al + number

(66)

Ada t iga cara unt uk memberikan nilai ke dalam

variabel :

M emberikan nilai awal, menggunakan st at ement “ Init ialize” at au “ Set ”

M emberikan nilai sebagai hasil dari suat u proses, maka t anda “ =“ digunakan

Unt uk menyimpan suat u nilai maka st at ement “ Save” at au “ St ore” digunakan

Cont oh:

Set Count er t o 0

Tot al = Harga * Jumlah

(67)

Salah sat u operasi t erpent ing yang dapat dilakukan

komput er adalah membandingkan dan memilih salah

sat u alt ernat if solusi.

Keyw ord yang digunakan : “ IF”, “ THEN” dan “ ELSE”

Cont oh

IF Pilih=‘1’ THEN

Discount = 0.1 * harga ELSE

Discount = 0.2 * harga ENDIF

(68)

6. M elakukan pengulangan

Jika ada beberapa perint ah yang harus

diulang, maka dapat digunakan keyw ord

“ DOWHILE” dan “ ENDDO”.

Cont oh

DOWHILE bil < 10

cet ak bil

bil = bil +1

(69)

Cont oh Algorit ma dgn Pseudocode

Contoh : Algoritma M enggunakan Kalkulator

M ulai

Nyalakan kalkulat or

Kosongkan Kalkulat or

Ulangi

Input harga

Tekan t ombol Plus (+)

Sampai semua harga diinput

Tampilkan t ot al harga

M at ikan kalkulat or

(70)

Cont oh Algorit ma dgn Pseudocode

Contoh : Algoritma Berangkat Kuliah

M ulai

Bangun dari t empat t idur M andi Pagi

Sarapan Pagi

Pergi Ke Kampus Cari Ruang Kuliah

(71)

Cont oh Algorit ma dgn Pseudocode

Contoh : Algoritma Sarapan Pagi

M ulai

Ambil piring

M asukkan nasi dan lauk dalam piring

Ambil sendok dan garpu

Ulangi

Angkat sendok dan garpu

Ambil nasi dan lauk

Suapkan ke dalam mulut

Taruh sendok dan garpu

Kunyah

Sampai (nasi dan lauk habis) ATAU kekenyangan

Bereskan piring, sendok dan garpu

(72)

FLOW CHART

Terminat or, M ULAI, SELESAI

Proses

Pemilihan

Dokumen

Konekt or ant ar halaman

Konekt or

(73)

Cont oh Algorit m a dgn FLOW CHART

Cont oh Flow Chart Unt uk M encari Akar Persamaan Kwadrat

Start

d = b^2 – 4ac

d < 0

Cetak Pesan “Akar imajiner” x1= (-b+ sqrt(d))/2a

x2 = (-b-sqrt(d))/2a

Cetak : x1, x2

Y

T

(74)

Krit eria Algorit ma Yang Baik

M empunyai logika yang t epat unt uk memecahkan

masalah.

M enghasilkan

out put

yang benar dalam w akt u yang

singkat .

Dit ulis dengan bahasa baku t erst rukt ur sehingga t idak

menimbulkan art i ganda.

Dit ulis dengan format baku sehingga mudah

diimplement asikan kedalam bahasa pemrograman.

(75)

Teorema Terst rukt ur

Teorema t erst rukt ur memungkinkan unt uk

menulis program komput er hanya dengan

menggunakan t iga st rukt ur kont rol yait u:

(76)

1. Sequence

Sequence merupakan urut an pengerjaan dari

perint ah / st at ement pert ama sampai dengan

perint ah / st at ement t erakhir.

Umumnya bahasa pemrograman mempunyai

sequence (urut an pengerjaan dari perint ah /

(77)

Sequence

Cont oh:

Cet ak “ Jumlah M ahasiswa”

Set Jumlah t o 49

Cet ak “ Tambahan mahasiswa baru” Baca mhs_baru

Jumlah = Jumlah + mhs_baru Cet ak “ Jumlah M ahasiswa”

Cet ak jumlah

Penjelasan

– Urut an pengerjaan adalah mulai dari urut an pert ama sampai dengan urut an t erakhir, jika mhs_baru diisi dengan 2, maka jumlah yang

(78)

2. Select ion

St rukt ur Kont rol Select ion adalah

penggambaran sebuah kondisi dan pilihan

diant ara dua aksi.

St at ement Pert ama akan dikerjakan jika

kondisi bernilai benar, jika t idak maka akan

(79)

Select ion

Cont oh :

IF Hari=1 THEN Cet ak “ Senin” ELSE

Cet ak “ Bukan hari Senin”

Penjelasan

Tulisan “ Senin” akan dit ampilkan jika Hari bernilai 1, jika t idak maka t ulisan “ Bukan hari Senin” yang akan

(80)

3. Repet it ion

Beberapa st at ement / perint ah dapat diulang

dengan menggunakan st rukt ur kont rol

repet it ion

.

St at ement

/ perint ah akan t et ap diulang

(81)

Repet it ion

Cont oh:

Bint ang = 0

DOWHILE bint ang < 5 Cet ak bint ang

bint ang = bint ang + 1 ENDDO

Penjelasan:

Pert ama kali bint ang akan diisi dengan 0, set elah it u isi dari bint ang akan dicet ak sebanyak lima kali, sehingga

t ampilannya akan sebagai berikut :

(82)

Lat ihan

1.

Buat lah algorit ma menggunakan

pseudocode

unt uk menghit ung luas persegi panjang.

2.

Buat lah algorit ma menggunakan

pseudocode

unt uk mengubah jam dan menit yang diinput ke

dalam sat uan det ik.

3.

Buat lah algorit ma menggunakan

pseudocode

(83)

Lat ihan

4.

Buat lah algorit ma menggunakan

pseudocode

unt uk menghit ung luas lingkaran.

5.

Buat lah algorit ma menggunakan

pseudocode

(84)

Lat ihan

(85)

Pert emuan 3

(86)

Learning Out comes

Pada

akhir

pert emuan

ini,

diharapkan

mahasiswa akan mampu :

M enjelaskan

elemen

dan

st rukt ur

(87)

Out line M at eri

Pengant ar Bahasa C

Sejarah Bahasa C

Karakt er, Ident ifier, Keyw ord

Tipe Dat a, Konst ant a, Variabel

(88)

Sejarah Bahasa C

Dirancang oleh Denis M . Rit chie t ahun 1972 di Bell

Labs.

Pengembangan dari bahasa

BCPL

(M art in Richard,

1967) dan bahasa

B

(Ken Thompson, 1970)

Dibant u Brian W. Kernighan, Rit chie menulis buku

The C Programming Language

(1978). Dikenal

dengan nama

K-R C

at au

C klasik

.

(89)

M engapa C?

Flexibilit y : mendekat i low level language

namun mudah dimengert i.

Port abilit y : dipakai mulai dari komput er

mikro sampai superkomput er

Bahasa yang banyak digunakan dalam ilmu

komput er unt uk membuat O/ S dan

program aplikasi, dll.

(90)

St rukt ur Program

Bahasa C adalah salah sat u bahasa pemrograman yang t erst rukt ur

Bahasa C t erdiri dari fungsi-fungsi

Tidak ada perbedaan ant ara prosedur dengan fungsi

Set iap program C mempunyai sat u fungsi dengan nama “ main” (program ut ama).

Program akan dieksekusi dimulai dari st at ement pert ama pada fungsi “ main” t sb.

Huruf besar dengan huruf kecil diart ikan berbeda (case-sensit ive).

(91)

St rukt ur Program

Format penulisan fungsi main

(92)

St rukt ur Program

Sering dijumpai beberapa format penulisan fungsi main sepert i cont oh diat as, t et api t idak semua compiler

mengenalnya.

Penulisan fungsi main yang st andard sepert i cont oh No. 3 at au 4 diat as.

ret urn (0), menyat akan program exit secara normal.

Fungsi main dan juga fungsi yg lainnya jika t idak diberikan t ipe maka default nya int eger (int ). Pada cont oh diat as No. 3 dan 4 art inya sama.

Cont oh:

– dengan menggunakan compiler Turbo C 2.0 (DOS) dan M icrosoft Visual C++ (w indows), (2), (3) dan (4) => Success, t et api (1) warning

(93)

St rukt ur Program

Jika di kompilasi dengan Turbo C 2.0 program ini akan error, dgn Error M essage: Function printf should have a function prototype.

#include adalah sebuah direct ive/ arahan unt uk

memberitahu compiler bahw a funct ion protot ype unt uk fungsi print f ada pada header file

(94)

St rukt ur Program

Penulisan return 0; sama art inya dengan return (0);

#include <stdio.h>

File stdio.h akan dicari mulai dari directory tempat header file tersebut di-install. Jika tdk ada akan dilanjutkan mencarinya ke current / working directory.

(95)

St rukt ur Program

#include ”stdio.h”

File stdio.h akan dicari mulai dari current / working directory, dan jika tdk ada akan dilanjutkan mencarinya ke directory tempat header file tersebut disimpan pada saat menginstall compiler-nya.

Directive #include umumnya ditulis di aw al program

St yle penulisan (t ergant ung kesenangan programmer) :

(96)

Koment ar

M enggunakan pasangan / * dan * /

Digunakan agar program lebih mudah dibaca dan dimengert i

Diabaikan oleh compiler

Unt uk koment ar 1 baris cukup menggunakan t anda / / diawal baris

Cont oh program C sederhana :

/ *

(97)

Escape Sequences

\ xdd not asi hexadecimal

(98)

Karakt er

Program C dit ulis menggunakan subset karakt er ASCII

yait u:

Huruf besar A .. Z

Huruf kecil a .. z

Digit 0 .. 9

Karakt er khusus sepert i ‘! ’ , ‘& ’, ‘+’, ‘\ ’, ‘_’ dan sebagainya.

(99)
(100)

Ident ifier

Nama berbagai elemen program sepert i nama variabel, fungsi, konst ant a, dsb

Diawali dengan huruf at au garis bawah(underscore) _ dan diikut i dengan huruf, digit at au _

Huruf besar dianggap berbeda dengan huruf kecil (case sensit ive)

Panjang maksimum Ident ifier t ergant ung dari compiler sebagai cont oh Turbo C 2.0 (DOS), max 32 karakt er

Tidak boleh menggunakan keyw ord (misal for, w hile, dll.)

Cont oh ident ifier : name, x1, _t ot al, cubic()

(101)

Keyw ord

Keywords

are words t hat have special meaning t o t he C

compiler.

Cont oh Keyword

Keyw o rd s

auto double int struct break else long switch case enum register typedef char extern return union

const float short unsigned continue for signed void

default goto sizeof volatile

(102)

Keyw ord

Beberapa compiler akan memberikan warna yang berbeda unt uk keyword, spert i pada dev-C at au Visual C++, dibawah ini.

Pada Dev-C keyword dicetak BOLD

(103)

Variabel

Variabel : Ident ifier yang digunakan unt uk menampung dat a/ informasi

Set iap variabel memiliki Nama, alamat (L-Value), t ipe,

size(rent ang nilai) dan data (R-Value).

Dat a at au isi variabel bisa dirubah-ubah pada saat Run t ime

Format deklarasi variabel:

<t ipe> <nama_variabel>;

<t ipe> <nama_variabel> = <init ial_value>;

Cont oh:

(104)
(105)

Variabel

Deklarasi Variabel:

– Variabel dpt dideklarasikan diset iap awal blok st at ement .

– Blok st at ement disebut juga “ compound st at ement ” adalah st at ement -st at em ent yang berada diant ara { dan }

– Cont oh deklarasi variabel:

int x; int y; int z;

atau bisa ditulis :

int x, y, z;

atau bisa juga ditulis :

(106)

Tipe Dat a

Pada dasarnya t ipe dat a pada bahasa C ada 5, dan

dit ambah 4 t ipe M odifier yait u :

Basic Data Types

Keyword

1. Character

2. Integer

3. Floating point

(107)

Tipe Dat a

Empat t ipe M odifier adalah sbb :

signed

unsigned

long

short

Tipe dat a dalam bahasa C merupakan

kombinasi ant ara Basic Dat a Types dengan

M odifier.

(108)

Tipe Dat a dalam Bahasa C

Tipe Data Penulisan Memori Rentang Nilai

character unsigned char char

1 Byte 1 Byte

0 s/d 255 -128 s/d 127 integer unsigned int

int

-32768 s/d 32767 -128 s/d 127

0 s/d 4294967295 -2147483648 s/d

2147483647

3.4E-38 s/d 3.4E+38 1.7E-308 s/d 1.7E+308 3.4E-4932 s/d 1.1E+4932

(109)

Tipe Dat a dalam Bahasa C

Default nya

signed

(bilangan bert anda), sehingga

penulisan

int

sama art inya dgn

signed int

Cont oh :

int x;

sama art inya dgn

signed int x;

short int x;

sama art inya dgn

signed short int x;

Rent ang Nilai (range) dari t ipe dat a pada bahasa C

t ergant ung dari compiler dan Sist em Operasi.

Cont oh :

Tipe int eger pada Turbo C 2.0 (DOS), rent ang nilainya 2 byt e (-32768 s/ d 32767)

(110)

Tipe Dat a dalam Bahasa C

M engapa t ipe char rent ang nilainya dari -128 s/ d 127

?

1 Byt e = 8-bit

00000000 s/ d 01111111

(M SB=>0 = Bil Posit ip)

10000000 s/ d 11111111

(M SB=>1 = Bil Negat ip) M SB = Bit yg paling kiri

-128 -128

64 32

16

(111)

Tipe Dat a dalam Bahasa C

(112)

Tipe Dat a dalam Bahasa C

(113)

Tipe Dat a dalam Bahasa C

Cont oh

char ch=127; ch=ch+1;

Berapa nilai ch ?

Jawaban : -128 bukan 128

Cont oh

int ch=127; ch=ch+1;

(114)

Tipe Dat a dalam Bahasa C

Keyw ord void disamping digunakan dalam

fungsi unt uk t idak mengembalikan nilai, juga

digunakan sebagai t ipe dat a.

(115)

Cast

Cast : unt uk mengkonversi t ipe dat a pada

bahasa C

Sint ak : (t ype)

Cont oh :

int x;

float f = 3.134; x = (int) f;

(116)

Symbolic Const ant

Symbolic Const ant adalah Ident ifier yang hanya

memiliki nilai (R-Value), dan nilai-nya t idak bisa

dirubah-rubah pada saat run t ime.

Symbolic Const ant t idak memiliki alamat (L-Value)

Pada bahasa C deklarasi symbolic const ant t idak

membut uhkan alokasi memori

Unt uk mendeklarasikan symbolic const ant pada

bahasa C bisa dilakukan dengan pre-processor

direct ive

#define

at au dengan keyw ord

const.

Cont oh:

(117)

Symbolic Const ant

(118)

Konst ant a

Konst ant a / symbolic const ant t idak memiliki alamat (hanya nilai) dan nilainya t dk bisa dirubah saat run t ime.

Symbolic const ant#define PHI 3.14

 const float PHI=3.14;

'H' adalah sebuah charact er const ant

''H'' adalah sebuah st ring const ant

 1 adalah sebuah int eger const ant

 '1' adalah sebuah charact er const ant

(119)

Cont oh Program

Penambahan dua buah bilangan

Dat a t elah berada di memori (variabel), hasil penjumlahan disimpan di memori (variabel).

/ * Program Tambah * / / * koment ar * /

int x,y,z; / * Deklarasi Variabel global* /

int main()

{ / * Program ut ama mulai* /

x = 20; / * St at ement 1* /

y = 30; / * St at ement 2* /

z = x + y; / * St at ement 3* /

ret urn 0; / * St at menet 4* /

(120)

Cont oh Program

Program menghit ung luas lingkaran

Dat a jejari dibaca dari keyboard, kemudian hasil perhit ungan dit ayangkan di layar monit or.

/ * ---Program Luas_Lingkaran ---* / #include <st dio.h>

const float Pi = 3.14; / * Deklarasi Konst ant a* /

int main() / * Program ut ama mulai* /

{

float jejari; / * Deklarasi local Variabel* /

float luas;

scanf(“ %f ”,& jejari); / * M asukkan dari keyboard* / luas = Pi * jejari * jejari;

(121)

Sizeof

sizeof adalah sebuah operator untuk

mengetahui jumlah memori (byte) yang

diperlukan oleh suatu tipe data pada bahasa

C

Sintaknya : sizeof

expression

Cont oh :

sizeof(int ) = 4 => pada Dev-V (Window s)

(122)

Suffix

Bahasa C menyediakan Suffix (akhiran) unt uk

bilangan float ing point konst an sbb:

F at au f unt uk t ipe float

L at au l unt uk t ipe long double

Default t ipenya double

Cont oh:

3.14 => (double)

3.14f => (float )

(123)

Suffix

Bahasa C menyediakan Suffix (akhiran) unt uk

bilangan int eger konst an sbb:

U at au u unt uk t ipe unsigned int eger

L at au l unt uk t ipe long int eger

UL at au ul at au LU at au lu unt uk t ipe bilangan unsigned long int eger

Default t ipenya int eger

Cont oh:

174 => (int eger)

174u => (unsigned int eger)

174L => (long int eger)

(124)

Suffix

Beberapa compiler akan memberikan w arning

karena perbedaan t ipe dat a sepert i compiler pada

Visual C++ sbb:

Cont oh:

float x; x = 3.14;

w arning : truncation from 'const double' to 'float ’

Cara mengat asi sbb:

float x;

(125)

Suffix

#include <stdio.h>

int main() {

printf(“Sizeof Floating Point Constan :\n");

printf(" - dgn suffix f = %d\n",sizeof(3.14f)); printf(" - tanpa suffix = %d\n",sizeof(3.14)); printf(" - dgn suffix L = %d\n",sizeof(3.14L));

getch(); return 0; }

Sizeof Floating Point Constan : - dgn suffix f = 4

- tanpa suffix = 8

(126)

Lat ihan

1. Apakah yang dimaksud dengan fungsi library dalam bahasa C ? 2. Jelaskan apa yang dimaksud dengan ident ifier pada bahasa C 3. Berapakah dat a t erbesar yang bisa dit ampung oleh variabel x

yang bert ipe int eger dengan ukuran 20-bit ?

4. Sebut kan t ipe dat a (boleh lebih dari sat u) yang t epat unt uk mengolah dat a umur !

5. Sebut kan t ipe dat a yang t epat unt uk menampung dat a Nim M ahasiswa !

(127)

LATIHAN

7. Kapan sebaiknya menggunakan directive:

#include <header.h> atau

#include ”header.h”

8. Jika tipe integer ukurannya hanya 3 byte, berapakah rentang nilainya (range) ?

9. Jika tipe unsigned integer ukurannya hanya 3 byte, berapakah rentang nilainya (range) ?

10. Apakah beda Variabel dengan Konstanta ?

11. Jika x variabel bertipe integer dan ukurannya 2 byte, jika x=32767 maka berapakah nilai x jika nilai x ditambah 1 ?

12. Diketahui bilangan biner 10-bit sbb: 1010110011

a. Jika bilangan biner tersebut adalah bilangan signed berapa nilai desimalnya ? b. Jika bilangan biner tersebut adalah bilangan unsigned berapa nilai

(128)

LATIHAN

13. Jelaskan t ent ang sist em bilangan

• Desimal

• Biner

• Oktal

• Heksadesimal

14. Jelaskan bagaimana cara mengkonversi sist em bilangan desimal ke biner, okt al dan Heksadesimal, dan sebaliknya

15. Jelaskan t ent ang sist em bilangan t wo’s complement , one’s complement .

16. #define PHI 3.142857

(129)

Pert emuan 4

(130)

Learning Out comes

Pada

akhir

pert emuan

ini,

diharapkan

mahasiswa akan mampu :

(131)

Out line M at eri

Operasi Input -Out put

St andard Library Funct ion yang berhubungan

dengan operasi Out put spt : print f, put char,

put ch, put s, dll.

Format Out put

St andard Library Funct ion yang berhubungan

dengan operasi input spt : scanf, get char,

get ch, get che, get s, dll

Format Input

(132)

KATEGORI FUNCTION

St andard library funct ion

, fungsi-fungsi yang

t elah disediakan oleh compiler C, t inggal

digunakan, dengan mencat umkan header file

t empat funct ion t ersebut didefinisikan

(di-include)

Programmer-defined funct ion

, fungsi-fungsi

yang dibuat pemrogram unt uk digunakan

dalam program

(akan dibahas pada

(133)

Operasi Input

St andard library funct ion yang berhubungan

dengan operasi input ant ara lain:

scanf();

get char();

get ch();

get che();

get s();

dll.

Operasi input : operasi unt uk mengambil

(134)

Fungsi scanf

Header file ada di stdio.h

Format :

int scanf( const char * format [,argument ]... );

Semua t ipe argument pada scanf adalah point er (alamat dari variabel yang akan diisi dat a).

Unt uk mendapat kan alamat dari variabel digunakan t anda &

Fungsi scanf didefinisikan di header file st dio.h

Cont oh :

int NilaiTM ;

scanf

(” %d”,& NilaiTM );

Spesifikai format adalah : ”% type”

(135)

type Digunakan untuk membaca

- Data integer

- Data unsigned integer - Data heksadesimal - Data floating point - Single character

s O […] [^..]

- Karakter string yg diakhiri dengan whitespace

- Data unsigned octal

- Karakter string yg diakhiri dengan karakter yg tidak ada didalam [...]

- Karakter string yg diakhiri dengan karakter yg ada didalam [..]

(136)

Jika x adalah variabel bert ipe int eger, Apa beda x dgn

& x ?

Jaw ab:

y = x; maka y akan berisi dat a 234

y = & x; maka y akan berisi alamat dari x yait u 45678

(137)

Fungsi scanf

Fungsi scanf mengembalikan t ipe int eger,

dimana nilai nya menyat akan jumlah field

yang sukses di assigned

Cont oh:

int x,y,z,w ;

x=scanf(" %d %d %d" ,& y,& z,& w );

Jika di input dari keyboard 3 buah nilai int erger 6 7 8, maka nilai x = 3;

(138)

Program Luas Segi Empat

/ * Program Luas_Segi_Empat v1* /

#include <st dio.h> int main()

{

int panjang, lebar, luas;

scanf(” %d”,& panjang);

scanf(” %d”,& lebar); luas = panjang * lebar; ret urn(0);

}

(139)

Fungsi scanf dapat memakai lebih dari sat u argument

/ * Program Luas_Segi_Empat v2* /

#include <st dio.h> int main()

{

int panjang, lebar, luas;

scanf(“ %d %d”,& panjang, & lebar); luas = panjang * lebar;

ret urn(0); }

(140)

Tipe dat a unt uk set iap variabel dalam argumen boleh berbeda

/ * * Program Argumen Tipe Beda* * /

#include <st dio.h>

int main() {

int nomor; char inisial; float saldo;

scanf(“ %d %c %f ” ,& nomor ,& inisial, & saldo);

<st at ement selanjut nya>

ret urn(0);

(141)

Fungsi scanf

M engambil dat a st ring dari keyboard dengan fungsi

scanf menggunakan format : %s.

Cont oh:

char ss[40]; scanf(”%s”,ss);

Perhat ikan cont oh diat as, karena variabel ss t ipenya

sudah point er

(Topik t entang point er akan dibahas

t ersendiri),

maka t idak perlu dit ambah t anda & lagi

(& ss).

(142)

Fungsi scanf

Karakt er Space, t ab, linefeed, carriage-ret urn,

formfeed, vert ical-t ab, dan new line disebut

”w hite-space characters”

Cont oh :

Pada pot ongan program diat as, jika dimasukkan

st ring ”

Selamat Pagi Pak

” dari keyboard maka yg

dimasukkan ke variabel ss hanya “

Selamat

” saja.

Unt uk mengambil st ring yang diakhiri karakt er

t ert ent u (misalnya ENTER), dengan scanf,

(143)

Fungsi scanf

Cont oh:

char ss[40];

scanf(”%[^\ n]”,ss);

Pada pot ongan program diat as, jika dimasukkan

st ring ”

Selamat Pagi Pak

” kemudian t ekan ENTER

dari keyboard maka variabel ss berisi st ring

(144)

Fungsi scanf

Cont oh:

char ss[40];

scanf(”%[a-z]”,ss);

Pada pot ongan program diat as, jika dimasukkan

st ring:

htt p:/ / palant a.it p.ac.id

kemudian t ekan

(145)

Fungsi scanf

Cont oh:

int x;

scanf("%o", & x);

Pada pot ongan program diat as, jika dimasukkan

bilangan :

44

kemudian t ekan ENTER dari

keyboard maka variabel x akan berisi nilai :

36

(146)

Fungsi scanf

Cont oh:

int x;

scanf("%x", & x);

Pada pot ongan program diat as, jika dimasukkan

bilangan :

44

kemudian t ekan ENTER dari

keyboard maka variabel x akan berisi nilai :

68

(147)

Fungsi get char()

Sint ak:

int getchar(void):

Fungsi:

mengembalikan sebuah karakt er (nilai ASCII) berikut nya dari buffer keyboard.

Karakt er dit ampilkan di layar monit or

M enunggu sampai ada ENTER

Header file ada di stdio.h

Cont oh:

char ch;

(148)

Fungsi get ch()

Sint ak:

int getch(void):

Fungsi:

mengembalikan sat u karakt er dari buffer keyboard

karakt er t idak dit ampilkan di layar monit or (no echo)

Tidak menunggu sampai ada ENTER

Cocok unt uk membuat password

Header file ada di conio.h

Cont oh:

char ch;

(149)

Fungsi get che()

Sint ak:

int getche(void)

Fungsi :

mengembalikan sat u karakt er dari keyboard

Karakt er dit ampilkan di layar (echo)

Tidak menunggu sampai ada ENTER

Header file ada di

conio.h

Cont oh:

char ch;

(150)

Fungsi get s()

Sint ak:

char * gets(char * buffer)

Fungsi:

membaca st ring dari keyboard sampai ket emu new -line dan disimpan pada buffer.

Kemudian new -line di replace dengan null charact er

M engembalikan nilai NULL jika ada error dan

mengembalikan argument -nya (buffer) jika sukses.

Cont oh:

char buffer[40]; char * pt r;

(151)

Operasi Out put

Operasi ini digunakan unt uk menampilkan dat a ke

layar monit or. Beberapa fungsi (st ndard library

funct ion) yang yang ada pada bahasa C ant ara lain:

print f();

put char();

put ch();

put s();

(152)

Fungsi print f

M enampilkan sejumlah dat a ke st andard out put ,

dengan format t ert ent u.

St andard out put adalah Layar M onit or, sedangkan

St andard Input adalah Keyboard.

Sint ak :

printf(const char * format[,argument, …]);

Header file unt uk print f :

stdio.h

(153)

Fungsi print f

/ * * Program Luas_Segi_Empat * * /

void main()

{

int panjang, lebar, luas;

/ * local variable * /

printf

(” Panjang = ” ); scanf(“ %d”,& panjang);

printf

(” Lebar = ‘); scanf(“ %d”,& lebar);

luas = panjang * lebar;

printf

(” Luas = %d\ n”, luas);

(154)

Fungsi print f

Spesifikai format sbb:

%[flags][w idth][.precision] type

type dapat digant i dengan : d at au i : signed decimal o : unsigned oct al u : unsigned decimal

x : unsigned hexadecimal f : float ing point

w idth : menent ukan jumlah kolom yang disediakan

precision : menent ukan jumlah angka dibelakang koma (unt uk bilangan pecahan)

flagsdapat digant i sbb:

none : right just ify (rata kanan) - : left just ify (rata kiri)

(155)

Fungsi print f

CONTOH 1

printf(“ %6d”, 34); ….34

printf(” %-6d”, 34); 34….

CONTOH 2

printf(“ %10s”, “ ITP” ); …..ITP

printf(“ %-10s”, “ ITP” ); ITP…..

printf(“ %8.2f ”, 3.14159 ); ….3.14

(156)

Fungsi print f

print f(" %c\ n" ,65); / / akan dit ampilkan A

print f(" %x\ n" ,'A'); / / akan dit ampilkan 41

print f(" %o\ n" ,65); / / akan dit ampilkan 101

print f(" %+d\ n" ,34); / / akan dit ampilkan +34

print f(" %+d\ n" ,-45); / / akan dit ampilkan -45

print f(" %e\ n" ,3.14); / / akan dit ampilkan

(157)

Fungsi print f

#include <stdio.h>

int main(){

char ss[]="Selamat Datang";

printf("123456789012345678901234567890\n");

printf("%.10s di ITP\n",ss);

printf("%10s di ITP\n",ss);

printf("%-10s di ITP\n",ss);

printf("%.20s di ITP\n",ss);

printf("%20s di ITP\n",ss);

printf("%-20s di ITP\n",ss);

printf("%20.10s di ITP\n",ss);

printf("%-20.10s di ITP\n",ss);

return 0;

(158)

Fungsi print f

Output Program diatas sbb:

123456789012345678901234567890

Selamat Da di ITP

Selamat Datang di ITP

Selamat Datang di ITP

Selamat Datang di ITP

Selamat Datang di ITP

Selamat Datang

di ITP

Selamat Da di ITP

(159)

Fungsi print f

Unt uk dat a yang t ipe nya long maka

dit ambahkan l sebelum t ipe dat anya sepert i :

long double

( “ %lf “ )

unsigned long int

( “ %lu ” )

(160)

Fungsi put char()

Sintak:

int putchar(int c)

Fungsi:

M enampilkan karakt er ke layar monit or pada cursor, kemudian set elah dit ampilkan cursor bergerak ke posisi berikut nya.

M engembalikan EOF jika error, dan mengembalikan karakt er yang dit ampilkan jika sukses

Put char adalah macro yang sama art inya dengan: putc(c, stdout )

Header File : st dio.h

Cont oh:

(161)

Fungsi put ch()

Sintak:

int putch(int ch)

Fungsi :

menampilkan karakt er ascii di ch di monit or t anpa memindahkan kursor ke posisi berikut nya

Header file : conio.h

M engembalikan EOF jika error, dan mengembalikan karakt er yang di t ampilkan jika sukses.

Cont oh:

(162)

Fungsi put s()

Sintak:

int puts(const char * st r);

Fungsi:

M enampilkan st ring st r ke layar monit or dan memindahkan kursor ke baris baru.

Header file: st dio.h

M engembalikan nilai non-negat ive jika sukses dan EOF jika ada error.

Cont oh:

put s(” Selamat Dat ang” ); put s(” Di ITP” );

(163)

Penempat an Kursor

Layar dibagi dalam kolom dan baris, umumnya

digunakan ukuran kolom = 80 dan baris = 25.

(1,1)

(1,25)

(80,1)

(80,25) y

(164)

Penempat an Kursor

Layar dapat dihapus dengan menggunakan fungsi:

clrscr();

Kursor dapat dipindahkan ke posisi manapun di

dalam layar monit or dengan menggunakan fungsi :

gotoxy(col,row );

dimana col = kolom dan row = baris

Sebagian dari baris, mulai posisi kursor hingga akhir

baris (end of line), dapat dihapus dengan fungsi:

clreol();

(165)

Penempat an Kursor

Cont oh :

#include <st dio.h> #include <conio.h>

int main() {

float panjang, lebar, luas, keliling; / * local variable * /

clrscr(); / * membersihkan layar* /

gotoxy(30,10); print f(” Panjang : ” ); scanf(“ %f ”,& panjang);

gotoxy(30,11); print f(“ Lebar :” ); scanf(“ %f ”,& lebar);

keliling = 2 * panjang * lebar; luas = panjang * lebar;

gotoxy(30,13); print f(“ Keliling = %8.2f ”, keliling);

gotoxy(30,14); print f(“ Luas = %8.2f‘, luas ); ret urn(0);

(166)

exit ()

Library funct ion exit (), jika dipanggil akan

menyebabkan program exit dan kembali ke

prompt DOS.

Cont oh:

#include <stdio.h> void cetak(){

(167)

Lat ihan

int x,y,z,w ;

x=scanf("%d %d %d",& y,& z,& w );

1. Apa yang t erjadi jika pada program diat as di

input 2 nilai int eger dari keyboard ?

Gambar

Tabel Precedence dan Associativity
Tabel Nilai

Referensi

Garis besar

Dokumen terkait

Secara umum, pengembangan tata ruang jalan antar kota ruas Jeruklegi-.. Sidareja di Kabupaten Cilacap didasarkan pada beberapa

This review summarizes recent understanding of mitochondrial function in muscle relating to mitochondrial quality control, mitochondrial biogenesis mediated by both

Harus diusahakan agar jawaban atau hasil akhir itu tetap ditemukan sendiri oleh siswa (Wahyana, 1992: 25). Pendekatan scientific dengan model Discovery Learning dalam pembelajaran

Dengan mengkonstruksi konjektur, siswa dilatih untuk mengembangkan kemampuan membuat dugaan- dugaan yang rasional dengan menentukan karakteristik suatu objek

Feminisme berasal dari bahasa Latin yaitu “ femina “ atau perempuan dan gerakan ini mulai bergulir pada tahun 1890an seiring dengan keresahan yang dirasakan oleh

menekankan agar anak apat menentukan bahwa suatu benda itu lebih berat dari, lebih ringan dari, atau sama berat dengan benda lain o Menugaskan mengerjakan tugas Hlm..

Sehubungan dengan tuduhan dumping atas impor disposabled gas-fueeled pocket lighters pada tanggal 3 Oktober 2002 telah disampaikan Note Verbale No.05677728 28 Juni 2002

Komplikasi yang paling ditakutkan terjadi dalam proses pemeriksaan barium enema adalah adanya perforasi pada saluran cerna akibat penggunaan instumen yang kurang