ELEMEN DASAR C++
ELEMEN DASAR C++
1. Himpunan karakter
2. Pengenal (identifier)
3. Kata kunci
4. Tipe data
5. Variabel dan konstanta
6. Pemodifikasi tipe unsigned dan signed
7. Konstanta oktal dan desimal
8. Konstanta string
9. Konstanta bernama
1. Himpunan karakter
Himpunan karakter pada C++ tediri dari huruf,digit
dan simbol‐simbol lainnya( termasuk spasi, karakter
kontrol)
2. Pengenal (identifier)
Pengenal adalah suatu nama yang biasa dipakai
dalam pemrograman untuk menyatakan : variabel,
konstanta bersama, tipe data, fungsi, label dan
obyek.
Penamaan pengenal
*Suatu pengenal berupa satu atau beberapa
karakter : huruf, digit, garis‐bawah (_).
*Panjang maksimal nama pengenal C++ tergantung
pada kompiler yang digunakan. Turbo C++ ( 31
karakter), Borland C++ ( 32 karakter).
* Pemberian nama pengenal menggunakan kata
yang berarti dan mudah dibaca.
* Bahasa C ++ mempunyai sifat case sensitive.
3. Kata Kunci ( keyword)
Merupakan pengenal sistem yang mempunyai makna
khusus bagi kompiler. Kata kunci tidak dapat
digunakan sebgai pengenal yang dibuat oleh
pemrogram.
4.Tipe Data
Tipe data dikelompokkan menjadi 2 :
‐ tipe dasar : tipe yang dapat langsung dipakai
‐ tipe bentukan : dibentuk dari tipe dasar atau dari
tipe bentukan lain yg sudah didefinisikan
sebelumnya.
Tipe Data Dasar
_ bilangan logik
_bilangan bulat
_karakter
_bilangan riil
_string
Bilangan logik
Nama tipe : boolean
Ranah nilai : benar dan salah ( 1 dan 0)
Konstanta : true dan false
Operasi : NOT, OR, XOR
Bilangan bulat : bilangan yg tidak mengandung pecahan
desimal
Nama tipe : integer ( char dan int: short dan long)
Ranah nilai : char(1 byte), int ( 2 byte)
Konstanta : ditulis tanpa mengandung titik desimal.
Operasi : operasi aritmetika dan perbandingan
Operasi aritmetika : + , ‐ , * , div dan mod (sisa hasil bagi)
Contoh :
10 div 3 = 3
10 mod 3 = 1
Operasi perbandingan
Operasi perbandingan terhadap bilangan bulat dengan
salah satu operator relasional menghasilkan nilai
boolean ( true or false)
Operator :
< = lebih kecil
≤ = lebih kecil atau sama dengan
> = lebih besar
≥ = lebih besar atau sama dengan
= = sama dengan
!= = tidak sama dengan
Contoh : 3 < 8 ( true), 17 <8 ( false)
Bilangan riil
Adalah bilangan yang mengandung pecahan desimal.
Nama tipe = real ( floating‐point)
Ranah nilai = float ( bilangan riil berpresisi tunggal) and
double ( bilangan riil berpresisi ganda)
Konstanta = harus diberi tanda titik desimal.
Operasi = operasi aritmetika , operasi perbandingan
Operasi aritmetika
Operator : +, ‐, *, /
Operasi perbandingan
Operator :
< = lebih kecil
≤ = lebih kecil atau sama dengan
> = lebih besar
≥ = lebih besar atau sama dengan
≠ = tidak sama dengan
Karakter
Yang termasuk ke dalam karakter adalah semua huruf
abjad,semua tanda baca, angka, dan karakter –
karakter khusus .
Nama tipe : char
Ranah nilai : semua huruf di dalam alfabet, angka
desimal, tanda baca, operator aritmetik dan karakter
karakter khusus.
Konstanta : harus diapit oleh tanda petik tunggal.
Operasi : operasi perbandingan
String
Merupakan untaian karakter dengan panjang tertentu.
Namatipe : string
Ranah nilai: deretan karakter yang telah didefinisikan
pada ranah karakter.
Konstanta : harus diapit oleh tanda petik tunggal.
String kosong (null) adalah string yang panjangnya nol,
dan dilambangkan dengan “
Operasi : operasi penyambungan dan perbandingan
Operasi penyambungan
Operator + adalah penyambungan. Bila a dan b adalah
variabel string, maka a + b = ab
Operator perbandingan : menghasilkan nilai false atau
true.
Operator :
< = lebih kecil
≤ = lebih kecil atau sama dengan
> = lebih besar
≥ = lebih besar atau sama dengan
≠ = tidak sama dengan
Tipe Bentukan
Adalah tipe yang didefinisikan sendiri oleh pemrogram.
Disusun oleh satu atau lebih tipe dasar.
Ada 2 tipe bentukan :
1. Tipe dasar yang diberi nama dengan nama tipe baru
2. Tipe terstruktur
1. Tipe Dasar yg diberi nama tipe baru
Tujuan: agar nama baru lebih akrab dan mudah
diinterpretasi oleh orang yang membaca teks
algorithma.
Nama baru untuk tipe dasar tersebut dengan kata kunci
type.
2. Tipe terstruktur
Adalah tipe yang berbentuk rekaman ( record). Rekaman
disusun oleh satu atau lebih field. Tiap field
menyimpan data dari tipe dasar tertentu atau dari
tipe bentukan lain yang sudah didefinisikan
sebelumnya. Nama rekaman ditentukan sendiri oleh
pemrogram.
Contoh:
a) Titik dalam koordinat kartesian dinyatakan dengan
(x,y). Kita dapat mendefinisikan titik sebagai tipe
bentukan baru dengan x dan y sebagai nama fieldnya.
Cara penulisan tipe Titik :
type Titik : record < x : real, y:real >
Atau
type Titik : record<x, y :real>
Kata kunci record menyatakan bahwa Titik adalah tipe
terstruktur.
Tipe Titik didefinisikan :
Nama tipe = Titik
Ranah nilai = ( real, real)
Contoh konstanta = < 2.5, 13.2>
Operasi = operasi aritmetik bilangan riil terhadap x
dan y . Operasi perbandingan terhadap x dan y.
b. Bilangan kompleks adalah bilangan yang dapat
dinyatakan sebagai a + bi, a dan b = riil sedangkan
i=√‐1
Kita dapat menyatakan sebuah bilangan kompleks
sebagai tipe rekaman dengan a dan b sebagai nama
fieldnya.
Cara menuliskan tipe Kompleks :
type Kompleks : record <a:real, b:real>
Definisi tipe Kompleks :
nama tipe : Kompleks
ranah nilai : ( real,real)
Contoh konstanta : < 4.0 , ‐100 >
Operasi : operasi aritmetik bill riil terhadap a dan b
operasi perbandingan terhadap masing‐
masing field
c. Didefinisikan tipe terstruktur yang mewakili tanggal
dalam kalender Masehi. Tipe bentukannnya diberi
nama Tanggal.
Cara menuliskan tipe Tanggal :
type Tanggal : record
< dd : integer, { 1..31}
mm : integer, {1..12}
yy : integer { > 0}
>
Tipe Tanggal didefinisikan:
Nama tipe : Tanggal
ranah nilai : sesuai ranah nilai masing‐masing field
contoh konstanta : <12,7,2000>
operasi : operasi aritmetika bilangan bilat terhadap
tiap field
operasi perbandingan terhadap masing‐masing field.
Contoh : struktur tipe bentukan yang cukup kompleks.
Misalkan ingin menyimpan data nilai‐nilai mata kuliah
yang diambil setiap mahasiswa. Data yang disimpan
di dalam struktur rekaman sebagi berikut :
1. NIM ( nomor induk siswa)
2. NamaMhs ( nama mahasiswa)
3. Mata kuliah: kode mata kuliah, nama mata kuliah,
nilai mata kuliah.
Jawab:
type MataKuliah : record
< KodeMk : string, { kode mata kuliah}
NamaMK : string, { nama mata kuliah}
Nilai : char { indeks nila MK ( A/B/C/D/E)}
>
Type NilMhs : record
< Nim : string, { Nomor induk mahasiswa}
NamaMhs : string { nama mahasiswa }
MK : MataKuliah
>
*Dalam algoritma , nama dipakai sebagai pengidentifikasi
“ sesuatu” dan pemrogram mengacu “sesuatu”
melaui namanya. Sehingga tiap nama harus unik,
tidak boleh ada dua nama yang sama.
• Semua nama yang digunakan di dalam algoritma
harus dideklarasikan di bagian DEKLARASI sebelum
digunakan.
• Dalam algoritma, objek yang diberi nama dapat
berupa :
1. variabel : tempat untuk menyimpan nilai yg isinya
dapat diubah.
2. Konstanta : tempat untuk menyimpan yg nilainya
tetap dan tidak boleh diubah.
3. Tipe bentukan
4. Nama fungsi