alpro - pengantar c++ · pdf fileprogram$c++$tdak$akan$bisa$dijalankan$ ... "...

35
Imam Fahrur Rozi Algoritma dan Pemrograman Pengantar C++

Upload: hadien

Post on 06-Feb-2018

225 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

Imam  Fahrur  Rozi  

Algoritma  dan  Pemrograman

Pengantar C++

Page 2: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

                           

                       

               

LEARNING  OUTCOME  :  1.  MEMAHAMI  STRUKTUR  DASAR  PEMROGRAMAN  C++  2.  MEMAHAMI  SINTAKS  OUTPUT  3.  MEMAHAMI  PREPROCESSOR  DIRECTIVE  4.  MEMAHAMI  FUNGSI  MAIN  5.  MEMAHAMI  IDENTIFIER  6.  MEMAHAMI  TIPE  DATA  VARIABEL  7.  MEMAHAMI  KOMENTAR  8.  MEMAHAMI  INPUT  9.  MEMAHAMI  KONSTANTA    

Page 3: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Program  ?  v  Sekumpulan  instruksi  yang  dilakukan  /  dijalankan  

oleh  komputer  untuk  melakukan  tugas  tertentu.  ²  Bahasa  Pemrograman  ?  

v  Bahasa  khusus  yang  digunakan  untuk  menulis  program  komputer.  

 

BAHASA  PEMROGRAMAN  

Page 4: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Bahasa  Tingkat  Rendah  (Low  Level  Language)  :    v  Lebih  dekat  ke  bahasa  mesin/komputer  v  Contoh  :  bahasa  mesin,  yang  terdiri  dari  

sederetan  angka  yang  akan  diterjemahkan  ke  blangan  biner  

BAHASA  PEMROGRAMAN  

Page 5: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Bahasa  Tingkat  Tinggi  (High  Level  Language)  :    v  Lebih  dekat  ke  bahasa  manusia  sebagai  pembuat  

program  komputer  v  Contoh  :  C/C++  

Contoh:    #include <iostream.h> main(){ cout<<“tes”; return (0);

}

BAHASA  PEMROGRAMAN  

Page 6: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

                           

                       

                                                           

Translator  

Algoritma  dan  Pemrograman  

Page 7: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Digunakan  untuk  menterjemahkan  bahasa  pemrograman  hingga  bisa  dikenali  dan  dieksekusi  oleh  komputer  

²  Terdapat  beberapa  macam  translator:  v  Interpreter  v  Compiler  

TRANSLATOR  

Page 8: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Input:  ²  Source  code  

²  Output:    ²  Tidak  dihasilkan  file  object  ²  Source  code  langsung  diterjemahkan  oleh  

interpreter  dan  langsung  dijalankan,  tanpa  diubah  dulu  ke  file  object  

²  Contoh  :  php  

INTERPRETER  

Page 9: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Input:  ²  Souce  code  

²  Output  v  Object  Code  /  File  object  v  Source  code  dianalisis  semua  dan  diubah  ke  

dalam  object  code  (COMPILE  TIME)  v  Object  Code  ini  yang  selanjutnya  dijaankan  (RUN  

TIME)  v  Contoh:  C++  

COMPILER  

Page 10: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

COMPILER  

Page 11: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

LIFE  CYCLE  PROGRAM  C++  

C++  Source  code        à        File  Object          à          Running  

Compile   Run  

Page 12: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

                           

                       

                                                            STRUKTUR  

PEMROGRAMAN  C++  

Algoritma  dan  Pemrograman  

Page 13: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

<preprocessor  direcTve>    void  main(){  

 <statement>  ;    <statement>  ;    <statement>  ;  

}    

STRUKTUR  PROGRAM  C++  

<preprocessor  direcTve>    int  main(){  

 <statement>  ;    <statement>  ;    <statement>  ;    return  0;  

}    

Page 14: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

v  Statement  adalah  suatu  baris  instruksi/perintah  tertentu.    v  Statement  menyebabkan  suatu  Tndakan  akan  

dilakukan  oleh  komputer.    v  Diakhiri  dengan    TTk  koma  (;)  

v  Preprosessor  DirecQve  adalah  bagian  yang  berisi  pengikutsertaan  file  atau  berkas-­‐berkas  fungsi,  pendefinisian  konstanta,  atau  fungsi  makro  tertentu.  

v  Fungsi  main()  adalah  fungsi  atau  bagian  program  yang  pertama  kali  akan  dijalankan.  Baris  pertama  yang  ada  di  dalam  fungsi  main()  itu  yang  akan  dijalankan  paling  awal  oleh  compiler.  Program  c++  Tdak  akan  bisa  dijalankan  secara  langsung  kalau  Tdak  memiliki  main().  

STRUKTUR  PROGRAM  C++  

Page 15: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

Contoh  1:    #include  <iostream.h>    int  main(){  

 cout  <<  “Hello  world”  <<  endl;    return  1;  

}    Contoh  2:    #include  <stdio.h>  int  main(){  

 prin`  (“Hello  world  \n”);    return  1;  

}        

STUKTUR  PROGRAM  C++  

Output:  Hello  World  

Page 16: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

PENJELASAN  KARAKTER  YANG  DIGUNAKAN  

Character Name Description # Pound sign Marks the beginning of a preprocessor

directive < > Opening and

closing brackets

Encloses a filename when used with the #include directive

( ) Opening and closing parenthesis

Used in naming a function, as in int main ()

{ } Opening and closing braces

Encloses a group of statements, such as the contents of a function.

" " Opening and closing quotation marks

Encloses a string of characters, such as a message that is to be printed on the screen

; Semicolon Marks the end of a complete programming statement

Page 17: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

² Menggunakan  objek  cout  :  ²  Ada  dalam  file  file  header  iostream.h  

² Menggunakan  fungsi  prinX  :  ²  Ada  dalam  file  header  stdio.h  

SINTAKS  OUTPUT  

Page 18: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

²  Cout  Tdak  menghasilkan  ganT  baris  secara  otomaTs  ²  Jika  menginginkan  ganT  baris,  digunakan  sintaks  endl  atau  \n  

²  Contoh:  #include <iostream.h> void main(void) {

cout << "The following items were top sellers" << endl;

cout << "during the month of June:" << endl;

cout << "Computer games \n”; cout << "Coffee \n”; cout << "Aspirin" << endl;

}  

SINTAKS  OUTPUT  -­‐  COUT  

Page 19: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

Program  Output:    The  following  items  were  top  sellers  during  the  month  of  June:  Computer  games  Coffee  Aspirin      

SINTAKS  OUTPUT  -­‐  COUT  

Page 20: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

CONTOH:    #include <iostream.h> void main(void) {

cout << "The following items were top sellers" << endl;

cout << "during the month of June:" << endl;

cout << "Computer games" << endl << "Coffee";

cout << endl << "Aspirin" << endl; }

SINTAKS  OUTPUT  -­‐  COUT  

Page 21: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

Program  Output:    The  following  items  were  top  sellers  during  the  month  of  June:  Computer  games  Coffee  Aspirin      

SINTAKS  OUTPUT  -­‐  COUT  

Page 22: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

KARAKTER  ESCAPE  Karakter escape Escape Sequence

Name Description

\n Newline Causes the cursor to go to the next line for subsequent printing

\t Horizontal tab

Causes the cursor to skip over to the next tab stop

\a Alarm Causes the computer to beep \b Backspace Causes the cursor to back up, or

move left one position \r Return Causes the cursor to go to the

beginning of the current line, not the next line.

\\ Backslash Causes a backslash to be printed \' Single quote Causes a single quotation mark

to be printed \" Double quote Causes a double quotation mark

to be printed

Page 23: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

v  Sintaks  #include  digunakan  untuk  memasukkan  isi  dari  file  lain  ke  dalam  program  yang  dibuat  

v Misal  #include  <iostream.h>  berarT  isi  dari  file  header  iostream.h  akan  dimasukkan  ke  dalam  program  

v  Sintaks  #include  Tdak  memerlukan  ;  (semicolon  atau  TTk  koma)  di  belakangnya  

SINTAKS  DIRECTIVE  #include  

Page 24: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

v  Ditulis  dengan  huruf  kecil  semuanya,  yaitu  main().  Dan  harus  diikuT  dengan  tanda  ()    

v  Semua  statement  yang  akan  dijalankan  dalam  fungsi  main(),  diletakkan  di  dalam  {…….}  

v  Fungsi  main()  bisa  memiliki  Tpe  data  fungsi  void  atau  int  v  Untuk  fungsi  main()  yang  memiliki  Tpe  data  fungsi  int,  

maka  harus  menyertakan  return  0  ;  sebagai  statement  akhir  dalam  fungsi  main()  

v  Contoh  void main(){

<statement> } Int main(){

<statement> return 0;

}

FUNGSI  main()  

Page 25: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

­  Nama  berbagai  elemen  program  seperT  nama  variabel,  fungsi,  konstanta,  dsb  

­  Diawali  dengan  huruf  atau  garis  bawah  (underscore)  _  dan  diikuT  dengan  huruf,  digit  atau  _  

­  Huruf  besar  dianggap  berbeda  dengan  huruf  kecil  (case  sensi,ve)  ­  Panjang  maksimum  IdenTfier  tergantung  dari  compiler  sebagai  contoh  

Turbo  C  2.0  (DOS),  max  32  karakter    

­  Tidak  boleh  menggunakan  keyword  (misal  for, while,  dll.)    

­  Tidak  boleh  ada  spasi  ­  Tidak  boleh  menggunakan  karakter  khusus  seperT  <,  >,  *,  ?,  ==  dsb  

­  Contoh  iden,fier  :  name, x1, _total, cubic ­  Contoh  iden,fier  yang  salah:  1kali, int

IDENTIFIER

Page 26: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

­  Keywords  adalah  kata-­‐kata  yang  mempunyai  arT  khusus  pada  bahasa  pemrograman  komputer  dan  Tdak  dibolehkan  dipakai  untuk  iden,fier  lain.  

­  Contoh:  Ke yword 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 do if static while

KEYWORDS

Page 27: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

•  Variabel  (variable)  :  sesuatu  yang  memiliki  alamat  memori  tertentu  (di  RAM)  untuk  menyimpan  nilai  data.  

•  SeTap  variabel  memiliki  nama/iden,fier,  alamat,  Tpe,  size  (rentang  nilai)  dan  data.  

•  Nilai  data  atau  isi  variabel  dapat  diubah  saat  run  ,me  

•  Format  deklarasi  variabel:  <,pe>  <nama  [,  ...]>;  <,pe>  <nama  =  nilai_awal  [,  ...]>;  

•  Contoh:      int  a,  b,  c,  jumlah;  float  gaji,  bonus;  int  jml_mhs  =  20;  

VARIABEL

Page 28: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

•  Deklarasi  Variabel:  –  Variabel  dapat  dideklarasikan  di  seTap  awal  block  statement.    –  Block  statement  disebut    juga  “compound  statement”  adalah  

statement-­‐statement  yang  berada  diantara  {  dan    }.  –  Contoh  deklarasi  variabel:    

VARIABEL

Pengantar Bahasa C - TIF UB 2010

int x; int y; int z;

atau bisa ditulis : int x, y, z;

atau bisa juga ditulis :

int x; int y; int z;

Page 29: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

•  Pada  dasarnya  Tpe  data  primiTf  (primiTve  data  types)  pada  bahasa  pemrograman  C  berjumlah  5:  

 

29

Tipe Data Primitif/Bawaan Keyword

1.  Character

2.  Integer 3.  Long

4.  Floating point

5.  Double floating point

6.  Void

1.  Char

2.  int 3.  long

4.  float

5.  double

6.  void

TIPE DATA

­  Kemudian  Tpe  primiTf  ini  bertambah  dengan  adanya  4  modifiers.    

Page 30: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

30

RANGE TIPE DATA

 

 

Page 31: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

31

CASTING

 

•  Cast  :  untuk  mengkonversi  Tpe  data  pada  bahasa  C  

•  Sintaks  :  (type)  •  Contoh  :  

int panjang;

float pj = 55.34;

panjang = (int) f;        

Page 32: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

KOMENTAR  

•  Komentar  digunakan  untuk  menandai  bahwa  suatu  baris  atau  bberapa  baris  bukan  termasuk  ke  baris  program.  

•  Ada  2  cara  yaitu:    –  //  =  untuk  komentas  hanya  satu  baris  saja  –  /*….*/  =  untuk  komentar  beberapa  baris  

•  Contoh  Int main(){

int a; //deklarasi var. a dg tipe data int /* di bawah ini dideklarasikan variabel b dengan tipe data float */ float b;

}

Page 33: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

SINTAKS  INPUT  

•  Menggunakan  sintaks  cin  •  Preprocessor  direcTve  yang  digunakan  adalah  

iostream.h  •  Contoh  #include <iostream.h> int main(){

int a; char[50] kata; cout<<“Masukkan a = ”; cin>>a; cout<<“Masukkan kata = ”; cin.getline(kata,50);

}

Page 34: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

MEMBUAT  KONSTANTA  

•  Bisa  menggunakan  preprosesor  direcTve  #define  atau  menggunakan  kata  kunci  const  

•  KeTka  membuat  konstanta,  harus  sekalian  diisi  nilai,  dan  nanTnya  nilai  tersebut  Tdak  bisa  diubah  lagi  

•  Contoh  #include <iostream.h> #define PHI 3.14 const float x = 123; int main(){

x = 100; //ERROR, KONSTANTA TIDAK //BISA DIUBAH LAGI NILAINYA }

Page 35: ALPRO - Pengantar C++ · PDF fileProgram$c++$Tdak$akan$bisa$dijalankan$ ... " Untuk$fungsi$main()$yang$memiliki$pe $data fungsi$int, ... • Pada$dasarnya$pe $data primif

Selamat  Belajar    

 

Algoritma  dan  Pemrograman    

Serious,  Focus,  stay  cool  &  calm  JJJJJJJJJ