Transcript bahasa c++

STMIK – AMIK JAYANUSA PADANG
Web Site : www.jayanusa.ac.id
E-mail : [email protected]



Bahasa C hasil kreasi dari Dennis M. Ritchie
(1972) di Bell Telephone Laboratory Inc., Murray
Hill, New Jersey, USA (Sekarang dikenal dengan
AT&T Bell Laboratory)
Implementasi pertama pada OS UNIX, dan
dijalankan di mesin DEC PDP-II
Merupakan pengembangan dari B (Ken
Thomson) dan bahasa BCPL/Basic Command
Programming Language (Martin Richards)





Bahasanya Ringkas, hanya terdiri dari 32
Keyword menurut Standar C
Tersedia secara komersial untuk segala jenis
komputer dan sistem operasi
Terstruktur sekaligus fleksibel
Programnya bekerja lebih cepat dan lebih
tangguh, karena akses dekat ke sistem
Kebanyakan pengembangan bahasa
pemrograman ke depan meniru sintax C (CLike = Mirip C), seperti : Java, JavaScript, C#,
PHP, dll.




C
Versi ANSI : Turbo C
Borland C++
Visual C++
Beberapa compiler juga menyediakan beberapa keyword seperti
berikut ini :
asm
ada
far
fortran
huge
near
pascal
Catatan :
• Semua keyword pada kode program C++ ditulis dengan huruf kecil
• Perintah-perintah C++ yang lain disediakan oleh library-nya yang
diakses melalui kode program dengan preprocessor #include




Semua prosedur dalam bentuk Fungsi, minimal
harus ada 1 fungsi wajib, yaitu Fungsi Main()
Tidak mengenal space sebagai pemisah, kecuali
antar instruksi yang berbeda
Setiap statemen dipisahkan dengan semi colon (;)
Kode program bersifat Case Sensitive
(membedakan huruf kapital dan huruf kecil).
Keyword dan perintah-perintah dituliskan dengan
huruf kecil
Setiap programm C++ terdiri dari satu atau lebih
fungsi (function). Salah satu dari fungsi tersebut
harus bernama Main().
Struktur Program
[Deklarasi header/library]
[Deklarasi Variabel/konstanta]
[Deklarasi Fungsi]
Fungsi Utama ( Fungsi main() )
[…….] = Optional adanya tergantung kebutuhan
#include <header_name>
Atau
#include “header_name”
Contoh :
Hanya akan dicari didirectoy include
yang ditentukan pada konfigurasi
Pertama akan dicari didirectoy
aktif, jika tidak ketemu akan
dicari di directory include yang
ditentukan pada konfigurasi
#include <stdio.h>
Atau
#include “stdio.h”
Atau
#include “c:\tc\include\stdio.h”
Hanya akan dicari didirectoy
yang langsung ditentukan
Fungsi yang didellarasikan pada library : stdio.h
clearerr
ferror
fflush
fileno
flushall
fputs
fread
ftell
fwrite
perror
printf
remove
rename
setvbuf
sprintf
tmpfile
tmpnam
vprintf
vscanf
fclose
fcloseall
fdopen
feof
fgetc
fgetchar
fgetpos
fgets
fopen
fprintf
fputc
fputchar
freopen
fscanf
fseek
fsetpos
getc
getchar
gets
getw
putc
putchar
puts
putw
rewind
rmtmp
scanf
setbuf
sscanf
strerror
_strerror
tempnam
ungetc
unlink
vfprintf
vfscanf
vsprintf
vsscanf
Fungsi yang dideklarasikan pada library : conio.h
cgets
cprintf
cputs
getch
getche
gettextinfo
gotoxy
inp
inport
kbhit
lowvideo
outp
outport
putch
puttext
textbackground
textcolor
wherex
wherey
clreol
clrscr
cscanf
delline
getpass
gettext
highvideo
insline
inportb
inpw
movetext
normvideo
outportb
outpw
_setcursortype
textattr
textmode
ungetch
window
Include-kan library stdio.h atau conio.h jika di dalam kode program
anda membutuhkan fungsi-fungsi di atas
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int f,g,h;
f=5;
g=8;
h=f+g;
cout<<“Hasil Jumlahnya : ”<<h<<endl;
getche();
}
#include<stdio.h>
#include<conio.h>
#include<iostream.h>
void main()
{
int f,g,h;
cout<<“Masukan nilai f : “;
cin>>f;
cout<<“Masukan nilai g : “;
cin>>g;
h=f+g;
cout<<“Hasil Jumlahnya : ”<<h<<endl;
getche();
}
Escape
Sequence
Fungsi
\a
Membunyikan Speaker (pada compiler tertentu)
\b
Menghapus satu karakter yang ada di depan escape sequence
\n
Pindah ke kolom paling awal dibaris berikutnya (enter)
\r
Pindah ke kolom paling awal dibaris yang sama
\t
Pindah sejauh tabulasi (8 karakter)
\”
Mencetak tanda petik ganda
\\
Mencetak tanda Back Slash (“\”)
\ddd
Mencetak karakter tertentu dari Kode ASCII (ddd diganti dengan
sembarangan bilangan oktal antara 000-376)
Adalah suatu nilai yang sifatnya tetap,
misalnya angka ‘2’, s adalah dua bukan 3.
Type –type konstanta pada C++:
1.
Numeric (Bilangan)
a. Bilangan Bulat (Integer)
b. Bilangan Desimal Presisi Tunggal (Floating
Point)
c. Bilangan Decimal Presisi Ganda (Double
Precision)
2. Teks
a. Data Karakter
Hanya terdiri dari sebuah karakter saja.
Ditandai dengan 2 tanda kutip tunggal
(‘..’) sebagai pembatasnya.
Contoh : ‘A’, ‘k’, ‘3’, ‘*’
b. Data String
Data ini merupakan rangkaian beberapa
karakter, ditandai dengan 2 tanda kutip
ganda (“..”) sebagai pembatasnya
Contoh : “AMIR”, “BELAJAR, “500”
Yaitu identifier yang digunakan untuk menampung
data/informasi.
Syarat penulisan variabel :
1.
Panjang variabel maksimum 32 karakter (standar
ANSI)
2.
Boleh terdiri dari Abjad, Angka dan tanda hubung
3.
Tidak boleh dimulai dengan angka
4.
Tidak boleh menggunakan operator Aritmetik (+, ,dll)
5.
Tidak boleh menggunakan karakter-karakter
khusus (; , : # dll)
6.
Tidak boleh menggunakan spasi
7.
Tidak boleh menggunakan Keyword C++
8.
C membedakan huruf kapital dan huruf kecil (Case
Sensitive)
Tipe Data
Character
Integer
Simbol Deklarasi
Char
Range Nilai
-128 s/d 127
int
-32,768 s/d 32,767
Long Integer
long
-2,147,483,648 s/d
2,147,483,647
Floating Point
float
-3,4 x 10+38 s/d -3,4 x 10-38
3,4 x 10-38 s/d 3,4 x 10+38
Double Precision
double
-1,7 x 10+308 s/d -1,7 x 10-308
1,7 x 10-308 s/d 1,7 x 10+308
• Operator Arithmatic :
+
-
*
/
%
Contoh :
c=a+b;
d=5%2;
{ Note : Pangkat dengan fungsi pow() }
• Operator Aritmatic Assignment
+= -= *= /= %=
Contoh :
c=5;
c+=2;
c-=2;
{c=7 dari c=c+2}
{…………………..}
Operator increment/decrement
++ -Contoh :
c=4;
c++; {c=5 dari c=c+1}
c--;
{…………………..}
a=5;
b=a++; {a=6 b=5}
b=++a; {a=6 b=6}
• Operator relational
< > <= >=
== {equal}
!= {not equal}
Contoh :
(5>=2)
(k==toupper(‘y’))
(n!=0)
• Operator Logika
&& {AND}
||
{OR}
!
(Not}
Contoh :
(n!=0) && (k=toupper(‘y’))
A || B
Operator pointer
& {address of}
* {value of}
Contoh :
{ Next discussion }
?:
Operator Pergeseran bit
<<
{Shift Right}
>>
{Shift left}
Contoh :
Contoh :
•Operator kondisional
z = (x < y) ? x : y;
pernyataan di atas sama
dengan :
if (x < y)
z = x;
else
z = y;
A=1;
B=A << 3 {B=8}
Operasi-operasi berikut ini
valid :
c=b=a+5;
c=b=(c!=d);
Fungsi cout<<
Digunakan untuk mencetak data, baik yang
bertipe numeric ataupun teks, baik konstanta
maupun variabel, contoh :
cout<<“Saya Belajar Bahasa Pemrograman C”;
cout<<‘a’;
Fungsi Output yang lain, diantaranya :
 puts()
 putschar()
 putch()
 cprintf()
Sebagai Tugas Cari fungsi dan tatacara penulisannya !
Fungsi cin>>
Digunakan untuk memasukan nilai terhadap
suatu variabel.
Contoh : cin>>a;
Fungsi Input yang lain, diantaranya :

getchar()

getch()

scanf()

getche()

gets()
Sebagai Tugas Cari fungsi dan tatacara penulisannya !
A.Pernyataan if
Pernyataan if membagi suatu alur proses menjadi 2
cabang. Cabang pertama akan dijalakan bila syarat
terpenuhi, cabang kedua akan dijalankan jika syarat tidak
terpenuhi
Bentuk Umum :
If(syarat)
If(syarat)
{
… perintah;
… perintah;
Jika hanya mengandung 1 buah
perintah
… perintah;
… perintah;
}
Jika mengandung banyak perintah
B. Pernyataan if else
Kedua Cabang, yaitu syarat terpenuhi dan syarat tidak terpenuh,
masing-masing memiliki perintah yang harus dijalankan
Bentuk Umum :
If(syarat)
… perintah;
If(syarat)
{
{
Else
… perintah;
… perintah;
… perintah;
… perintah;
… perintah;
}
Else
}
C. Pernyataan else if
Untuk yang memiliki banyak kondisi
Bentuk Umum :
If(syarat)
{
{
… perintah;
… perintah;
}
Else if(syarat)
{
{
… perintah;
… perintah;
… perintah;
… perintah;
… perintah;
… perintah;
}
}
Else if(syarat)
Else
}
D. Nested if
Untuk yang memiliki kondisi didalam kondisi
Bentuk Umum :
If(syarat)
if(syarat)
… perintah;
else
… perintah;
else
if(syarat)
… perintah;
else
… perintah;
If(syarat)
{
{
… perintah;
… perintah;
… perintah;
… perintah;
}
if(syarat)
}
{
else
… perintah; {
… perintah;
… perintah
}
… perintah
else
if(syarat)
dst………..
E. Switch and break
Sama dengan else if, namun khusus untuk memeriksa data yang bertipe
character atau integer
Bentuk Umum :
switch(variabel integer atau character)
{
case nilai_pertama_variabel :
… perintah;
… perintah;
break;
case nilai_kedua :
… perintah;
… perintah;
break;
default :
… perintah;
… perintah;
}
String adalah kumpulan dari character/huruf,
bisa berupa kata atau kalimat.
I. Mendeklarasikan string
Sama seperti mendeklarasikan tipe character,
namun ditambah indeks sebagai batas
maksimum jumlah huruf yang bisa ditampung.
Bentuk Umum : char nama_variable[indeks]
Contoh : char nama[20]
Catatan : Jumlah Huruf yang dapat ditampung
adalah -1 dari indeks.
II. Inisialisasi String
Ada 2 cara :
1. Char nama[5]={‘A’,’N’,’I’,’S’,’A’)
2. Char nama[5]=“ANISA”
III. Mencetak / Output String
Sama dengan tipe data yang lain
Contoh : printf(“Nama Saya : %s”, “anisa”);
char nama[5]=“anisa”
printf(“Nama Saya : %s”,nama);
IV. Menginput String
1. scanf(“%s”,nama_variabel)
Tidak menggunakan tanda “&” didepan
variabel. Hanya dapat menyimpan 1 kata
2. gets(nama_variabel)
Dapat menyimpan lebih dari 1 kata
V. Fungsi-fungsi string yang tersedia
Header untuk semua fungsi string terdapat pada
file-file include <string.h>
1. strcpy(dari data string copy)
Untuk mengisi sebuah variabel string atau
mengcopy isi variabel string ke variabel string
yang lain.
Bentuk Umum : strcpy(str_tujuan,str_asal)
Contoh : strcpy(nama,”imam”);
strcpy(nama_lain,nama)
2. strlen(dari kata string length)
Untuk menghitung banyak karakter (selain null)
yang terdapat dalam sebuah variabel string
Bentuk Umum : panjang_str=strlen(string)
Contoh : panjang=strlen(nama)
3. strupr(dari kata string upper)
Untuk mengubah huruf-huruf yang ada didalam
variabel string menjadi huruf besar
Contoh : strupr(nama)
4. strlwr(dari kata string lower)
Untuk mengubah huruf-huruf yang ada didalam
variabel string menjadi huruf kecil
Contoh : strlwr(nama)
5. strcmp(dari kata string compare)
Untuk membandingkanapakah dua buah
variabel string mempunyai isi yang sama
Bentuk Umum : status=strcmp(string1, string2)
Contoh : sama=strcmp(nama,“imam”), jika
status = 0 maka isi string sama, jika status = 1
maka isi string berbeda
6. atoi (dari kata ascii to integer)
Untuk mengkonversikan string menjadi integer
Contoh : bil=atoi(x)
7. atof (dari kata ascii to float)
Untuk mengkonversikan string menjadi float
Contoh : bil=atof(x)
Catatan : Untuk mengetahui fungsi string yang
lain , buka Help pada Visual C++ atau Borland
C ++
PENGULANGAN/LOOPING
I. for
Bentuk Umum :
for(inisialisasi;syarat perulangan;perubahan nilai pencacah)
Pernyataan/perintah;
for(inisialisasi;syarat perulangan;perubahan nilai pencacah)
{
Pernyataan/perintah;
Pernyataan/perintah;
Pernyataan/perintah;
}
Pengulangan for tak terhingga
for( ;;)
{
Pernyataan/perintah;
Pernyataan/perintah;
Pernyataan/perintah;
}
Nested For
Yaitu perulangan for yang berada dalam ruang lingkup
for lainnya
for(inisialisasi;syarat perulangan;perubahan nilai pencacah)
{
for(inisialisasi;syarat perulangan;perubahan nilai pencacah)
{
Pernyataan/perintah;
Pernyataan/perintah;
Pernyataan/perintah;
}
}
Contoh
Main()
{
int i, j;
For (i=1; i<=3, i++)
{ for (j=1;j<=4;j++)
cout<<“ (I=i, J=j”<<endl;
}
}
Hasil :
(I=1, Y=1)
(I=1, Y=2)
(I=1, Y=3)
(I=1, Y=4)
(I=2, Y=1)
(I=2, Y=2)
(I=2, Y=3)
(I=2, Y=4)
(I=3, Y=1)
(I=3, Y=2)
(I=3, Y=3)
(I=3, Y=4)
(I=4, Y=1)
(I=4, Y=2)
(I=4, Y=3)
(I=4, Y=4)
II. While
Bentuk Umum :
while(syarat)
Pernyataan/perintah;
while(syarat)
{
Pernyataan/perintah;
Pernyataan/perintah;
Pernyataan/perintah;
}
III. do….while
Bentuk Umum :
do
{
Pernyataan/perintah;
Pernyataan/perintah;
Pernyataan/perintah;
}
while(syarat);
III. Pernyataan break and continue
-break : untuk menghentikan loop dan melanjutkan ke perintah
selanjutnya
-continue : mengemblikan proses yang sedang dilaksanakan ke
awal loop lagi tanpa menjalankan sisa perintah dalam loop tersebut