Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

 2007 Pearson Education, Inc. All rights reserved. 1 1 1 Introduction to C/C++ Programming.

Presentasi serupa


Presentasi berjudul: " 2007 Pearson Education, Inc. All rights reserved. 1 1 1 Introduction to C/C++ Programming."— Transcript presentasi:

1  2007 Pearson Education, Inc. All rights reserved Introduction to C/C++ Programming

2  2007 Pearson Education, Inc. All rights reserved. 2 Tujuan Pada bagian ini akan dipelajari:  Pengantar Komputer  Perkembangan bahasa C  Mengenal bentuk umum bahasa C  Konsep tipe data dalam C  Operator dalam C.

3  2007 Pearson Education, Inc. All rights reserved. 3 Sistem Komputer  Komputer Divais yang mampu melakukan komputasi dan membuat keputusan logis Komputer memproses data di bawah Kendali [dari] kumpulan instruksi disebut program komputer  Hardware/Perangkat Keras Berbagai divais terdiri dari satu komputer 'keyboard', layar, mouse, disk, memori, CD-ROM, dan unit pemrosesan  Software/Perangkat Lunak Program yang berjalan pada satu komputer

4  2007 Pearson Education, Inc. All rights reserved. Organisasi Komputer Enam unit logis dalam setiap komputer: 1. Unit input  Memperoleh informasi dari divais input ('keyboard', mouse komputer) 2. Unit Output  Informasi output (ke layar, ke printer, ke divais pengendali lainnya) 3. Unit Memori  Akses Cepat, kapasitas rendah, menyimpan informasi masukan 4

5  2007 Pearson Education, Inc. All rights reserved. Organisasi Komputer (Lanjt.) 4. Arithmetic and logic unit (ALU)  Melakukan kalkulasi aritmatika dan keputusan logik a 5. Central processing unit (CPU)  mengawasi dan mengkoordinir bagian-bagian lain dari komputer 6. Secondary storage unit  Murah, jangka panjang, tempat penyimpanan kapasitas-tinggi  menyimpanan non-aktip program 5

6  2007 Pearson Education, Inc. All rights reserved. Evolusi Sistem Operasi  Batch processing –hanya mengerjakan satu pekerjaan atau tugas pada suatu saat  Operating systems –Mengelola transisi antar pekerjaan  Multiprogramming –Sumber-sumber daya Komputer digunakan bersama oleh banyak pekerjaan atau tugas  Timesharing –Komputer menjalankan sebagian kecil dari satu pekerjaan pemakai kemudian berpindah pada layanan pemakai berikutnya 6

7  2007 Pearson Education, Inc. All rights reserved. Personal Computing, Distributed Computing, and Client/Server Computing  Personal computers –Ekonomis untuk individu  Distributed computing –Komputer terdistribusi melalui jaringan  Client/server computing – Berbagi informasi melintasi jaringan komputer antara file server dan klien (komputer pribadi) 7

8  2007 Pearson Education, Inc. All rights reserved. Machine Languages, Assembly Languages, and High-level Languages  Tiga tipe Bahasa Pemrograman 1.Bahasa Mesin -String dari nomor memberi instruksi spesifik ke mesin -Contoh: Bahasa Assembly/Asembler –Singkatan seperti bahasa Inggris yang merepresentasikan operasi komputer dasar (diterjemahkan melalui asembler) –Contoh : LOAD BASEPAY ADD OVERPAY STORE GROSSPAY 8

9  2007 Pearson Education, Inc. All rights reserved. Machine Languages, Assembly Languages, and High-level Languages 3.Bahasa Pemrograman Tingkat Tinggi – Kode serupa dengan bahasa Inggris setiap hari – Menggunakan notasi matematika (diterjemahkan melalui compilers) – Contoh: grossPay = basePay + overTimePay – Contoh Nama bahasa: COBOL, FORTRAN, PASCAL 9

10  2007 Pearson Education, Inc. All rights reserved. 10 Perkembangan Bahasa C  Perkembangan bahasa C erat kaitannya dengan perkembangan sistem operasi UNIX, dimana keduanya dikembangkan di AT&T Bell Lab (USA).  Pertama kali bahasa C diimplementasikan pada komputer DEC PDP-11 yang menggunakan sistem operasi UNIX oleh Dennis Ritchie di Bell Laboratories tahun  Banyak ide penting dari C diambil dari bahasa BCPL yang dikembangkan oleh Martin Richards melalui bahasa B yang ditulis Ken Thompson. BCPL dan B tidak memiliki data type sedang C memiliki beragam data type.

11  2007 Pearson Education, Inc. All rights reserved. 11  Pada tahun 1978 Dennis Ritchie dan Brian W Kernighan mengeluarkan buku THE C PROGRAMMING LANGUAGE, buku inilah yang dijadikan acuan dari pembuatan berbagai versi bahasa C yang ada.  Pada tahun 1983 ANSI (American Nasional Standart Institute) membuat standarisasi bahasa C yang kemudian dijadikan sebagai referensi dari berbagai bahasa C yang beredar saat ini. C yang dihasilkan disebut C standard ANSI atau ANSI C. Tahun 1987 Borland menciptakan sebuah compiler C yang dikenal dengan nama TURBO C.

12  2007 Pearson Education, Inc. All rights reserved. 12  Dalam beberapa literatur bahasa C digolongkan sebagai bahasa tingkat menengah (Medium Level Language). Penggolongan ini tidak berarti bahwa bahasa C lebih sulit dibandingkan dengan bahasa pemrogramman tingkat tinggi seperti : PASCAL, BASIC.  Pada kenyataannya bahasa C mengkombinasikan elemen dalam bahasa tingkat tinggi dan bahasa tingkat rendah.  Hampir semua operasi yang dapat dilakukan oleh bahasa mesin dapat dilakukan oleh C dengan penyusunan program yang lebih sederhana dan mudah.

13  2007 Pearson Education, Inc. All rights reserved. 13  Bahasa C dalam pemakainnya memerlukan suatu translator. Jenis translator dalam bahasa C adalah interpreter dan compiler. Interpreter merupakan translator yang menterjemahkan bahasa C ke dalam bahasa mesin satu persatu. Contoh interpreter yang beredar saat ini yaitu Run/c.  Sedangkan compiler merupakan translator yang menterjemahkan bahasa C ke dalam bahasa mesin secara keselurahan. Contoh compiler : Turbo C, Microsoft C dan Lattice C.

14  2007 Pearson Education, Inc. All rights reserved. 14  Bahasa C merupakan bahasa pemrogramman yang sederhana dimana jumlah fungsi dan perintah yang disediakan terbatas, walaupun akhirnya beberapa compiler menyediakan fungsi-fungsi library yang cukup lengkap. Karena sifatnya yang sederhana ini maka bahasa C mudah ditransfer dari satu compiler ke compiler yang lain.

15  2007 Pearson Education, Inc. All rights reserved. 15 Gambar 1. Proses penterjemahan bahasa C ke dalam dalam bahasa mesin dengan menggunakan compiler Kode Program .C Hasil kompilasi .obj Object code sudah berbentuk kode mesin, tapi kode ini belum bisa dimengerti oleh komputer. Agar dapat dimengerti oleh komputer maka object code bersama dengan object code yang lain serta file library (file yang berisi rutin untuk tugas tertentu) perlu dikaitkan (linking) dengan menggunakan linker. Sehingga terbentuk suatu file yang executable (program yang dapat dijalankan secara langsung dalam lingkungan sistem operasi). Program hasil linker ini disimpan dalam sebuah file executable dengan ciri mempunyai ekstension.EXE

16  2007 Pearson Education, Inc. All rights reserved.  Kelebihan Bahasa C  C mempunyai banyak jenis data yang dikenal & operator untuk manipulasi data.  C menyediakan berbagai struktur data dan pengendalian proses. Sehingga memungkinkan untuk membuat program yang terstruktur (program yang mudah dipakai dan dikembangkan).  C mudah dipahami dibandingkan dengan bahasa mesin, karena bahasa C berorientasi pada permasalahan bukan pada mesin.. 16

17  2007 Pearson Education, Inc. All rights reserved. 17  C mempunyai kecepatan eksekusi yang mendekati kecepatan eksekusi bahasa mesin  C memungkinkan manipulasi data dalam bentuk bit maupun byte secara efisien dan dapat memanipulasi alamat dari suatu data  C memakai sedikit memori  C merupakan salah satu bahasa pemrograman yang terstruktur.

18  2007 Pearson Education, Inc. All rights reserved. Sejarah C++  Merupakan perluasan dari C  Ditemukan pada tahun 1980-an oleh Bjarne Stroustrup (Bell Laboratories)  Menyediakan kemampuan untuk bahasa pemrograman berorientasi objek -Objek: komponen perangkat lunak dapat digunakan kembali Model item di/dalam dunia nyata -Object-oriented programs Mudah dipahami, dikoreksi dan dimodifikasi  Bahasa Dominan di dalam industri dan akademisi 18

19  2007 Pearson Education, Inc. All rights reserved.  Kekurangan Bahasa C  Banyaknya operator serta flexibilitas penulisan program yang terkadang membingungkan pemakai.  Programmer C tingkat pemula pada umumnya kurang memgenal pointer dan tak terbiasa menggunakannya, padahal kelebihan C ada pada pointer ini. 19

20  2007 Pearson Education, Inc. All rights reserved. MENGAPA C ???  Semakin banyak program dan software yang ditulis dalam C  C adalah bahasa yang modern, efisien, portable, powerful, flexible, friendly menghasilkan program yang kompak dan cepat  C adalah bahasa yang mendominasi pemakaian komputer dengan sistem operasi UNIX. 20

21  2007 Pearson Education, Inc. All rights reserved. MENGAPA C ??? C adalah bahasa yang portable:  program yang ditulis pada satu sistem dapat dijalankan pada sistem lain tanpa atau dengan sedikit perubahan C adalah bahasa yang efisien :  menghasilkan program yang kompak/ringkas dan cepat C adalah bahasa modern :  mempunyai fasilitas - fasilitas kontrol yang diperlukan oleh teori – teori komputer science maupun aplikasi C adalah bahasa yang friendly :  keterikatannya/ restriksinya tidak ketat 21

22  2007 Pearson Education, Inc. All rights reserved. MENGAPA C ??? C adalah bahasa yang powerful dan fleksible  UNIX sebagian besar ditulis dalam C  C compiler ditulis dalam C  Interpreter lain (FORTRAN, APL, Pascal, LISP, BASIC) bisa ditulis dalam C  Digunakan baik dalam memecahkan masalah fisik maupun engineering  Digunakan untuk animasi  Mempunyai kontrol yang biasanya hanya dimiliki oleh bahasa assembly. 22

23  2007 Pearson Education, Inc. All rights reserved. Visual C++ – Penerapan C++ dalam Microsoft - Includes extensions - Microsoft Foundation Classes (MFC) - Common library GUI, graphics, networking, multithreading, … Shared among Visual Basic, Visual C++, C 23

24  2007 Pearson Education, Inc. All rights reserved. Pengenalan Program C  Program terdiri dari koleksi satu / lebih fungsi, salah satu diantaranya harus berupa main().  Fungsi terdiri dari sebuah header dan sebuah badan.  Header berisi preprocessor statement seperti #include dan nama fungsi  Badan ditandai oleh { } dan berisi seri dari statement masing diakhiri tanda ; 24

25  2007 Pearson Education, Inc. All rights reserved. 25 Contoh Struktur Program C

26  2007 Pearson Education, Inc. All rights reserved. 26 Contoh Program C Sederhana

27  2007 Pearson Education, Inc. All rights reserved. 27 Contoh Program C Sederhana

28  2007 Pearson Education, Inc. All rights reserved. Penjelasan Singkat Program 28

29  2007 Pearson Education, Inc. All rights reserved. 29

30  2007 Pearson Education, Inc. All rights reserved. 30

31  2007 Pearson Education, Inc. All rights reserved. 31

32  2007 Pearson Education, Inc. All rights reserved. 32

33  2007 Pearson Education, Inc. All rights reserved. 33  1. Initialize variables  2. Input  2.1 Sum  3. Print Output Program  Program Output 1/* Fig. 2.5: fig02_05.c 2 Addition program */ 3#include 4 5int main() 6{6{ 7 int integer1, integer2, sum; /* declaration */ 8 9 printf( "Enter first integer\n" ); /* prompt */ 10 scanf( "%d", &integer1 ); /* read an integer */ 11 printf( "Enter second integer\n" ); /* prompt */ 12 scanf( "%d", &integer2 ); /* read an integer */ 13 sum = integer1 + integer2; /* assignment of sum */ 14 printf( "Sum is %d\n", sum ); /* print sum */ return 0; /* indicate that program ended successfully */ 17} Enter first integer 45 Enter second integer 72 Sum is 117

34  2007 Pearson Education, Inc. All rights reserved. Penjelasan Program 34  int integer1, integer2, sum; – Deklarasi Variabel - Variabel: lokasi dalam memori dimana sebuah nilai dapat disimpan – int bermakna variabel dapat menangani integers ( -1, 3, 0, 47 ) – Nama Variabel (identifiers) - integer1, integer2, sum - Identifiers: terdiri atas huruf, digits (tidak dapat diawali dengan sebuah angka/digit) dan underscores( _ ) - Case sensitive – Deklarasi muncul sebelum executable statements - Jika sebuah executable statement mengacu pada dan tidak mendeklarasikan variabel ia akan mengasilkan sebuah syntax (compiler) error

35  2007 Pearson Education, Inc. All rights reserved. Penjelasan Program (Lanjt.)  scanf( "%d", &integer1 ); – Memperoleh sebuah nilai dari pemakai - scanf menggunakan standard input (umumnya keyboard) – scanf statement ini memiliki dua arguments - %d - mengindikasi data harus berupa decimal integer - &integer1 - lokasi dalam memori untuk menyimpan variabel - & untuk saat ini, hanya perlu diingat untuk menyertakannya dengan nama variabel dalam scanf statements – Ketika menjalankan program, pemakai merespon untuk scanf statement dengan mengetikkan suatu number, kemudian menekan enter (return) key 35

36  2007 Pearson Education, Inc. All rights reserved. 36 Good Programming Practice Tempatkan suatu spasi setelah setiap tanda koma (,) untuk membuat program lebih mudah dibaca.

37  2007 Pearson Education, Inc. All rights reserved. Penjelasan Program (Lanjt.) 37  = (assignment operator) – Menugaskan sebuah nilai ke sebuah variabel – Adalah sebuah operator biner (memiliki dua operands) sum = variable1 + variable2; sum gets variable1 + variable2; – Variabel yang menerima nilai terletak di sisi kiri  printf( "Sum is %d\n", sum ); – Sama dengan scanf - %d bermakna decimal integer akan dicetak - sum menentukan integer apa yang akan dicetak – Kalkulasi dapat dibentuk di dalam printf statements printf( "Sum is %d\n", integer1 + integer2 );

38  2007 Pearson Education, Inc. All rights reserved. 38 Good Programming Practice Letakkan spasi sebelah menyebelah dari operator biner. Ini membuat operator terpisah dari operan dan membuat program lebih mudah dibaca

39  2007 Pearson Education, Inc. All rights reserved. 39 Common Programming Error Sebuah kalkulasi dalam satu pernyataan penugasan harus pada sisi kanan operator =. Sebuah error sintaksis akan muncul apabila menempatkan satu kalkulasi pada sisi kiri dari suatu operator penugasan

40  2007 Pearson Education, Inc. All rights reserved. Konsep Memori 40  Variabel – Nama Variabel menghubungkan ke lokasi dalam memori komputer – Setiap variabel memiliki nama, tipe, ukuran dan nilai – Kapan saja sebuah nilai baru diletakkan ke dalam sebuah variabel (melalui scanf, sebagai contoh), ia menggantikan (dan menghapus) nilai sebelumnya – Membaca variabel dari memori tidak merubah isinya

41  2007 Pearson Education, Inc. All rights reserved. 41 Penyajian secara visual

42  2007 Pearson Education, Inc. All rights reserved. 42 Penyajian secara visual

43  2007 Pearson Education, Inc. All rights reserved. 43 Penyajian secara visual

44  2007 Pearson Education, Inc. All rights reserved. 44 Good Programming Practice Memilih nama variabel yang penuh arti membantu membuat satu program self- documenting, karena dapat membuat komentar menjadi sedikit

45  2007 Pearson Education, Inc. All rights reserved. 45 Good Programming Practice Huruf Pertama dari suatu identifier yang digunakan sebagai satu nama variabel sederhana harus merupakan satu huruf kecil. Berikutnya dalam teks kita akan memberikan arti khusus untuk identifiers yang dimulai dengan satu huruf besar dan untuk identifiers yang menggunakan huruf besar semua

46  2007 Pearson Education, Inc. All rights reserved. 46 Common Programming Error Menempatkan definisi variabel di antara executable statements menyebabkan error sintaksis

47  2007 Pearson Education, Inc. All rights reserved. 47 Good Programming Practice Pisahkan definisi dan executable statements dalam satu fungsi dengan satu baris kosong untuk menekankan dimana akhir definisi serta executable statements mulai.

48  2007 Pearson Education, Inc. All rights reserved. 48

49  2007 Pearson Education, Inc. All rights reserved. 49

50  2007 Pearson Education, Inc. All rights reserved. Tipe Data  Semua variabel harus didefinisikan di dalam C.  Memiliki bentuk : type data mendefinisikan variabel sebelum variabel digunakan Definisi dari satu variabel akan memberikan tempat penyimpanan untuk variabel dan mendefinisikan tipe data yang akan ditangani dalam lokasi Mempunyai bentuk  typename variablename; Contoh : int myInteger; char myCharacter; 50

51  2007 Pearson Education, Inc. All rights reserved. Tipe Integer 51  Byte sizes for Lonestar & Ranger.  How to get the sizes: char c; int i; printf("%d,%d\n", sizeof (c), sizeof (i) ); Output: 1,4 Common sizes (in bytes): int 4 long 8 char1 short2

52  2007 Pearson Education, Inc. All rights reserved. Tipe Float  Mayoritas dari kode ilmiah akan menggunakan data floating-point dalam melipatgandakan presisi  float (single precision) – 4 bytes  double - 8 bytes 52

53  2007 Pearson Education, Inc. All rights reserved. Tipe Karakter 53 char myName[10]; – Membuat variabel string yang disebut “myName" yang berisi 10 elements myName="yye00"; /*Invalid syntax*/

54  2007 Pearson Education, Inc. All rights reserved. 54 Mengapa saya tidak dapat memberikan suatu string ke suatu nilai tunggal? Hanya skalar (satu nilai tunggal) dapat diberikan pada suatu saat. Sebuah string adalah satu array (larik) dari nilai, dan setiap lokasi harus diberikan secara individu Nilai diberikan oleh operator penugasan "=". Sintak yang benar : char myChar; int x; x = 3; myChar = ‘x'; Catatan : penggunaan tanda kutip tunggal (') sebagai ganti tanda kutip ganda ("), karena ini adalah satu karakter tunggal, bukan satu string. Assigning Values

55  2007 Pearson Education, Inc. All rights reserved. 55  Empat Tipe Data Data TypeAbbreviationSize (byte) Range char ~ 127 unsigned char 10 ~ 255 int 2 or ~ or ~ unsigned intunsigned 2 or 40 ~ or 0 ~ short intshort ~ unsigned short intunsigned short 20 ~ long intlong ~ unsigned long intunsigned long 40 ~ float 4 double 8

56  2007 Pearson Education, Inc. All rights reserved. Deklarasi Variabel type v 1,v 2,v 3, …, v n Example: int i; int j; float k; char c; short int x; long int y; unsigned int z; int a1, a2, a3, a4, a5; 56

57  2007 Pearson Education, Inc. All rights reserved. Aritmatika 57  Perhitungan Aritmatika – Gunakan * untuk perkalian dan / untuk pembagian – Pembagian Integer menghilangkan sisa - 7 / 5 menghasilkan nilai 1 – Operator Modulus ( % ) menghasilkan sisa hasil bagi - 7 % 5 menghasilkan nilai 2  Operator precedence – Beberapa operator aritmatika dilaksanakan sebelum yang lain (seperti, perkalian sebelum penjumlahan) - Gunakan parenthesis jika diperlukan – Contoh : Carilah nilai rata2 dari tiga variabel a, b dan c - Do not use: a + b + c / 3 - Use: (a + b + c ) / 3

58  2007 Pearson Education, Inc. All rights reserved. 58 Arithmetic operators.

59  2007 Pearson Education, Inc. All rights reserved. 59 Common Programming Error Satu usaha untuk membagi dengan nol adalah secara normal tdk terdefinisi pada sistem komputer dan secara umum menghasilkan suatu fatal error,, misalnya., satu error yang menyebabkan program untuk berakhir dengan segera tanpa memiliki kesuksesan dalam melakukan pekerjaannya. Nonfatal Error memungkinkan program untuk menjalankan menuju penyelesaian, sering memproduksi hasil yang salah

60  2007 Pearson Education, Inc. All rights reserved. 60 Precedence of arithmetic operators.

61  2007 Pearson Education, Inc. All rights reserved. 61 Order in which a second-degree polynomial is evaluated.

62  2007 Pearson Education, Inc. All rights reserved. 62 Good Programming Practice Penggunaan tanda kurung di dalam ekspresi aritmatika yang kompleks dapat membuat ekspresi lebih jelas.


Download ppt " 2007 Pearson Education, Inc. All rights reserved. 1 1 1 Introduction to C/C++ Programming."

Presentasi serupa


Iklan oleh Google