Modul Algoritma & Pemrograman Bahasa C - Pendahuluan
Modul Algoritma & Pemrograman Bahasa C - Pendahuluan
PENDAHULUAN
0.1 Tujuan
Praktikum Algoritma dan Pemrograman bertujuan untuk :
• Memberikan pengetahuan kepada praktikan tahapan-tahapan dalam
pembuatan algoritma.
• Praktikan bisa membuat algoritma untuk memecahkan suatu masalah secara
logis.
• Praktikan bisa membuat program dari suatu algoritma.
• Praktikan bisa membiasakan diri untuk menyelesaikan program secara
terstruktur dengan menggunakan algoritma.
• Praktikan bisa menerapkan algoritma pada suatu kasus tertentu yang
diberikan.
• Praktikan dapat membuat algoritma yang diperlukan dalam membuat suatu
program
• Menunjang mata kuliah Algoritma dan Pemrograman
• Memberikan wawasan kepada praktikan untuk menghadapi mata kuliah
Struktur Data, Pemrograman Berbasis Objek, Tugas Besar Proyek I dan II,
Kerja Praktek dan Tugas Akhir.
• Membiasakan praktikan untuk menyelesaikan tugas/pekerjaan tepat waktu
sesuai yang telah dijadwalkan.
0.2 Teori
0.2.1 Definisi Algoritma
“Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang
disusun secara sistematis”.
0-1
0-2
Algoritma Nama_Algoritma
{Penjelasan tentang algoritma, yang berisi uraian singkat mengenai apa yang
dilakukan oleh algoritma}
Deklarasi
{Semua nama yang dipakai, meliputi nama tipe, nama tetapan, nama peubah,
nama prosedur dan nama fungsi didefinisikan disini}
Deskripsi
{Semua langkah/aksi algoritma dituliskan disini}
0.2.2 Bahasa C
Struktur dari program C dapat dilihat sebagai kumpulan dari sebuah atau
lebih fungsi-fungsi. Fungsi pertama yang harus ada di program C adalah main().
Suatu fungsi di program C dibuka dengan kurung kurawal ({) dan ditutup dengan
kurung kurawal tutup (}). Di antara kurung kurawal dapat dituliskan statemen
program C. Berikut ini adalah struktur dari program C:
/* Program nama program */
/* Semua pendefinisian tetapan dan tipe bentukan ditulis sebagai makro */
/* Deklarasi */
/* Semua nama yang penggunaannya global didefinisikan disini */
/* Deskripsi */
main()
0-3
{
/* disini juga mungkin ada deklarasi lokal */
/* semua instruksi program dituliskan disini */ }
Deklarasi
Nama : string
A, B : integer
Deskripsi
A ← 25
B ← 100
A←B
Write(‘Nilai A : ’, A) //akan menghasilkan tulisan 100 di layar monitor}
Program Algoritma 1:
/* Menuliskan nilai A di layar monitor */
#include <stdio.h>
0-4
main() {
/* Deklarasi */
char Nama[20];
int A,B;
A = 25;
B = 100;
A = b;
/* Deskripsi */
printf ("masukan nama "); scanf("%s", Nama);
printf("%s",Nama);
printf(" mendapat nilai : %d\n", A);
}
b. Identifier tidak boleh berupa angka atau diawali dengan karakter yang
berupa angka. Contoh: int 2x (salah), int 1000 (salah), int x2 (benar).
c. Identifier tidak boleh mengandung spasi. Contoh: int bilangan bulat;
(salah), int bilangan_bulat; (benar), int _bilanganbulat (benar).
d. Identifier tidak boleh menggunakan karakter-karakter simbol (#, $, %, dll).
e. Identifier tidak boleh menggunakan kata kunci (keyword) yang terdapat
pada C. Contoh: int break; (salah).
f. Nama identifier sebaiknya disesuaikan dengan kebutuhannya, artinya
jangan sampai orang lain bingung hanya karena salah dalam penamaan
identifier.
g. Sebisa mungkin hindarilah penggunaan nama identifier yang sama dengan
identifier yang digunakan oleh C.
Identifier sendiri dibagi menjadi 2 (dua) yaitu:
1. Konstanta
Konstanta adalah jenis identifier yang bersifat konstan atau tetap. Suatu
konstanta harus didefinisikan terlebih dahulu di awal program. Konstanta
dapat bernilai integer, pecahan, karakter dan string, contoh: 20; 3.14; 2.50005;
‘X’; ‘Bahasa C’.
Contoh : #define PHI 3.14
#define nim "1043304"
#define nama "Tasya Tembem"
2. Variabel
• Variabel adalah sebuah identifier yang mempunyai nilai dinamis. Artinya
bahwa nilai variabel tersebut dapat diubah sesuai kebutuhan dalam
program. Contoh penamaan variabel:
Variabel Global
Program dalam bahasa C selalu terdapat fungsi utama dengan nama main().
Jika kita mendeklarasikan sebuah variabel di luar fungsi, maka dengan
sendirinya komputer akan menganggap variabel tersebut sebagai variabel
global.
Variabel Lokal
Variabel lokal adalah variabel yang hanya dikenali oleh suatu fungsi saja,
artinya tidak dikenal oleh lingkungan luar di dalam program yang kita buat.
Contoh variabel global dan lokal:
#include <stdio.h>
int main() {
int B; // variabel lokal
}
Contoh Algoritma 2:
Algoritma KelilingPersegiPanjang
{Menghitung keliling persegi dari panjang dan lebar yang bertipe bilangan
bulat}
Deklarasi
P, L, Keliling : integer
Deskripsi
P ← 25
L ← 10
Keliling ← 2 * (P + L)
Write(‘Keliling = ’, Keliling)
Program Algoritma 2:
//Menghitung keliling persegi panjang
#include <stdio.h>
main() {
int P, L, Keliling;
0-7
P = 25;
L = 10;
Keliling = 2 * (P + L);
printf("Keliling : %d\n", Keliling);
}
Contoh Algoritma 3:
Algoritma NilaiAkhir
{Masukan berturut-turut adalah nama mahasiswa, nilai tugas, UTS, dan UAS.
Algoritma akan menghitung nilai akhir yang ditentukan dengan formula nilai
akhir = 20% tugas + 30% UTS + 50% UAS serta menampilkan nama serta
nilai akhir.}
Deklarasi
Nama : string
Tugas, UTS, UAS : integer
Nilai_akhir : real
Deskripsi
Read(Nama, Tugas, UTS, UAS)
Nilai_akhir ← 0.2 * Tugas + 0.3 * UTS + 0.5 * UAS
Write(‘Nilai akhir dari ’, Nama, ‘adalah ‘, Nilai_akhir)
Program Algoritma 3:
// Menghitung NilaiAkhir
#include <stdio.h>
main() {
// Deklarasi
char Nama[20];
int Tugas, UTS, UAS;
float Nilai_akhir;
/* Deskripsi: */
printf("Nama : ");scanf("%s",Nama);
printf("Tugas : ");scanf("%d",&Tugas);
printf("UTS : ");scanf("%d",&UTS);
printf("UAS : ");scanf("%d",&UAS);
Nilai_akhir = 0.2 * Tugas + 0.3 * UTS + 0.5 * UAS;
printf("\nNama : %s\n",Nama);
printf("Nilai akhirnya adalah %f",Nilai_akhir);
}
0-8
Contoh Algoritma 4:
Algoritma Jarak
{Menghitung jarak (berupa panjang garis) antara 2 titik. Formula yang akan
digunakan, adalah jarak ← SQR((x1 – x2)2 + (y1 – y2)2) dengan meminjam
fungsi SQR dari C++ yang berupa fungsi untuk menghitung akar- pangkat-2}
Deklarasi
Type Titik <X , Y : integer>
Var Titik1, Titik2 : Titik
Jarak : real
Deskripsi
Write(’Masukan koordinat titik pertama ’)
read(Titik1.X , Titik1.Y)
Write(’Masukan koordinat titik kedua ’)
read(Titik2.X , Titik2.Y)
Jarak ← (Titik1.X – Titik2.X)2 + (Titik1.Y – Titik2.Y)2
Jarak ← SQRT(Jarak)
Write(‘Jarak antara titik 1 dan titik 2 adalah : ’, Jarak)
Program Algoritma 4:
// Menghitung jarak (berupa panjang garis) antara 2 titik
#include <stdio.h>
#include <math.h>
main() {
// Deklarasi
typedef struct {
int X;
int Y ;
} Titik;
/* Deskripsi: */
printf("Titik1 X : ");scanf("%d",&Titik1.X);
printf("Titik2 X : ");scanf("%d",&Titik2.X);
printf("Titik1 Y : ");scanf("%d",&Titik1.Y);
printf("Titik2 Y : ");scanf("%d",&titik2.Y);
0.3 Referensi
Referensi-referensi yang dapat digunakan selain modul praktikum dan