Struktur Algoritma & Tipe Data
Fadhly Nahwan Siddiq.,M.Kom
Program Flowchart
Terminator
Mulai/Selesai
Input/Output Seleksi/Pilihan
Proses Predefined Process
Lambang Fungsi/Subprogram
Penghubung
Predefined Data Penghubung halaman berbeda
Sistem Flowchart
Keyboard
Printer File/Storage
Display/Monitor
Sorting
Extract Merger
Magnetic Disk
Magnetic Tape Delay
Flowchart Pemilihan Bilangan
Mulai
Input A, B
A>B Cetak A
Cetak B
Selesai
1. Mulai
2. Masukan A dan B
3. Apakah A>B?
a. Bila Ya, Cetak A
b. Bila Tidak, Cetak B
4. Selesai
Y
T
Struktur Algoritma
• Bagian Kepala (Header)
Memuat nama algoritma serta informasi atau
keterangan tentang algoritma yang ditulis.
• Bagian Deklarasi (Definisi Variabel)
Memuat definisi nama variabel, nama tetapan, nama
prosedur/fungsi, tipe data yang akan digunakan.
• Bagian Deskripsi (Rincian Langkah)
Memuat langkag-langkah penyelesaian masalah,
termasuk beberapa perintah seperti baca data,
tampilkan, ulangi, yang mengubah data input menjadi
data output, dsb.
Algoritma Menghitung Luas Lingkaran
Algoritma Luas_Lingkaran
{menghitung luas lingkaran apabila jari-jari lingkaran tersebut diberikan}
Deklarasi
{Definisi nama tetapan}
integer N=10;
float phi=3.14;
{definisi nama variabel}
float jari_jari, luas;
Deskripsi
read(jari_jari);
luas=phi*jari_jari*jari_jari;
write(luas);
Algoritma Menghitung Luas Segitiga
Algoritma Luas_Segitiga
{menghitung luas segitiga dengan inputan alas dan tinggi segitiga berasal dari
keyboard}
DEKLARASI
integer alasSegitiga, tinggiSegitiga, luasSegitiga;
DESKRIPSI
read(alasSegitiga);
read(tinggiSegitiga);
luasSegitiga ← ½ * alasSegitiga * tinggiSegitiga;
write(luasSegitiga);
Algoritma Menentukan Bilangan Yang
Lebih Besar
Algoritma Lebih_besar
{menerima dua angka kemudian menampilkan angka yang lebih besar}
DEKLARASI
integer angka1, angka2;
DESKRIPSI
write(“Memasukan angka 1:”);
read(angka1);
write(“Memasukan angka 2:”);
read(angka2);
if (angka1>angka2)
then write(“yang lebih besar : ”, angka1);
else write(“yang lebih besar : ”, angka2);
endif
Tipe Data, Variabel, dan Nilai Data
• Tipe data (data type): setiap data memiliki tipe
data, apakah data tersebut berupa bilangan bulat
(integer), angka biasa (real), atau berupa karakter
(char).
• Variabel (variable): Setiap data diwakili oleh satu
variabel, data memerlukan wadah, dan variabel
harus diidentifikasi sehingga perlu diberi nama
agar bisa dibedakan dengan variabel lain.
• Nilai data (data value): Setiap data memiliki
harga atau nilai.
Tipe Data
• Data disimpan dalam memori komputer dalam
bentuk variabel-variabel mempunyai nama tertentu
dan tipe data tertentu
• Tipe data dalam algoritma:
– Tipe Dasar:
• Bilangan bulat (integer)
• Bilangan real
• Data karakter
• Data logikal atau boolean
• Bilangan tetap
– Tipe Bentukan
• Larik (array)
• Record
• String
Tipe Data Dasar
• Integer
– Bilangan bulat : bilangan yang tidak mempunyai nilai
pecahan
• Real
– Untuk menyimpan data real
– Bilangan yang dapat mempunyai digit desimal
dibelakang koma atau bilangan pecahan atau bilangan
eksponensial.
• Karakter
– Digunakan untuk menyimpan data alfanumerik
– Seperti : ‘A’, ‘B’, ‘*’, ‘@’, ‘9’ , . . .
Tipe Data Dasar [2]
• Boolean
– Mengandung dua nilai yaitu TRUE atau FALSE
– Dengan menggunakan operator AND, OR atau NOT
– Nilai boolean sangat penting untuk mengambil
keputusan dalam suatu program.
• Bilangan Tetap
– Tipe bilangan, baik bilangan bernilai bulat atau tidak,
yang nilainya tidak berubah selama algoritma
dilaksanakan
– Tipe dituliskan sebagai: const
– Jangkauan nilai meliputi semua bilangan yang
mungkin
Tipe Bentukan
• Array
– Tipe data bentukan yang merupakan wadah untuk
menampung nilai-nilai data yang sejenis.
– Contoh:
• Int nilai_ujian[10];
• String
– Tipe data bentukan yang merupakan deretan karakter
yang membentuk satu kata atau satu kalimat,
biasanya diapit oleh tanda kutip.
– Contoh:
• String nama, alamat
Tipe Bentukan [2]
• Record
– Merupakan wadah untuk menampung elemen
data yang tipe datanya tidak perlu sama
– Contoh:
• Type DataMhs:record
< nomor_stb : integer
nama_mhs : String
umur : integer
jenkel : char
>
VARIABEL
• Suatu lokasi memori komputer yang digunakan untuk
menampung dan menyimpan data yang akan diolah.
• Tipe data variabel ditentukan oleh jenis data yang akan
disimpan
• Penamaan bersifat  UNIK
• Aturan penulisan :
– Diawali dengan huruf, tidak boleh dengan angka atau simbol
– Jangan menggunakan simbol-simbol yang membingungkan
– Penulisan harus diikuti dengan Tipe Data
– Sebaiknya tidak terlalu panjang
– Tidak boleh menggunakan spasi
– Sebaiknya memiliki arti sesuai dengan elemen data
VARIABEL
• Contoh nama variabel yang benar:
nama, alamat, umur, nilai_ujian
• Contoh nama variabel yang salah:
4XYZ, IP rata, Var:+xy, nama siswa
KONSTANTA
• Besaran yang mempunyai nilai tetap selama
program dijalankan.
• Pemberian nilai yang akan disimpan dalam
sebuah konstanta dilakukan diawal program
• Selama program dijalankan nilainya tidak bisa
diubah.
• Notasi  const
Pemberian Nilai pada Variabel
Bentuk umum:
Variable ← nilai;
Variable1 ← variable2;
Variable ← ekspresi;
Contoh:
nama ← “Simon”;
jarak ← 100.56;
x ← jarak;
rentang ← x+50-3y;
Pembacaan Data
Bentuk umum:
read(variable);
read(variable1, variable2, …);
Contoh:
read(nama);
read(jarak, rentang, x);
readln(alamat);
Menampilkan Nilai
Bentuk umum:
write(variabel, …);
writeln(variabel, …);
Contoh:
write(“Nama anda:”, nama);
write(“Nilai ujian:”, nilai);
write(“Jumlah variabel:”, x+y+z);
writeln(“Alamat anda:”, alamat);
EKSPRESI
• Pernyataan yang mentransformasikan nilai
menjadi keluaran yang diinginkan melalui
proses perhitungan (komputasi)
• Ekpresi terdiri dari operand dan operator.
• Operand adalah data, tetapan, variabel, atau
hasil dari suatu fungsi.
• Operator adalah simbol-simbol yang memiliki
fungsi untuk menghubungkan operand
sehingga terjadi transformasi.
Jenis-Jenis Operator
• Operator Aritmetika
– Operator yang melakukan fungsi matematika (penjumlahan,
pengurangan, perkalian, pembagian).
• Operator relasional
– Ekspresi dengan operator <,≤,>,≥,=,≠, not, and, or, dan xor
– Hasil evaluasi adalah nilai bertipe boolean
• Operator Logic
– Operator untuk merelasikan operand secara logis seperti &&
(and), || (or), dan ! (not)
• Operator String
– Operator untuk memanipulasi string
– + (penggabungan)
– len (menghitung panjang string)
– substr (mencuplik)

Struktur Algoritma dan Tipe Data.pptx do

  • 1.
    Struktur Algoritma &Tipe Data Fadhly Nahwan Siddiq.,M.Kom
  • 2.
    Program Flowchart Terminator Mulai/Selesai Input/Output Seleksi/Pilihan ProsesPredefined Process Lambang Fungsi/Subprogram Penghubung Predefined Data Penghubung halaman berbeda
  • 3.
  • 4.
    Flowchart Pemilihan Bilangan Mulai InputA, B A>B Cetak A Cetak B Selesai 1. Mulai 2. Masukan A dan B 3. Apakah A>B? a. Bila Ya, Cetak A b. Bila Tidak, Cetak B 4. Selesai Y T
  • 5.
    Struktur Algoritma • BagianKepala (Header) Memuat nama algoritma serta informasi atau keterangan tentang algoritma yang ditulis. • Bagian Deklarasi (Definisi Variabel) Memuat definisi nama variabel, nama tetapan, nama prosedur/fungsi, tipe data yang akan digunakan. • Bagian Deskripsi (Rincian Langkah) Memuat langkag-langkah penyelesaian masalah, termasuk beberapa perintah seperti baca data, tampilkan, ulangi, yang mengubah data input menjadi data output, dsb.
  • 6.
    Algoritma Menghitung LuasLingkaran Algoritma Luas_Lingkaran {menghitung luas lingkaran apabila jari-jari lingkaran tersebut diberikan} Deklarasi {Definisi nama tetapan} integer N=10; float phi=3.14; {definisi nama variabel} float jari_jari, luas; Deskripsi read(jari_jari); luas=phi*jari_jari*jari_jari; write(luas);
  • 7.
    Algoritma Menghitung LuasSegitiga Algoritma Luas_Segitiga {menghitung luas segitiga dengan inputan alas dan tinggi segitiga berasal dari keyboard} DEKLARASI integer alasSegitiga, tinggiSegitiga, luasSegitiga; DESKRIPSI read(alasSegitiga); read(tinggiSegitiga); luasSegitiga ← ½ * alasSegitiga * tinggiSegitiga; write(luasSegitiga);
  • 8.
    Algoritma Menentukan BilanganYang Lebih Besar Algoritma Lebih_besar {menerima dua angka kemudian menampilkan angka yang lebih besar} DEKLARASI integer angka1, angka2; DESKRIPSI write(“Memasukan angka 1:”); read(angka1); write(“Memasukan angka 2:”); read(angka2); if (angka1>angka2) then write(“yang lebih besar : ”, angka1); else write(“yang lebih besar : ”, angka2); endif
  • 9.
    Tipe Data, Variabel,dan Nilai Data • Tipe data (data type): setiap data memiliki tipe data, apakah data tersebut berupa bilangan bulat (integer), angka biasa (real), atau berupa karakter (char). • Variabel (variable): Setiap data diwakili oleh satu variabel, data memerlukan wadah, dan variabel harus diidentifikasi sehingga perlu diberi nama agar bisa dibedakan dengan variabel lain. • Nilai data (data value): Setiap data memiliki harga atau nilai.
  • 10.
    Tipe Data • Datadisimpan dalam memori komputer dalam bentuk variabel-variabel mempunyai nama tertentu dan tipe data tertentu • Tipe data dalam algoritma: – Tipe Dasar: • Bilangan bulat (integer) • Bilangan real • Data karakter • Data logikal atau boolean • Bilangan tetap – Tipe Bentukan • Larik (array) • Record • String
  • 11.
    Tipe Data Dasar •Integer – Bilangan bulat : bilangan yang tidak mempunyai nilai pecahan • Real – Untuk menyimpan data real – Bilangan yang dapat mempunyai digit desimal dibelakang koma atau bilangan pecahan atau bilangan eksponensial. • Karakter – Digunakan untuk menyimpan data alfanumerik – Seperti : ‘A’, ‘B’, ‘*’, ‘@’, ‘9’ , . . .
  • 12.
    Tipe Data Dasar[2] • Boolean – Mengandung dua nilai yaitu TRUE atau FALSE – Dengan menggunakan operator AND, OR atau NOT – Nilai boolean sangat penting untuk mengambil keputusan dalam suatu program. • Bilangan Tetap – Tipe bilangan, baik bilangan bernilai bulat atau tidak, yang nilainya tidak berubah selama algoritma dilaksanakan – Tipe dituliskan sebagai: const – Jangkauan nilai meliputi semua bilangan yang mungkin
  • 13.
    Tipe Bentukan • Array –Tipe data bentukan yang merupakan wadah untuk menampung nilai-nilai data yang sejenis. – Contoh: • Int nilai_ujian[10]; • String – Tipe data bentukan yang merupakan deretan karakter yang membentuk satu kata atau satu kalimat, biasanya diapit oleh tanda kutip. – Contoh: • String nama, alamat
  • 14.
    Tipe Bentukan [2] •Record – Merupakan wadah untuk menampung elemen data yang tipe datanya tidak perlu sama – Contoh: • Type DataMhs:record < nomor_stb : integer nama_mhs : String umur : integer jenkel : char >
  • 15.
    VARIABEL • Suatu lokasimemori komputer yang digunakan untuk menampung dan menyimpan data yang akan diolah. • Tipe data variabel ditentukan oleh jenis data yang akan disimpan • Penamaan bersifat  UNIK • Aturan penulisan : – Diawali dengan huruf, tidak boleh dengan angka atau simbol – Jangan menggunakan simbol-simbol yang membingungkan – Penulisan harus diikuti dengan Tipe Data – Sebaiknya tidak terlalu panjang – Tidak boleh menggunakan spasi – Sebaiknya memiliki arti sesuai dengan elemen data
  • 16.
    VARIABEL • Contoh namavariabel yang benar: nama, alamat, umur, nilai_ujian • Contoh nama variabel yang salah: 4XYZ, IP rata, Var:+xy, nama siswa
  • 17.
    KONSTANTA • Besaran yangmempunyai nilai tetap selama program dijalankan. • Pemberian nilai yang akan disimpan dalam sebuah konstanta dilakukan diawal program • Selama program dijalankan nilainya tidak bisa diubah. • Notasi  const
  • 18.
    Pemberian Nilai padaVariabel Bentuk umum: Variable ← nilai; Variable1 ← variable2; Variable ← ekspresi; Contoh: nama ← “Simon”; jarak ← 100.56; x ← jarak; rentang ← x+50-3y;
  • 19.
    Pembacaan Data Bentuk umum: read(variable); read(variable1,variable2, …); Contoh: read(nama); read(jarak, rentang, x); readln(alamat);
  • 20.
    Menampilkan Nilai Bentuk umum: write(variabel,…); writeln(variabel, …); Contoh: write(“Nama anda:”, nama); write(“Nilai ujian:”, nilai); write(“Jumlah variabel:”, x+y+z); writeln(“Alamat anda:”, alamat);
  • 21.
    EKSPRESI • Pernyataan yangmentransformasikan nilai menjadi keluaran yang diinginkan melalui proses perhitungan (komputasi) • Ekpresi terdiri dari operand dan operator. • Operand adalah data, tetapan, variabel, atau hasil dari suatu fungsi. • Operator adalah simbol-simbol yang memiliki fungsi untuk menghubungkan operand sehingga terjadi transformasi.
  • 22.
    Jenis-Jenis Operator • OperatorAritmetika – Operator yang melakukan fungsi matematika (penjumlahan, pengurangan, perkalian, pembagian). • Operator relasional – Ekspresi dengan operator <,≤,>,≥,=,≠, not, and, or, dan xor – Hasil evaluasi adalah nilai bertipe boolean • Operator Logic – Operator untuk merelasikan operand secara logis seperti && (and), || (or), dan ! (not) • Operator String – Operator untuk memanipulasi string – + (penggabungan) – len (menghitung panjang string) – substr (mencuplik)