Anda di halaman 1dari 59

MODUL KONSEP PEMROGRAMAN

TUGAS MATA KULIAH LOGIKA ALGORITMA

DISUSUN OLEH :
1. Adytya Dwi Hermawan (1810817210007)
2. Aisyah Awaliyah (1810817310007)
3. Noviani (1810817120014)
4. Ryan Ramel (1810817110005)
5. Siti Mahmudah (1810817120012)

Dosen Pembimbing : Yuslena Sari, S.Kom., M.Kom.

PROGRAM STUDI TEKNOLOGI INFORMASI

FAKULTAS TEKNIK
UNIVERSITAS LAMBUNG MANGKURAT

2018

1|P age
KATA PENGANTAR

Alhamdulillah, segala puji dan syukur bagi Allah SWT yang telah memberikan
kemampuan, kekuatan, serta keberkahan baik waktu, tenaga, maupun pikiran kepada kami
sehingga dapat menyelesaikan modul tentang “Konsep Pemrograman” tepat pada waktunya.
Dalam penyusunan modul ini, kami banyak mendapat tantangan dan hambatan akan
tetapi karena kerjasama kelompok, tantangan itu bisa teratasi.Dan juga, kami mengucapkan
terima kasih yang sebesar-besarnya kepada Ibu Yuslena Sari S.Kom., M.Kom. selaku dosen
Logika Algoritma serta Pak Muhammad Alkaff, S.Kom., M.Kom. dan Pak Andreyan Rizky
Baskara, S.Kom., M.Kom. atas bimbingan, pengarahan, dan kemudahan dalam mengajarkan
mata kuliah Konsep Pemrograman.
Kami menyadari bahwa masih banyak kekurangan pada penulisan modul ini. Maka
dari itu, saran dan kritik yang membangun sangat kami harapkan. Kami berharap semoga
modul ini dapat bermanfaat bagi siapa saja yang membacanya.

Banjarmasin, 18 Desember 2018

2|P age
DAFTAR ISI

Kata Pengantar .......................................................................................................................2

Daftar Isi ................................................................................................................................3

Bab I Pendahuluan .................................................................................................................4

Latar Belakang ..............................................................................................................4

Tujuan Penulisan...........................................................................................................5

Metode Penulisan ..........................................................................................................5

Sistematika Penulisan ...................................................................................................6

Bab II Pembahasan ................................................................................................................7

A. Konsep Pemrograman ..... .......................................................................................7


B. Tipe Data dan Operator... .......................................................................................12
C. Variable dan Input Output ......................................................................................16
D. Kondisional .............................................................................................................20
E. Looping ...................................................................................................................28
F. Nested Loop ............................................................................................................34
G. Function ..................................................................................................................40
H. Array .......................................................................................................................44
I. String .......................................................................................................................48
J. Pointer .....................................................................................................................53
K. Struct .......................................................................................................................55

Bab III Penutup ......................................................................................................................58

Kesimpulan ...................................................................................................................58

Daftar Pustaka ........................................................................................................................59

3|P age
BAB I

PENDAHULUAN

Latar Belakang

Bahasa C adalah kumpulan instruksi-instruksi tersendiri yang biasanya disebut


source code yang dibuat oleh programmer. Kumpulan instruksi atau perintah yang
disusun sedemikian rupa sehingga mempunyai urutan nalar yang tepat untuk
menyelesaikan suatu persoalan. Instruksi syntax yang sesuai dengan bahasa
pemrograman yang dipakai. Dan mempunyai komponen-komponen yang meliputi:
input, output, proses, percabangan dan perulangan.
Bahasa pemrograman ini memungkinkan seorang programmer dapat
menentukan secara persis data mana yang akan ddiolah oleh computer. Bagaimana
data tersebut akan disimpan/diteruskan, dan jenis langkah apa secara persis yang akan
diambil dalam berbagai situasi. Menurut tingkat kedekatannya dengan bahasa mesin,
bahasa pemrograman terdiri dari:
1. Bahasa mesinnya yaitu dengan menggunakan kode binner.
Contohnya, 01000100101010.
2. Bahasa rendahnhya atau yang sering dikenal dengan isitlah bahasa
rakitan (bahasa assembly), yaitu memberikan perintah pada computer
dengan menggunakan kode-kode singkat, contohnya MOV, LOOP.
3. Bahasa menengahnya yaitu bahasa computer yang menggunakan
instruksi berasal dari kata-kata bahasa manusia, contohnya begin, end,
if, for, white, and, or.

Bahasa Pemrograman C adalah sebuah bahasa pemrograman komputer yang


bisa digunakan untuk membuat berbagai aplikasi (general-purpose programming
language), mulai dari sistem operasi (seperti Windows atau Linux), antivirus,
software pengolah gambar (image processing), hingga compiler untuk bahasa
pemrograman, dimana C banyak digunakan untuk membuat bahasa pemrograman lain
yang salah satunya adalah PHP. Bahasa pemrograman C pertama kali diciptakan
oleh Dennis M. Ritchie pada tahun 1972. Saat itu Ritchie bekerja di Bell Labs,
sebuah pusat penelitian yang berlokasi di Murray Hill, New Jersey, Amerika Serikat.

Ritchie menciptakan bahasa pemrograman C ini untuk mengembangkan


sistem operasi UNIX. Yang sebelumnya, sistem operasi UNIX dibuat menggunakan
bahasa assembly (assembly language). Karena bahasa Assembly sendiri sangat rumit

4|P age
dan susah untuk dikembangkan, maka diciptakanlah bahasa pemrograman C dengan
tujuan mengganti bahasa assembly. Dengan bahasa C inilah sistem operasi UNIX
ditulis ulang. Pada gilirannya, UNIX menjadi dasar dari banyak sistem operasi
modern saat ini, termasuk Linux, Mac OS (iOS), hingga sistem operasi Android.

Tujuan

Modul yang disusun bertujuan untuk memenuhi tugas kelompok mata kuliah Logika
Algoritma. Selain itu, modul ini juga disusun untuk menambah wawasan dan ilmu
pengetahuan serta mempermudah pembelajaran tentang Konsep Pemrograman bagi kami
maupun pembaca.

Metode Penulisan

Pada penyusunan modul ini, kami menggunakan metode studi pustaka, selain dengan
menggunakan pdf dan word lain sebagai referensi, kami juga melakukan studi pustaka
dengan menggunakan media internet.

5|P age
Sistematika Penulisan

- Halaman Judul (cover)


- Kata Pengantar
- Daftar Isi
- Bab I Pendahuluan
o Latar Belakang
o Tujuan
o Metode Penulisan
o Sistematika Penulisan
- Bab II Pembahasan
o Konsep Pemrograman
o Tipe Data dan Operator
o Variable dan Input Output
o Kondisional
o Looping
o Nested Loop
o Function
o Array
o String
o Pointer
o Struct
- Bab III Penutup
o Kesimpulan
- Daftar Pustaka

6|P age
BAB II

PEMBAHASAN

A. Konsep Pemrograman
1. Pendahuluan Konsep Pemrograman

a) Tujuan Kegiatan Pembelajaran

 Mahasiswa memahami apa itu program dan pemrograman.


 Mahasiswa memahami bahasa pemrograman dan mengetahui jenis-jenis
bahasa pemrograman beserta tingakatannya.
 Mahasiswa memahami konsep compiler dan intepreter.
 Mahasiswa mengetahui konsep dari syntax dan semantic.
 Mahasiswa memahami contoh algoritma sederhana.

b) Uraian Materi
 Program
Program adalah susunan intruksi dari seorang Programer hingga komputer
dapat melakukan suatu kegiatan yang memecahkan suatu masalah/kasus.
Pemrograman adalah proses mengolah suatu program dengan algoritma dan
bahasa pemrograman yang dieksekusi oleh komputer.

 Bahasa Pemrograman
Programing dilakukan dengan menggunakan bahasa yang komputer pahami,
yaitu bahasa Pemrograman. Bahasa Pemrograman adalah suatu bahasa yang
dapat merealisasikan definisi suatu program komputer.

Tingkatan Bahasa Pemrograman :


o LOW LEVEL LANGUAGE
 Machine Code
 Assembly
o MID LEVEL LANGUAGE
 C
 C++, dan lainnya
o HIGH LEVEL LANGUAGE
 Python
 Ruby, dan lainnya

Semakin rendah suatu bahasa pemrograman maka bahasa tersebut semakin


mendekat ke bahasa mesin yang sulit dipahami manusia, sebaliknya.

7|P age
 Compiler dan Interpreter
Dalam menerjemahkan bahasa pemrograman terdapat 2 tipe proses, yaitu :
o Compiler : memproses seluruh kode dan menterjemahkannya secara
keseluruhan, contohnya:
 C
 C++
 Java

o Interpreter : memproses baris kode dan menterjemahkannya secara


perbaris, contoh :
 Python
 Rub
 PHP

 Syntax dan Semantic


o Syntax adalah suatu aturan penulisan kode pemrograman yang
mampu dimengerti oleh program.
Contoh : maka ika goren.
o Semantic adalah suatu penulisan kode dengan makna yang jelas
dalam pemrograman
Contoh : makan ikan goreng.

c) Implementasi
Membuat Algoritma dan Flowchart untuk menentukan bilangan ganjil genap
yang positif atau negatif.

 Algoritma

Menentukan bilangan ganjil genap yang positif atau negatif.

1. Mulai.
2. Masukkan Bilangan bulat.
3. Jika bilangan dapat dibagi 2 dan tidak memiliki simbol negatif (-).
4. Tampilkan bilangan sebagai bilangan Genap Positif.
5. Jika bilangan dapat dibagi 2 dan memiliki simbol negatif (-)
6. Tampilkan bilangan sebagai bilangan Genap Negatif.
7. Jika bilangan tidak dapat dibagi 2 dan tidak memiliki simbol negatif (-).
8. Tampilkan bilangan sebagai bilangan Ganjil Positif.
9. Jika bilangan tidak dapat dibagi 2 dan memiliki simbol negatif (-).
10. Tampilkan bilangan sebagai bilangan Ganjil Negatif.
11. Selesai

8|P age
 Flowchart

2. Paradigma Konsep Pemrograman

a) Tujuan Kegiatan Pembelajaran.

 Mahasiswa memahami paragdigma-paradigma dalam pemrograman.


 Mahasiswa mengetahui penyebab error suatu program
 Mahasiswa mampu membuat sebuah program sederhana menghasilkan
output kalimat.
b) Uraian Materi

 Berikut paradigma pemrograman yang umum digunakan:


o Imperactive Programing (Procedural programing)
Pemrograman yang dilakukan dengan perintah yang berurutan.
Contoh :Bahasa program C
o Functional Programing
Pemrograman yang dilakukan sebagai evaluasi fungsi Matematika.
Contoh :Bahasa program lisp
o Object Oriented Programing
Pemrograman yang berorientasi pada objek.
Contoh : Bahasa program Java
o Logic Programming
Program yang dilandasi kumpulan fakta dan aturan deduksi.
Contoh : SQL.

9|P age
 Penyebab Error suatu program secara umum adalah :

o Syntax Error, dimana terjadi kesalahan penulisan dalam program.


o Semantic Error, dimana terjadi kesalahan pengartian dalam program.
o Runtime Error, dimana terjadi hal tertentu saat program sudah
berjalan.
 Komponen Program sederhana menghasilkan output kalimat.

o Stdio (StanDard Input and Outoput).


o .h yang memuat file header.
o #include sebagai jalur import header.
o Int main (void) , main sebagai fungsi utama,int(integer) menandakan
data bertipe numerik,void menyatakan bahwa fungsi tidak menerima
argumen.
o Simbol : { untuk memulai,printf untuk mencetak data didalam (),/n
(newline) berfungsi membawa output menuju baris baru, ;
menandakan akhir suatu baris, } menandakan akhiir suatu program.

c) Praktek

Contoh Flowchart, Pseducode, serta Program Bahasa C untuk Konsep


Pemrograman:

 Flowchart

Mulai

Output “Logika
Algoritma

Selesai

 Pseudocode

write (“logika algoritma”)

 Kode Program Bahasa C

#include<stdio.h>

int main(void)
{
printf("Logika Algoritma\n");
}

10 | P a g e
 Hasil Program

11 | P a g e
B. Tipe Data dan Operator
a) Tujuan Kegiatan Pembelajaran

 Mahasiswa mengetahui tipe-tipe data dalam bahasa c.


 Mahasiswa mengetahui operator dalam bahasa c dan
mengimplementasikannya dalam program sederhana.

b) Uraian Materi

 Tipe data pada bahasa c

o Primitive data type : data yang menyimpan satu nilai dalam


satu waktu, contoh :int dan float.
o Derived data type : data yang dapat menyimpan banyak nilai
dengan tipe data yang sama, contoh :array dan pointer.
o User-defined data type : data yang dapat menyimpan banyak
tipe data, contoh : enum dan structure.

 Operator

Berikut Operator dasar dalam pemrograman

Operator OPERASI CONTOH


Aritmatika
+ PENAMBAHAN A+B
- PENGURANGAN A–B
* PERKALIAN A*B
/ PEMBAGIAN A/ B
% MODULUS A%B

Operator Relasi OPERASI CONTOH


> LEBIH DARI A>B
< KURANG DARI A<B
>= LEBIH DARI ATAU A >= B
SAMA DENGAN
<= KURANG DARI ATAU A <= B
SAMA DENGAN
== SAMA DENGAN A == B
!= TIDAK SAMA A != B
DENGAN

12 | P a g e
Operator Logikal

A B A && A || B !A !B
B
TRUE TRUE TRUE TRUE FALSE FALSE

TRUE FALSE FALSE TRUE FALSE TRUE

FALSE TRUE FALSE TRUE TRUE FALSE

FALSE FALSE FALSE FALSE TRUE TRUE

Operator OPERASI CONTOH


penambahaan/pengurangan
++ MENAMBAHKAN A++
1
–– MENGURANGI 1 A--

c) Praktek

Contoh Algoritma Flowchart, Pseducode, serta Program Bahasa C:

Tampilkan hasil untuk pertanyaan “Sebuah sepeda motor melaju dengan


kecepatan konstan 80km/jam. Berapa waktu yang dibutuhkan bagi motor tersebut
untuk menempuh jarak 200km? tampilkan dalam bentuk menit dan juga dalam bentuk
detik!”

 Algoritma

1. Diketahui kecepatan dan jarak yang ditempuh dan ditanyakan


waktu jarak ditempuh.
2. Untuk mengetahui waktu jarak ditempuh gunakan rumus
(waktu ditanya= jarak diketahui/jarak ditanya).
3. Didapat waktu jarak ditempuh dalam hitungan jam.
4. Untuk mengetahui waktu jarak ditempuh dalam menit,
kalikan jam dengan 60.
5. Untuk mengetahui waktu jarak ditempuh dalam detik, kalian
menit dengan 60.
6. Tampilkan waktu jarak ditempuh dalam menit dan dalam
detik.
7. Selesai.

13 | P a g e
 Flowchart

 Pseudocode

Algoritma menghitung waktu menempuh suatu jarak dengan


kecepatan konstan.
Diketahui sebuah sepeda motor melaju dengan kecepatan
konstan 80km/jam, ditanya berapa waktu yang diperlukan motor
tersebut untuk menempuh 200km, dalam menit dan dalam detik.
Deklarasi:
Jarak diketahui  80km
Waktu diketahui 1jam
Jarak ditanya 200km
Deskripsi
Mulai
Waktu menempuh (jam)=jarak menempuh/jarak
kecepatan
Waktu menempuh (menit)=waktu menempuh (jam)*60
Waktu menempuh(detik)=waktu menempuh (menit)*60
Cetak “Waktu menempuh (menit) atau Waktu menempuh
(detik)
Selesai

14 | P a g e
 Kode Program Bahasa c

#include<stdio.h>
int main(void)
{
float kec,waktudit,menit,detik;
float Jarakdik=80;
float waktudik=1;
float Jarakdit=200;
waktudit=Jarakdit/Jarakdik;
menit=waktudit*60;
detik=menit*60;
printf("%.1f menit atau %.1f detik",menit,detik);
}

 Hasil Program

15 | P a g e
C. Variabel dan Input Output

a) Tujuan Pembelajaran
 Mahasiswa memahami konsep variabel dan input output program c
 Mahasiswa mampu membuat program sederhana yang memuat input,output
dan proses aritmatik.
b) Ringkasan Materi
 Variabel
Variabel adalah lokasi penyimpanan satu tipe data dalam pemrograman, dalam
bahasa C suatu variabel ditulis dengan didahui oleh tipe datanya
(char,int,float,dll)

 Konstanta adalah variabel yang nilainya tidak berubah selama program


berjalan.
Dapat dideklarasikan dengan #define atau const

 Aturan penamaan variabel:


 Dimulai huruf atau underscore, bukan angka/simbol.
 Tidak menggunakan spasi dan keyword yang ada dalam bahasa
 Bersifat sensitif terhadap besar kecilnya huruf.

 Tanda %
% menunjukkan tipe data yang akan di input atau output
%d atau %i tipe data integer
%f tipe data float
%c tipe data char

 Tanda spesial
\n menyatakan garis baru
\t meyatakan horizontal tab
\r menyatakan kembali ke awal
\v menyatakan vertikal tab
// memulai komentar dalam satu barit
/* */ memberi komentar dalam satu blok

 Input dan Output


Input berarti memasukkan sebuah data kedalam program dan Output berarti
mengeluarkan data dalam sebuah program.Dalam pemrograman sederhana
dalam header stdio.h sering digunakan fungsi printf dan scanf

c) Praktek
Algoritma, Flowchart, Pseducode, serta Program Bahasa C:

Case : Buatlah sebuah program menghitung luas bagun dasar berbentuk


rumah,terbentuk atas persegi panjang yang terdiri atas panjang dan lebar, lalu segitiga
yang menempel pada panjang persegi panjang dengan alasnya sama dengan panjang
persegi panjang tersebut, lakukan input panjang persegi panjang, lebar persegi
panjang,dan tinggi segitiga.

16 | P a g e
 Algoritma
1. Masukkan panjang persegi panjang
2. Masukkkan lebar persegi panjang
3. Masukkan tinggi segitiga
4. Hitung luas persegi dengan rumus (panjang kali lebar)
5. Hitung luas segitiga dengan rumus(
)
6. Hitung luas bangun rumah dengan menambahkan luar persegi panjang dan
luas segitiga.

 Flowchart

17 | P a g e
 Pseudocode

Menghitung luas bangun rumah, yang terdiri atas persegi panjang dan segitiga
dengan alas panjang persegi panjang.

Deklarasi :
Panjang Persegi panjang  P
Luas Persegi panjang  L
Tinggi Segitiga T

Deskripsi:
Mulai
Cetak (“Panjang persegi panjang”)
Baca (p)
Cetak (“Lebar Persegi panjang”)
Baca (l)
Cetak (“tinggi segitiga”)
Baca (t)
Luas Persegi Panjang=p*l
Luas Segitiga=(p*t):2
Luas Rumah = Luas persegi panjang + Luas segitiga
Cetak (luas rumah)
Selesai

 Kode Program Bahasa c

#include<stdio.h>
int main(void)
{
int p,l,t;
printf("Panjang Persegi Panjang: ");
scanf("%d",&p);
printf("Lebar Persegi Panjang: ");
scanf("%d",&l);
printf("Tinggi Segitiga: ");
scanf("%d",&t);
int luas_persegipanjang=p*l;
int luas_segitiga=(p*t)/2;
int luas_rumah=luas_persegipanjang+luas_segitiga;
printf("luas rumah adalah %d",luas_rumah);
}

18 | P a g e
 Hasil Program

19 | P a g e
D. Kondisional
Conditional statements digunakan untuk melakukan suatu aksi yang berbeda
berdasarkan kondisi yang berbeda pula

Pada C terdapat beberapa jenis conditional statements yaitu:

if …

if … else

if … else if … else

Contoh Algoritma,flowchart,Pseducode,serta Program Bahasa C untuk Conditional


Statements:

 Algoritma:

 IF

1. Mulai
2. Masukkan nilai
3. Jika nilai lebih besar dari 68,maka lulus
4. Tampilkan hasil “LULUS”
5. Selesai

 IF...ELSE

1. Mulai
2. Masukkan nilai
3. Jika nilai lebih besar dari 68,maka lulus
4. Jika tidak maka tidak lulus
5. Tampilkan hasil”LULUS” atau “TIDAK LULUS”
6. Selesai

 IF...ELSE IF...ELSE

1. Mulai
2. Masukkan umur
3. Jika umur kurang dari 10 tahun maka anak kecil
4. Jika umur lebih dari 10 tahun dan kurang dari 16 tahun maka anak-anak
5. Jika umur lebih dari 17 tahun dan kurang dari 20 tahun maka remaja
6. Jika bukan tidak mengikuti pernyataan diatas maka dewasa
7. Tampilkan hasil “ANAK KECIL” atau ”ANAK-ANAK” atau ”REMAJA” atau
”DEWASA”
8. Selesai

20 | P a g e
 Flowchart

 IF

mulai

Masukkan
angka

Jika nilai > Y lulus


= 68

selesai

 IF ... ELSE

mulai

Masukkan
nilai

T Tidak lulus
Jika nilai
>= 68

Y
lulus selesai

21 | P a g e
 IF ... ELSE IF ... ELSE

mulai

Masukkan
umur

Jika umur ≤ 10 Y Anak kecil


tahun

Jika umur ≥ 10
Y Anak-anak
tahun dan umur
≤ 16 tahun

Jika umur ≥ 17
Y
dan umur ≤ 20 remaja
tahun

T
dewasa
selesai

22 | P a g e
 Pseducode

 IF

DEKLARASI

Nilai: float(bilangan yang dimasukkan)

DESKRIPSI

WRITE (masukkan nilai)

READ (nilai)

IF (nilai >= 68 and nilai ≤ 100)

THEN

WRITE (LULUS)

END IF

END

 IF ... ELSE

DEKLARASI

Nilai: float(bilangan yang dimasukkan)

DESKRIPSI

WRITE (masukkan nilai)

READ (nilai)

IF (nilai > =68 and nilai ≤ 100)

THEN

WRITE (LULUS)

ELSE

THEN

WRITE(TIDAK LULUS)

END IF

END

23 | P a g e
 IF ... ELSE IF ... ELSE

DEKLARASI

Umur : integer

DESKRIPSI

READ(Umur)

IF(umur ≤ 10 tahun)

THEN

WRITE(Anak kecil)

ELSE IF(umur ≥ 10 tahun dan umur ≤ 16 tahun)

THEN

WRITE(anak-anak)

ELSE IF(umur ≥ 17 dan umur ≤ 20)

THEN

WRITE(Remaja)

ELSE (tidak mengikuti pernyataan diatas)

THEN

WRITE(dewasa)

END IF

END

24 | P a g e
 Kode Program Bahasa C

 IF

#include <stdio.h>

int main(void)

float nilai;

printf("Masukkan nilai : ");

scanf("%f" , &nilai);

if(nilai >= 68 && nilai<=100){

printf(" LULUS \n");

 IF ... ELSE

#include <stdio.h>

int main(void)

float nilai;

printf("Masukkan nilai : ");

scanf("%f" , &nilai);

if(nilai > 68 && nilai<=100){

printf(" LULUS \n"); }

else{

printf(" TIDAK LULUS \n");

25 | P a g e
 IF ... ELSE IF ... ELSE

#include<stdio.h>
int main(void)
{
int umur;
printf("Masukkan Umur : ");
scanf("%d", &umur);
if (umur<=10) {
printf ("Anak Kecil");
}
else if (umur >= 10 && umur<=16) {
printf ("Anak-anak");
}
else if (umur >= 17 && umur<=20 ) {
printf ("Remaja");
}
else {
printf ("Dewasa");
}
}

 Hasil Program

 IF

26 | P a g e
 IF...ELSE

 IF ... ELSE IF ... ELSE

27 | P a g e
E. Loop Statements (Looping)
Perulangan atau repetisi atau yang lebih sering dikenal dengan istilah “looping”
dalam bahasa pemrograman adalah program perulangan suatu statement dengan batas yang
telah ditentukan agar lebih simpel dan efisisen.

Dalam proses lopping terdiri dari beberapa bagian :

 Inisialisasi adalah tahap mengisi variabel dengan nilai awal sebelum melakukan
looping.
 Proses adalah tahap yang berisi proses yang perlu dilakukan secara berulang-ulang.
 Iterasi adalah tahap proses looping apakah bertambah atau berkurang.
 Terminasi adalah tahap batas looping agar proses looping dapat berhenti.

Dalam bahasa C ada 3 jenis looping yaitu FOR, WHILE dan DO-WHILE.

1. FOR

Penggunaan instruksi looping For adalah ketika jumlah dari pengulangan statement
diketahui.

Bentuk penggunaan for dalam looping :

for (Inisialisasi; Terminasi; Iterasi;) {

Proses;

2. WHILE

Inisialisasi;

while (Terminasi) {

Proses;

Iterasi;

28 | P a g e
3. DO-WHILE

Inisialisasi;

do {

Proses;

Iterasi;

} while (Terminasi);

Menggunakan Looping juga harus diperhatikan agar tidak terjadi Infinite Loop yaitu
looping terus berjalan nonstop.

Ada juga Jump Statements yang digunakan untuk keluar dari blok program ketika
suatu kondisi terpenuhi. Ada 2 Jenis Jump Statements yaitu Break dan Continue.

 Break
Untuk menghentikan proses looping ketika telah sampai di kondisi.
Contoh :
#include<stdio.h>
int main(void)
{
int i;
for(i=0; i<7; i++) {
if (i == 3) {
break;
}
printf("Nilai i adalah : %d \n", i);
}
}
 Continue
Untuk melewati satu putaran dalam looping
Contoh:
int main(void)
{
int i;
for(i=0; i<7; i++) {
if (i == 23 {
continue;
}
printf("Nilai i adalah : %d \n", i);
}
}

29 | P a g e
Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk Loop
Statements:

Hasil dari 2 berpangkat 1-10

 Algoritma:
1. Mulai
2. Deklarasikan pangkat awal = 0
3. Deklarasikan hasil dari pangkat awal=1
4. Memproses:
Untuk for (a=1; a<=10; a++) Jumlah dikali 2;
Untuk While (a<10) Jumlah dikali 2; a++;
Untuk do {jumlah dikali 2; a++;} while(a<10)
5. Tampilkan hasil dari setiap pangkat
6. Selesai
 Flowchart

Mulai

Deklarasikan pangkat awal = 0

Deklarasikan hasil dari


pangkat awal=1

Memproses

Untuk for(a=1; a<=10; a++) Jumlah dikali 2;

Untuk While (a<10) Jumlah dikali 2; a++;

Untuk do {jumlah dikali 2; a++;} while(a<10)

Tampilkan hasil dari setiap


pangkat

Selesai

30 | P a g e
 Pseducode
1. FOR

DEKLARASI:
a, jumlah=1 : integer {pangkat awal dan hasil dari pangkat awal}
DESKRIPSI:
for (a=1; a<=10; a++;)

hasil = hasil*2;

write (hasil pangkat 1→10);

2. WHILE

DEKLARASI:

a=0, jumlah=1 : integer {pangkat awal dan hasil dari pangkat awal}

DESKRIPSI:

while (a<10)

hasil = hasil*2;

a++;

write (hasil pangkat 1→10);

3. Do-while

DEKLARASI:

a=0, jumlah=1 : integer {pangkat awal dan hasil dari pangkat awal}

DESKRIPSI:

do
hasil = hasil*2;
a++;
while (a<10)
write (hasil pangkat 1→10);

31 | P a g e
 Kode bahasa c:

1. For
#include<stdio.h>

int main(void)
{
int a, hasil=1;
printf("***Hasil dari 2 Pangkat 1-10***\n\n");
for(a=1; a<=10; a++)
{
hasil = hasil*2;
printf("2 jumlah %d adalah= %d\n", a, hasil);
}
}

2. While

#include<stdio.h>

int main(void)

int a=0, hasil=1;

printf("***Hasil dari 2 Pangkat 1-10***\n\n");

while (a<10)

hasil = hasil*2;

a++;

printf("2 pangkat %d adalah= %d\n", a, hasil);

32 | P a g e
3. Do-while

#include<stdio.h>

int main(void)

int a=0, hasil=1;

printf("***Hasil dari 2 Pangkat 1-10***\n\n");

do

hasil= hasil*2;

a++;

printf("2 pangkat %d adalah= %d\n", a, hasil);

} while (a<10);

 Hasil Program

33 | P a g e
G. Nested Loop

Nested loop adalah istilah pemprograman yang berarti membuat perulangan di dalam
perulangan.

Dalam prosesnya nested loop terdiri dari beberapa bagian:

 Dalam pemrograman dimungkinkan untuk melakukan loop didalam loop


 Hal itu disebut sebagai Nested Loop (Loop Bersarang)
 Setiap struktur loop for, while, maupun do..while dapat dilakukan didalam loop
lainnya

Dalam bahasa C ada 3 jenis looping yaitu FOR,WHILE dan DO-WHILE.

Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk Nested Loop:

 Algoritma:

 FOR
1.Mulai
2.Deklarasikan i & j
3.Melakukan proses:
for(i=1; i<=5; i++) proses looping i
for(j=1; j<=3; j++) proses looping j
4.Tampilkan hasil dari looping
5.Selesai

 While
1.Mulai
2. Deklarasikan i & j
3.Melakukan proses:
while(i<=7) {proses looping i
while(j<=5) {proses looping j
j++;} i++;}
4. Tampilkan hasil
5. Selesai

 Do-While
1.Mulai
2.Masukkan angka
3.Melakukan proses:
Do {tampilkan angka; angka ++;}while (angka <=72);
4. Selesai

34 | P a g e
 Flowchart

 FOR

mulai

i&j

for(i=1; i<=5; i++) proses looping i


lalu for(j=1; j<=3; j++) proses
looping j

Selesai

 WHILE

mulai

i&j

while(i<=7) {proses looping i


while(j<=5) {proses looping j
j++;} i++;}

hasil

Selesai

35 | P a g e
 DO-WHILE

mulai

Angka =73

angka

Y
Angka ≤ 72 Angka + 1

selesai

 Pseducode

 FOR

DEKLARASI
Angka : integer

DESKRIPSI
WRITE(Pengulangan bersarang for)
For(i=1 to 5)
DO WRITE(i)
For(j=1 to 3)
DO WRITE(j)
END

 WHILE

DEKLARASI
Angka : integer

DESKRIPSI

36 | P a g e
WRITE(Pengulangan bersarang for)
while(i=1 to 7)
DO WRITE(i)
while(j=1 to 5)
DO WRITE(j)
END

 DO-WHILE

DEKLARASI
Angka : nilai

DESKRIPSI
WRITE(masukkan angka)
WHILE(≤72)
WRITE(angka)
END

 Kode Program Bahasa C

 FOR

#include <stdio.h>

int main()

int i,j;

printf("Pengulangan bersarang for\n");

for(i=1; i<=5; i++){

printf("%i ",i);

for(j=1; j<=3; j++){

printf("%i ",j);

printf("\n");

37 | P a g e
 WHILE
#include <stdio.h>

int main()

int i,j;

printf("Pengulangan bersarang while\n");

i=0;

while(i<=7){

printf("%d" ,i);

j=0;

while(j<=5){

printf("%d" ,j);

j++;

i++;

printf("\n");

 DO-WHILE
#include <stdio.h>

int main()

{ int angka = 73;

do{

printf("%d", angka);

angka ++;

}while(angka <= 72);

38 | P a g e
 Hasil Program

 FOR

 WHILE

 DO-WHILE

39 | P a g e
G. Function
Function adalah sekumpulan kode yang di deklarasikan dalam suatu blok
program yang berada di luar dari program utama. Function akan berjalan saat di
panggil oleh program utama. Penggunaan function membuat program lebih mudah
dipahami karena terstruktur dan efisien.

Function dibagi menjadi 2:

 Build in Function adalah fungsi yang sudah berada dalam library bahasa C itu
sendiri, seperti dalam string.h ada beberapa fungsi seperti (strlen, strcat,
strcpy, strcmp, dll).
 Fungsi yang kita buat dan deklarasikan sendiri.

Struktur untuk mendeklarasikan Fungsi:

tipe_data nama_fungsi (parameter){


Proses;
}
Keterangan:
 tipe_data dalam Function ada int, float, double, char dan ada juga
void. Arti dari void adalah tidak bertipe data sehingga tidak
memerlukan return, oleh karena itu saat kita menggunakan int main
(void) kita tidak lagi perlu melakukan return 0; di paling bawah fungsi.
 nama_fungsi adalah nama yang kita gunakan saat Function dipanggil.
 parameter adalah nilai yang digunakan sebagai acuan untuk
menjalankan program.

Untuk memanggil fungsi digunakan

nama_fungsi (argument list);

Scope Program:

Yaitu area di dalam program dimana variable dapat di akses, scope terbagi 2
ada Local Variable dan Global Variable.

 Local ada di dalam function sehinga hanya bisa di akses oleh function
itu saja.
 Sedangkan Global ada di luar Function, sehingga bisa diakses oleh
semua function.
 Apabila local dan global variable memiliki nama variable yang sama
maka local variable yang akan digunakan

40 | P a g e
Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk
Function:

 Algoritma
1. Mulai
2. Masukkan besarnya modal
3. Masukkan besarnya hasil penjualan
4. Jika penjualan lebih besar dari modal, maka “untung” sebesar penjualan
dikurang modal.
5. Jika penjualan lebih sedikit dari Modal, maka “rugi” sebesar modal
dikurang penjualan.
6. Tampilkan hasil apakah “untung” atau “rugi” disertai besar keuntungan
atau kerugian.

 Flowchart

Mulai

Masukkan modal

Masukkan
penjualan

N
If
Tampilkan “rugi”
penjualan>modal
sebesar modal -
Penjualan
Y

Tampilkan “untung”
Sebesar penjualan -
modal

Selesai

41 | P a g e
 Pseducode

DEKLARASI:
m, p : integer {modal dan penjualan di function}
modal, penjualan : integer {modal dan penjualan di program utama}
RugiUntung : integer {nama function}

DESKRIPSI:
read (modal, penjualan)
int RugiUntung {Function yang dipanggil}
if (p>m)
write (p-m← Untung)
else
write (m-p← Rugi)

 Kode Bahasa C
#include<stdio.h>

int RugiUntung(int m, int p)


{
if(p>m) {
printf("\nSelamat Anda Telah Untung Sebesar ");
return (p-m);
}
else {
printf("\nMaaf Anda Telah Rugi Sebesar ");
return (m-p);
}
}
int main(void)
{
int modal, penjualan;
printf("*****Program menghitung Keuntungan atau
Kerugian*****\n\n");
printf("Masukkan Modal Anda: "); scanf("%d", &modal);
printf("Masukkan Hasil dari Penjualan: "); scanf("%d", &penjualan);
printf("%d", RugiUntung(modal, penjualan));
}

42 | P a g e
 Hasil Program

43 | P a g e
H. ARRAY
Array adalah sebuah tipe variable yang dapat menampung sekumpulan data yang
bertipe sama

Array merupakan konsep yang penting dalam pemrograman, karna array


memungkinkan kita untuk menyimpan data dalam jumlah banyak dan terindeks

Data pada array (disebut juga elemen) disimpan secara berurutan dan masing-masing
data mempunyai nilai index yang identik sebagai nomor urut elemen

Untuk array sepanjang N elemen, urutan data yang pertama mempunyai index 0,
urutan data terakhir mempunyai index N-1

Contoh Algoritma,flowchart,Pseducode,serta Program Bahasa C untuk Array:

 Algoritma:
1. Mulai
2. Deklarasikan x, y, z, i, n, average[i], dan total
3. Masukkan nilai i
4. Apabila x = 0, x < i, x++
5. Masukkan nilai n
6. Deklarasikan array masuk[n]
7. Nilai total = 0
8. Apabila y=0, y < n, y++
9. Masukkan nilai array masuk[y]
10. Nilai total = total+masuk[y]
11. Nilai array average[x] = total/n
12. Apabila z=0, z < i, z++
13. Cetak array average[z]
14. Selesai

44 | P a g e
 Flowchart

mulai

Masukkan
nilai i

Apabila x ≤ 1 T
Z ≤1

T
Average[z]
Masukkan
nilai n

X+1
T

y<n Average[x]
selesai

Masuk [y]

Y+1
total

45 | P a g e
 Pseducode

DEKLARASI

Nilai:float

DESKRIPSI

READ(TOTAL)

FOR(X=0 to x+1)

DO WRITE

For(y=0 to y+1)

WRITE(Total)

THEN

AVERAGE(Total/n)

DO WRITE

For(z=0 to Z+1)

WRITE(AVERAGE [z])

END

 Kode Program Bahasa C

#include <stdio.h>

int main(void)

int x, y, z, i, n;

float average[i], total;

printf("Masukkan banyak pembagian: ");

scanf("%d", &i);

for(x=0; x<i; x++){

printf("\nMasukkan jumlah angka: ");

scanf("%d", &n);

46 | P a g e
int masuk[n];

total = 0;

for(y=0; y<n; y++){

printf("\tMasukkan angka: ");

scanf("%d", &masuk[y]);

total = total+masuk[y];

average[x] = total/n;

for (z=0; z<i; z++){

printf("\nhasil pembagian adalah: %lf\n", average[z]);

 Hasil Program

47 | P a g e
I. String

1. Pengertian string
String adalah kumpulan dari karakter-karakter yang bertipe data CHAR.
2. Dasar-Dasar String
 Penulisan string harus diawali den diakhiri dengan tanda petik dua (“).
Contoh: string A: “TUGAS”;
 Penulisan karakter string harus diawali dan diakhiri dengan tanda petik
satu(„).
Contoh :
1. Char A: „T‟;
2. Char B: „U‟;
3. Char C: „G‟;
4. Char D: „A‟;
5. Char E: „S‟;
6. Char F: „\0‟;

Dalam bahasa c string ini merupakan suatu array yang terdiri dari tipe data char.
Akhir string biasanya diakhiri dengan karakter null (\0). String ini dapat dikatakan
atau diumpakan sebagai suatu kumpulan huruf, untuk menggunakan string, harus
dideklarasikan menggunakan array.
Contohnya:
#include <stdio.h>

Int main(){

Char huruf[5]: {„T‟, „U‟, „G‟, „A‟, „S‟, „\0‟};


Printf(“%s”, huruf);
Seperti yang kita lihat diatas format %s untuk tipe data string.

3. ASCII TABLE
ASCII(American Standard Code for Information Interchange)adalah
fakta yang sangat terkenal bahwa komputer hanya dapat mengenal data berupa
0(mati) dan 1(hidup). Dengan mengurutkan bilangan 0 dan 1 sebagai terjemahan
binner ini maka kita dapat mengungkapkan nilai-nilai numerik.ASCII merupakan
suatu standar nasional dalam kode huruf dan symbol yang bersifat universal.
Contoh:
 97 dalam bentuk decimal, karakter a dalam ASCII.
 98 dalam bentuk decimal, karakter b dalam ASCII.
 99 dalam bentuk decimal, katakter c dalam ASCII.
 100 dalam bentuk decimal, karakter d dalam ASCII.

48 | P a g e
4. OPERASI STRING
Tidak ada tipe data pada string, maka operasi yang dapat dilakukan oleh string
terbatas, karena string adaah array jdi apa yg di operasi oleh array itu juga
yang akan di operasi oleh string. Contohnya: strlen, strcat,strcpy,strcmp.untuk
menggunakan keempat fungsi tersebut harus include library string.h.

 MENGHITUNG PANJANG STRING

#include<stdio.h>
#include<string.h>

Int main()
{
Char nama[] = “LOGALGO”
Int panjang;

Panjang: strlen(nama);
Printf(“%d”, panjang);
}

 MENGGABUNGKAN STRING

#include<stdio.h>
#include<string.h>

Int main()
{
Char depan[] = “log”;
Char belakang[] = “algo”;

Strcat(depan,belakang);
Printf(“%s”, depan);
}

 MENGCOPY STRING

#include<stdio.h>
#include<string.h>

Int main()
{
char nama[] = "logalgo";
char copy[12];

49 | P a g e
strcpy(copy, nama);
printf("%s", copy);
}

 MEMBANDINGKAN STRING

#include <stdio.h>
#include<string.h>

Int main()
{
Char nama1[] = “log”
Char nama2[] = “algo”

Int hasil = strcmp(nama1, nama2);


Printf(“%d\n”, hasil);
If(hasil == 0){

Printf(“identic”);
}
else{
printf(“tidak identik”);
}
}

Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk String:

 Algoritma
1. Mulai
2. Deklarasikan variable pjg, i, j, k=0 dengan tipe data integer.
3. Deklarasikan Array variable nama dan vokal tipe data char
4. Masukkan nama
5. Hitung panjang nama dengan strlen
6. Proses untuk (i=0; i<pjg; i++)
(j=0;j<strlen(vokal); j++). Jika (nama[i]==vokal[j]) maka k++
7. Tampilkan jumlah huruf vokal
8. Selesai

50 | P a g e
 Flowchart

Mulai

int pjg, i,j,k=0;

char nama[100]; char


vokal[15] ="aAiIUuEeOo";

Masukkan
nama

Hitung panjang nama dengan strlen

Proses untuk (i=0; i<pjg; i++)


(j=0;j<strlen(vokal); j++). Jika
(nama[i]==vokal[j]) maka k++

Tampilkan jumlah
huruf vokal

Selesai

 Pseducode

DEKLARASI:
pjg, i,j,k=0 : integer
nama[100], vokal[15] ="aAiIUuEeOo": char {Array }

DESKRIPSI:
read (nama)
pjg = strlen(nama)
if (p>m)

51 | P a g e
for(i=0; i<pjg; i++) {
for(j=0;j<strlen(vokal); j++){
if(nama[i]==vokal[j])
k++;
}
}
write (jumlah huruf vokal)

 Kode Program Bahasa C


#include<stdio.h>
#include<string.h>

int main(void)
{
int pjg, i,j,k=0;
char nama[100]; char vokal[15] ="aAiIUuEeOo";

printf("Masukkan Nama: ");


gets(nama);//scan kata
pjg = strlen(nama);//panjang kata

for(i=0; i<pjg; i++){


for(j=0;j<strlen(vokal); j++){
if(nama[i]==vokal[j])
k++;
}
}
printf ("Jumlah huruf vokal pada nama tersebut adalah: %d",k);//print output
jumlah konsonan
}

 Hasil Program

52 | P a g e
J. Pointer
1. Pengertian Pointer

Pointer merupakan fitur utama dari bahasa C dan C++ yang berguna untuk mengakses
memory dan memanipulasi alamat variable di memory.

2. Operator Pointer

 Operator &
Operator & menghasilkan alamat dari operandnya atau alamat memori yang ditempati
oleh variable.

 Operator *
Operator * menghasilkan nilai yang berada pada sebuah alamat.

3. Deklarasi Pointer

 Deklarasi Pointer
Tipe_data *nama_variable

Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk


Pointer:

 Algoritma
1. Mulai
2. Deklarasikan sebuah variable pointer dan variable biasa.
3. Berikan nilai pada variable biasa.
4. Buat rumus nilai pointer yang akan mengarah ke alamat variable biasa.
5. Tampilkan nilai pointer.
6. Selesai.
 Flowchart
Mulai

Deklarasi a = 5
Ditanya = nilai
pointer?

p = &a

Tampilkan
nilai pointer

Selesai

53 | P a g e
 Pseudocode
Algoritma menentukan nilai pointer.

Diketahui nilai a adalah 5, maka tentukanlah nilai pointer yang diarahkan ke


alamat a.

Deklarasi :

a 5
p &a

Deskripsi :

Mulai
p = &a
cetak “Nilai pointer adalah”

Selesai

 Kode Program Bahasa C

#include<stdio.h>
int main(void)
{
int a=5;
int *p;

p=&a;
printf(“Nilai pointer adalah %d”, *p);
}

 Hasil Program

54 | P a g e
K. Struct
Struct digunakan untuk merepresentasikan suatu data yang saling terkait namun
memiliki tipe data yang berbeda

 Deklarasi Struct
struct nama_variable {

tipe_data nama_variable_member;

tipe_data nama_variable_member;

tipe_data nama_variable_member;

dst

};

Contoh Algoritma, Flowchart, Pseducode, serta Program Bahasa C untuk Struct:

Struct yang akan menampilkan nama dan umur seseorang

 Algoritma
1. Mulai.
2. Buat function struct dengan nama variable mahasiswa.
3. Deklarasikan dalam struct variable nama, tempat_lahir, tanggal_lahir tipe data
char dan variable no_induk tipe data integer.
4. Deklarasikan struct dalam integer main dan tambahkan nama struct nya.
5. Isi dicodingan no_induk, nama, tempat_lahir, dan tanggal_lahir, memanggil tipe
integer menggunakan tambahan nama_struct.no_induk, khusus char menggunakan
strcpy dalam kurung sama seperti tipe integer.
6. Cetak no_induk, nama, tempat_lahir, dan tanggal_lahir.
7. Selesai.
 Program Bahasa C
#include <stdio.h>
#include <string.h>

struct murid {
int no_induk;
char nama[30];
char tempat_lahir[20];
char tanggal_lahir[15];
};

int main(){

struct murid A;

A.no_induk = 1810817210;

55 | P a g e
strcpy(A.nama, "Adytia Dwi Hermawan");
strcpy(A.tempat_lahir, "Kotabaru");
strcpy(A.tanggal_lahir, "11 September 2000");

printf("No Induk murid A : %d\n", A.no_induk);


printf("Nama murid : %s\n", A.nama);
printf("Tempat lahir murid A : %s\n", A.tempat_lahir);
printf("Tanggal lahir murid A : %s\n", A.tanggal_lahir);
}
 Flowchart

Mulai

struct murid {int no_induk;


char nama[30]; char
tempat_lahir[20]; char
tanggal_lahir[15];

Deklarasikan
struct murid
A;

Pengisian data di
dalam codingan

Cetak data
yang sudah
diisi

Selesai

56 | P a g e
 Pseudocode

Algoritma menggunakan struct


Buatlah struct yang akan menampilkan no induk, nama, tempat lahir, dan
tanggal lahir.

Deklarasi :
no_induk : integer(didalam struct)
nama, tempat_lahir, tanggal_lahir : char(didalam struct)

Deskripsi :

Mulai

Struct murid A(memanggil struct)


A.no_induk = 1810817210
strcpy(A.nama, "Adytia Dwi Hermawan")
strcpy(A.tempat_lahir, "Kotabaru")
strcpy(A.tanggal_lahir, "11 September 2000")

Cetak “No. Induk A”


Cetak “Nama A”
Cetak “Tempat Lahir A”
Cetak “Tanggal Lahir A”

Selesai

 Hasil Program

57 | P a g e
BAB III

PENUTUP

Kesimpulan

Dalam memahami Konsep Pemrograman perlu bertahap dan bahasa Pemrograman pertama
yang sebaiknya kita pelajari adalah bahasa C, karena bahasa C mudah dan merupakan dasar
dari memahami bahasa Pemrograman yang lain.

Dalam membuat program pun kita harus teliti, jika tidak maka program tidak bisa dijalankan
atau error atau juga saat looping bisa terjadi Infinite loop.

Membuat Algoritma, Flowchart serta Pseducode juga tidak mudah, sering sekali bingung
susunan algoritma nya, bingung menggunakan simbol flowchart yang mana. Namun kami
percaya bahwa dengan terus belajar dan memperbanyak latihan, maka kami akan mudah
memahami konsep dari pemrograman.

Sekian modul yang telah kami susun semoga bermanfaat untuk kami dan pembaca sekalian.

Wassalamu‟alaikum warahmatullahi wabarakatuh.

58 | P a g e
DAFTAR PUSTAKA

Power point mata kuliah Konsep Pemrograman yang disusun oleh Pak Muhammad Alkaff,
S.Kom., M.Kom. dan Pak Andreyan Rizky Baskara, S.Kom., M.Kom.

Power point mata kuliah Logika Algoritma yang disusun oleh Ibu Yuslena Sari, S.Kom.,
M.Kom.

http://www.academia.edu/31005539/DPK_-_Laporan_Praktikum_Modul_7_Pointer_-
_S1_PTI_UM_2016

https://www.tutorialspoint.com/cprogramming/c_structures

https://www.slideshare.net/mobile/linda_rosalina/modul-logika-dan-algoritma

www.mahirkoding.com

www.it-jurnal.com

www.google.com

59 | P a g e

Anda mungkin juga menyukai