PENGENALAN KONSEP PEMROGRAMAN. (dalam bahasa C)

dokumen-dokumen yang mirip
Pert 6: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

Chapter 1 KONSEP DASAR C

Bahasa C-M6 By Jamilah, Skom 1

Sejarah C. Dirancang oleh Denis M. Ritchie tahun 1972 di Bell Labs.

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

BAB 4 PENGENALAN BAHASA C

1.1. Sejarah Bahasa C

BAHASA PEMROGRAMAN C

Algoritma Pemrograman 2B (Pemrograman C++)

Tipe Data dan Operator

Achmad Solichin.

PENGENALAN BAHASA C. Praktikum 3

Struktur Program Bahasa C

KONSEP DASAR BAHASA C

Tipe Data, Variabel, Input/Output

BAB I SEKILAS TENTANG C

BAB I PENGENALAN BAHASA C

P3 Pengantar Pemrograman C

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

Algoritma & Pemrograman

Desain dan Analisis Algoritma. Pengenalan Bahasa C. I Ketut Resika Arthana, S.T., M.Kom.

Pengenalan Bahasa C week 1

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA

DASAR PEMOGRAMAN JAVA

Objectives Menjelaskan sejarah dan ruang lingkup pemakaian bahasa C Menjelaskan kelebihan dan kekurangan bahasa C Menjelaskan proses kompilasi dan lin

MODUL 1 PENGENALAN ENVIROMENT C++

Modul 1 Dasar Dasar Bahasa Pemrograman C

Bab 2. Dasar-Dasar Pemrograman C

P - 3 Bab 2 : Pengantar Pemrograman C

dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah. Bahasa C dalam pemakainnya memerlukan

Pengenalan Bahasa C++ Oleh : Agus Priyanto, M.Kom

P 4 Bab 3 : Dasar Pemrograman C

INPUT OUTPUT. cout. Digunakan untuk mencetak suatu informasi ke layar Contoh : cout << Halo Teknik Informatika

Algoritma Pemrograman. Fery Updi,M.Kom

BAB 1 KONSEP DASAR BAHASA C

PRAKTIKUM 2 SEKILAS TENTANG C

Dasar Pemrograman Komputer [TKL-4002] 2010

DASAR PEMROGRAMAN. PENGANTAR BAHASA C ( Sejarah, Struktur Pemrograman, Tipe Data, Operator ) Djoko Soerjanto, M.Kom

3. Elemen Dasar C++ S. Indriani S. L., M.T L.,

Sekilas Tentang C. Dasar Pemrograman & Algoritma

Pendahuluan Pemrograman Mikrokontroler

PENGENALAN BAHASA C. A. Struktur Kode Program dalam Bahasa C Secara garis besar, suatu kode program dalam bahasa C memiliki struktur umum seperti ini:

KONSEP DASAR PROGRAM BAHASA C

Struktur Dasar Bahasa C Tipe Data Dalam bahasa C terdapat lima tipe data dasar, yaitu :

OPERATOR-OPERATOR DALAM JAVA

PEMROGRAMAN TERSTRUKTUR OLEH : IR. H. SIRAIT, MT

Java Basic. Variabel dan Tipe Data. Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

Basic Input/Output Operator Yoannita

MODUL 1 STANDAR INPUT DAN OUTPUT

Bahasa C, pada awalnya dirancang sebagai bahasa pemrograman yang dioperasikan pada sistem operasi UNIX.

C Programming (re-view)

Modul IV Pemrograman Bahasa C ( bagian I )

Algoritma & Pemrograman #3

Pengantar dalam Bahasa Pemrograman Turbo Pascal Tonny Hidayat, S.Kom

Elemen Bahasa Pemrograman. Aditya Rizki Yudiantika, M.Eng.

PENGENALAN BAHASA C DAN C++

Review: Algoritme dan Program 12/29/2011. Algoritme dan Pemrograman. Review: Bagaimana memecahkan masalah dengan komputer?????

9/9/2011 ILKOM IPB 1 ALGORITME DAN PEMROGRAMAN. Review: Algoritme dan Program. Bahasa tingkat rendah (low level language)

ALGORITHM 7 C++ Dahlia Widhyaestoeti, S.Kom dahlia74march.wordpress.com

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

1. Joko Priyanto ( ) 2. Astriyer J. Nahumury ( ) 3. Rico N. Tubalawony ( ) 4. Heberson Pakpahan ( ) 5.

Struktur Kontrol. Contoh, Akan tercetak x is 100 jika nilai yang disimpan pada variable x adalah 100:

MODUL PRAKTIKUM BAHASA PEMROGRAMAN DASAR (PG168)

Struktur Bahasa C dan C++

elemen Dasar Bahasa Pemrograman C

Bahasa Pemrograman Java. Yudi Adha. ST. MMSI

Bab 3. Decision 1 (Pengambilan Keputusan)

Pengantar Visual C++ & Penulisan Program

3. Struktur Perulangan dalam Bahasa C++

2 TIPE DATA DAN VARIABEL

PENGENALAN C++ Bab 1

Pertemuan 2. Gambaran Umum C

ELEMEN DASAR C++ C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter tombol) misalnya \n.

T I P E D A T A P R I M I T I F V A R I A B E L D A N S T A T E M E N P E N U G A S A N E K S P R E S I D A N O P E R A T O R A R I T M A T I K A

Pengantar Bahasa C. Tim Pengajar ASD Semester I 2017/ /7/2017 FN/ASD/Sem /2018 1

Variable. Variable (cont) Variable (cont) Tipe Data

Fungsi : Dasar Fungsi

3. Struktur Perulangan dalam C++

Algoritma dan Pemrograman

MODUL 1 PENGENALAN PROGRAM C++ DAN PERNYATAAN MASUKAN-KELUARAN

PERTEMUAN 2 ALGORITMA & PEMROGRAMAN

1.4 Struktur Program Pada C++ Program C maupun C++ secara umum tersusun dari beberapa bagian utama, yaitu :

IT234 - Algoritma dan Struktur Data. Ramos Somya

Algoritme dan Pemrograman

Dasar Pemrograman Mikrokontroler dengan Bahasa C

Minggu ke-3 Tipe Data Dalam C

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

BAB II VARIABEL DAN TIPE DATA

BAB II STRUKTUR BAHASA C


MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

LANGKAH-LANGKAH MENULISKAN PROGRAM DALAM TURBO C++

Pengenalan Bahasa C++, Algoritma Pemrograman, Integrated Development Equipment (IDE) Visual C++ dan Dasar Dasar Bahasa C++

STRUKTUR DASAR PEMROGRAMAN

Pemrograman Berbasis Objek Operator dan Assignment

MODUL IV Analisis Kasus/Pemilihan

Tipe Data. Pendahuluan. Objektif. Bahan Bacaan

Transkripsi:

PENGENALAN KONSEP PEMROGRAMAN (dalam bahasa C) 1

Sejarah Bahasa C Bersumber dari bahasa BCPL (Martin Richards -1967) dan B (Ken Thompson -1970) C diciptakan Dennis Ritchie dari Bell Laboratories pada tahun 1972 dan diimplementasikan pada komputer DEC PDP-11 Pada 1978 Dennis Ritchie dan Brian Kernighan kemudian mempublikasikan buku The C Programming Language yang semakin memperluas pemakaiannya dan dijadikan standar oleh ANSI (American National Standard Institute) pada tahun 1989 C kemudian dikembangkan lagi oleh Bjarne Stroustrup menjadi C++ (1986) C dan/atau C++ banyak digunakan (sehingga menjadi standar ) sebagai bahasa pemrograman untuk membuat sistem operasi 2

Proses penerjemahan bahasa C Editor Preprocessor Compiler Linker Loader CPU DISK.c.h.obj.out (UNIX).exe (MS) Primary Memory 3

Program sederhana I [1] Contoh program untuk menampilkan sebaris teks Selamat menggunakan bahasa C! pada layar: 1. /* Program pertama dalam bahasa C */ 2. #include <stdio.h> 3. /* fungsi main mulai eksekusi program */ 4. int main( void ) 5. { 6. printf( Selamat menggunakan bahasa C!\n" ); 7. return 0; /* indikasi program berakhir dengan sukses */ 8. } /* akhir fungsi main */ Selamat menggunakan bahasa C! Program Output 4

Program sederhana I [2] Komentar diawali dengan /* dan diakhiri dengan */ (seperti terdapat pada baris- 1,3,7,dan 8), komentar tidak dipedulikan/diproses oleh compiler. Bermanfaat untuk memudahkan pembacaan dan pemahaman sebuah program. Baris dengan awalan # (seperti pada baris-2) diproses oleh preprocessor C sebelum program dikompilasi. Baris tersebut menunjukkan bahwa preprocessor harus mengikutsertakan standard input/output header (stdio.h) pada program.header ini mengandung informasi yang digunakan compiler untuk mengkompilasi pemanggilan fungsi standar input/output seperti printf (baris-6). int main() merupakan fungsi utama program dan selalu merupakan bagian dari program dalam C, karena berjalannya program/instruksi ditentukan oleh fungsi ini. int berarti fungsi main mengembalikan nilai integer Tanda kurung kurawal buka { dan tutup } merupakan penanda body dari sebuah fungsi atau sering disebut juga block fungsi/program. printf( Selamat menggunakan bahasa C!\n" ); menghasilkan aksi yaitu menampilkan teks Selamat menggunakan bahasa C! return 0; selalu diikutsertakan pada akhir fungsi main. Keyword return untuk menyatakan keluar dari suatu fungsi, dan angka 0 menunjukkan nilai yang dihasilkan/dikembalikan oleh fungsi tersebut. 5

Program sederhana I [3] 1. /* Program pertama dalam bahasa C */ 2. #include <stdio.h> 3. /* fungsi main mulai eksekusi program */ 4. int main( void ) 5. { 6. printf( Selamat menggunakan bahasa C!\n" ); 7. return 0; /* indikasi program berakhir dengan sukses */ komentar preprocessor main function statement function body 8. } /* akhir fungsi main */ 6

Program sederhana I [4] Karakter escape Karakter Deskripsi \n Pindah kursor ke baris baru \t Horisontal tab, pindah kursor ke posisi tab berikutnya \a Membunyikan bel sistem/beep \\ Mencetak/menampilkan \ (backslash) \ Mencetak/menampilkan 7

Program sederhana I [5] Modifikasi 1: mencetak 1 baris dengan 2 buah perintah printf 1 /* Fig. 2.3: fig02_03.c 2 Printing on one line with two printf statements */ 3 #include <stdio.h> 4 5 /* function main begins program execution */ 6 int main() 7 { 8 printf( "Welcome " ); 9 printf( "to C!\n" ); 10 11 return 0; /* indicate that program ended successfully */ 12 13 } /* end function main */ Welcome to C! Program Output 8

Program sederhana I [6] Modifikasi 2: mencetak banyak baris dengan sebuah perintah printf 1 /* Fig. 2.4: fig02_04.c 2 Printing multiple lines with a single printf */ 3 #include <stdio.h> 4 5 /* function main begins program execution */ 6 int main() 7 { 8 printf( "Welcome\nto\nC!\n" ); 9 10 return 0; /* indicate that program ended successfully */ 11 12 } /* end function main */ Welcome to C! Program Output 9

Program sederhana II [1] Membaca 2 buah bilangan bulat dari keyboard dan menampilkan hasil penjumlahannya 10

1 /* Fig. 2.5: fig02_05.c 2 Addition program */ 3 #include <stdio.h> 4 5 /* function main begins program execution */ 6 int main() 7 { 8 int integer1; /* first number to be input by user */ 9 int integer2; /* second number to be input by user */ 10 int sum; /* variable in which sum will be stored */ 11 12 printf( "Enter first integer \n" ); /* prompt */ 13 scanf( "%d", &integer1 ); /* read an integer */ 14 15 printf( "Enter second integer \n" ); /* prompt */ 16 scanf( "%d", &integer2 ); /* read an integer */ 17 18 sum = integer1 + integer2; /* assign total to sum */ 19 20 printf( "Sum is %d\n", sum ); /* print sum */ 21 22 return 0; /* indicate that program ended successfully */ 23 24 } /* end function main */ Enter first integer 45 Enter second integer 72 Sum is 117 Program Output 11

Program sederhana II [2] Baris ke-1 hingga ke-7 serupa dengan program I int integer1, integer2, sum; Pendefinisian variable-variabel Variabel: lokasi di memori tempat sebuah nilai disimpan int berarti variabel dapat menyimpan bilangan bulat (-1, 3, 0, 47) Nama-nama variabel (identifier) integer1, integer2, sum Identifier: mengandung huruf,angka (tidak boleh dimulai dengan angka) dan underscores( _ ) Case sensitive (huruf besar dan kecil dibedakan) Deklarasi variabel harus muncul sebelum eksekusi statement yang menggunakannya Jika eksekusi statement mengacu kepada variabel yang belum dideklarasikan maka akan menghasilkan syntax (compiler) error 12

Program sederhana II [3] scanf( "%d", &integer1 ); Mengambil sebuah nilai dari user scanf menggunakan standar input (biasanya keyboard) scanf statement ini memiliki dua buah argumen %d - menunjukkan data yang diambil adalah bilangan bulat desimal Tanda & dapat membingungkan di awal untuk saat ini sertakan pada nama variabel pada statement scanf Ketika program dieksekusi user merespon statement scanf dengan mengetik sebuah bilangan kemudian menekan tombol enter (return) = (assignment operator) Assigns (memberi) sebuah nilai kepada sebuah variabel Merupakan sebuah operator biner (memiliki dua buah operand) sum = variable1 + variable2; sum memperoleh hasil dari variable1 + variable2; Variabel penerima nilai berada di sebelah kiri 13

Program sederhana II [4] printf( "Sum is %d\n", sum ); Serupa dengan pada scanf %d berarti bilangan bulat desimal akan ditampilkan/dicetak Nilai variabel sum menentukan bilangan bulat yang akan ditampilkan/dicetak Perhitungan dapat langsung dilakukan dalam statement printf printf( "Sum is %d\n", integer1 + integer2 ); 14

Konsep Memori [1] Variabel Nama-nama variabel berkaitan dengan lokasi-lokasi di memori komputer Setiap variabel memiliki sebuah nama, sebuah tipe, sebuah ukuran dan sebuah nilai Ketika sebuah nilai baru diberikan pada sebuah variabel (misalnya melalui scanf) maka nilai yang lama akan diganti (dan hilang) Membaca variabel dari memori tidak akan mengubah nilainya Representasi visual: integer1 45 15

Konsep Memori [2] integer1 45 integer2 72 integer1 45 integer2 72 sum 117 16

Aritmatika [1] Perhitungan Aritmatika Gunakan * untuk perkalian dan / untuk pembagian Pembagian bilangan bulat membuang sisa pembagian 7 / 5 dievaluasi menjadi 1 Operator Modulus (%) menghasilkan sisa pembagian 7 % 5 dievaluasi menjadi 2 Operator precedence Beberapa operator aritmatika lebih diprioritaskan (dihitung lebih dahulu) dibandingkan operator lainnya (misalkan perkalian dan pembagian didahulukan dibandingkan penjumlahan dan pengurangan) Gunakan tanda kurung jika diperlukan Contoh: Hitung nilai rata-rata dari variabel-variabel a, b and c Jangan gunakan: a + b + c / 3 Gunakan: (a + b + c ) / 3 17

Aritmatika [2] Operator-operator aritmatika: C operation Arithmetic operator Algebraic expression C expression Addition + f + 7 f + 7 Subtraction - p c p - c Multiplication * bm b * m Division / x / y x / y Modulus % r mod s r % s Aturan precedence operator: Operator(s) Operation(s) Order of evaluation (precedence) () Parentheses Evaluated first. If the parentheses are nested, the expression in the innermost pair is evaluated first. If there are several pairs of parentheses on the same level (i.e., not nested), they are evaluated left to right. *, /, or % Multiplication,Division, Modulus + or - Addition Subtraction Evaluated second. If there are several, they are evaluated left to right. Evaluated last. If there are several, they are evaluated left to right. 18

Aritmatika [3] Step 1. y = 2 * 5 * 5 + 3 * 5 + 7; 2 * 5 is 10 (Leftm ost multip lic ation) Step 2. y = 10 * 5 + 3 * 5 + 7; 10 * 5 is 50 (Leftm ost multip lic ation) Step 3. y = 50 + 3 * 5 + 7; 3 * 5 is 15 (Multip lic ation before ad dition) Step 4. y = 50 + 15 + 7; 50 + 15 is 65 (Leftm ost ad dition) Step 5. y = 65 + 7; 65 + 7 is 72 (Last a dd ition) Step 6. y = 72; (Last op era tio n p la ce 72 in y) 19

Pengambilan Keputusan: Persamaan dan Operator Relasional [1] Eksekusi statement Menghasilkan aksi-aksi (penghitungan, input/output data) Menghasilkan keputusan Ingin menampilkan lulus" or gagal" berdasarkan suatu syarat nilai tertentu if control statement Versi sederhana dahulu, lebih detail kemudian Jika suatu kondisi true, maka body statement if dieksekusi 0 adalah false, non-zero adalah true Kontrol terhadap perintah selanjutnya setelah struktur if Keywords Kata-kata khusus yang digunakan oleh bahasa C Tidak dapat digunakan sebagai nama variabel atau identifier 20

Pengambilan Keputusan: Persamaan dan Operator Relasional [2] Standard algebraic equality operator or relational operator Equality Operators C equality or relational operator Example of C condition Meaning of C condition = == x == y x is equal to y!= x!= y x is not equal to y Relational Operators > > x > y x is greater than y < < x < y x is less than y >= >= x >= y x is greater than or equal to y <= <= x <= y x is less than or equal to y 21

1 /* Fig. 2.13: fig02_13.c 2 Using if statements, relational 3 operators, and equality operators */ 4 #include <stdio.h> 5 6 /* function main begins program execution */ 7 int main() 8 { 9 int num1, /* first number to be read from user */ 10 int num2; /* second number to be read from user */ 11 12 printf( "Enter two integers, and I will tell you \n" ); 13 printf( "the relationships they satisfy: " ); 14 15 scanf( "%d%d", &num1, &num2 ); /* read two integers */ 16 17 if ( num1 == num2 ) { 18 printf( "%d is equal to %d \n", num1, num2 ); 19 } /* end if */ 20 21 if ( num1!= num2 ) { 22 printf( "%d is not equal to %d\n", num1, num2 ); 23 } /* end if */ 24 22

25 if ( num1 < num2 ) { 26 printf( "%d is less than %d \n", num1, num2 ); 27 } /* end if */ 28 29 if ( num1 > num2 ) { 30 printf( "%d is greater than %d \n", num1, num2 ); 31 } /* end if */ 32 33 if ( num1 <= num2 ) { 34 printf( "%d is less than or equal to %d \n", num1, num2 ); 35 } /* end if */ 36 37 if ( num1 >= num2 ) { 38 printf( "%d is greater than or equal to %d \n", num1, num2 ); 39 } /* end if */ 40 41 return 0; /* indicate that program ended successfully */ 42 43 } /* end function main */ Enter two integers, and I will tell you the relationships they satisfy: 3 7 3 is not equal to 7 3 is less than 7 3 is less than or equal to 7 Program Output 23

Enter two integers, and I will tell you the relationships they satisfy: 22 12 22 is not equal to 12 22 is greater than 12 22 is greater than or equal to 12 Enter two integers, and I will tell you the relationships they satisfy: 7 7 7 is equal to 7 7 is less than or equal to 7 7 is greater than or equal to 7 Program Output (lanjutan) 24

Pengambilan Keputusan: Persamaan dan Operator Relasional [3] Operators Associativity * / % left to right + - left to right < <= > >= left to right ==!= left to right = right to left Precedence dan associativity dari operator-operator 25

Pengambilan Keputusan: Persamaan dan Operator Relasional [4] Keywords 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 do if static while Reserved keywords pada bahasa C 26

Algoritma dan Pseudocode Algoritma: urutan langkah-langkah yang dapat digunakan untuk memecahkan suatu masalah Pseudocode: Bahasa buatan yang bersifat informal yang dapat membantu untuk mengembangkan algoritma Serupa dengan bahasa sehari-hari Membantu mempermudah penulisan program; dengan menggunakan statement-statement yang dapat dieksekusi, mempermudah konversi ke bahasa pemrograman 27