pengenalan komputer, algoritma dan program

51

Upload: achmad-solichin

Post on 06-Jun-2015

5.565 views

Category:

Documents


2 download

DESCRIPTION

Materi Pertemuan 1 Algoritma dan Struktur Data 1

TRANSCRIPT

Page 1: Pengenalan Komputer, Algoritma dan Program
Page 2: Pengenalan Komputer, Algoritma dan Program

Diselesaikan

OlehKOMPUTER

Langkah-langkah harus tersusun secara LOGISdan Efisienagar dapat menyelesaikan tugas dengan benardan efisien.

ALGORITMAadalah langkah-langkah yang diambil dalam menyelesaikan suatu tugas

Page 3: Pengenalan Komputer, Algoritma dan Program

TEKNIK,Karena Algoritma diterapkan di Komputeryang penuh dengan TOOLdan metodologi

Seni,karena Algoritma penuh dengan kreativitas dan imajinasi yang jenius

ALGORITMAmerupakan gabungan antara SENI dan TEKNIK

Page 4: Pengenalan Komputer, Algoritma dan Program
Page 5: Pengenalan Komputer, Algoritma dan Program

RAM

ContohWINDOWS

Mempunyai

Processor contoh Intel Pentium

KOMPUTER

adalah alat pengolah data,

dengan konstruksi elektronik,

yang mempunyai, internal

storage

bekerja dengan bantuan

Operating System

menurut program yang

diberikan kepadanya.

Page 6: Pengenalan Komputer, Algoritma dan Program
Page 7: Pengenalan Komputer, Algoritma dan Program

misal :Intel Pentium

PROCESSOR

MEMORY (internal Storage)

SCREEN

KEYBOARD

HARDDISK(external storage)

RAMmisal

kapasitas64 MB

Input device

Misalkapasitas

10 GB

Outputdevice

Input & Outputdevice

Page 8: Pengenalan Komputer, Algoritma dan Program

misal :Intel Pentium

Data

OperatingSystem

OPERATINGSYSTEM

PROGRAM------------------------------------------------

data

PROCESSOR

MEMORY (internal Storage)

SCREEN

KEYBOARD

HARDDISK(external storage)

data data

Program

RAMmisal

kapasitas64 MB

Input device

Misalkapasitas

10 GB

Outputdevice

Input & Outputdevice

Page 9: Pengenalan Komputer, Algoritma dan Program
Page 10: Pengenalan Komputer, Algoritma dan Program

memory

no: 0 1 2 3

No :64 * 1024 * 1024 - 1(Untuk memory 64 MB)

1 BYTE = 8 bit (binary digit)

X X X X X X X X

1 2 3 4 5 6 7 8

Bila memory dianggap sebagai sebidang tanah,maka 1 BYTE dapat dianggap sebagai 1 meter persegi

Satuan lain :WORD ( 4 Byte)HALF WORD ( 2 Byte)DOUBLE WORD ( 8 Byte)SECTOR (512 Byte)

BYTE adalah satuan memory (storage) terkecil yang masih bisa diberi alamat

Page 11: Pengenalan Komputer, Algoritma dan Program

MEMORY dan satuan BYTE

Memory, bila dibayangkan sebagai sebidang tanah, maka satu BYTE adalah area sebesar satu meter persegi, yang dapat menyimpan satu buah huruf

Bila dibayangkan sebagai sebuah ruangan, maka satu BYTE adalah sebuah ubin yang dapat menampung sebuah huruf

Page 12: Pengenalan Komputer, Algoritma dan Program

RANDOM ACCESS (Akses secara Acak)

0 1 2 3 4 5 . . . . . .

Komputer dapat mengakses (menuju, mencapai, mendapatkan) sebuah Byte dalam memory, secara langsung, tanpa harus menelusuri satu per satu mulai Byte 0,1,2,3, dan seterusnya. Bagi komputer, untuk mengakses Byte no 1000, sama mudahnya dengan mengakses Byte nomor 1, atau nomor lainnya

Page 13: Pengenalan Komputer, Algoritma dan Program

Sebuah Byte terdiri dari 8 komponen yang disebut bit.Sulit menerangkan benda yang disebut bit tersebut secara fisik. Hanya dapat diilustrasikan sebagai sebuah bohlam lampu yang dapat menyala atau padam.Bila menyala disebut ON, dan padam disebut OFF

Contoh sebuah huruf Abila disimpan dalam satu BYTE memory

ON

OFF

1 BYTE = 8 bit (binary digit atau angka biner)

ilustrasi sebuah BYTE yang terdiri dari 8 buah bohlam lampu.

Page 14: Pengenalan Komputer, Algoritma dan Program

Catatan :

ON

OFF

disini sengaja dibuat jarak, hanya agar mudah melihat jumlah bitnya ada 8 buah.

Page 15: Pengenalan Komputer, Algoritma dan Program

Binary digit (angka biner)

Untuk keperluan komputasi secara digital,maka : bit yang ON dinyatakan dengan angka 1, dan bit yang OFF dinyatakan dengan angka 0

Sehingga huruf Ayang dinyatakan dengan ON dan OFF nya bit-bit sebagaiberikut :

ON

OFF

selanjutnya dinyatakan dengan :

0 1 0 0 0 0 0 1

Page 16: Pengenalan Komputer, Algoritma dan Program

Binary digit (angka biner)

Bilangan Binary, Basis (Radix) = 2, karena hanya mengenal 2 notasi atau simbol yaitu:0 dan 1

x x x x x x32 16 8 4 2 1

Bilangan DecimalBasis (Radix) = 10,karena mengenal 10 notasi atau simbol yaitu : 0, 1, 2, 3, . . . 9

x x x x 1000 100 10 1

Page 17: Pengenalan Komputer, Algoritma dan Program

Binary digit (angka biner)

01

1 01 1

1 0 01 0 11 1 01 1 1

1 0 0 01 0 0 1

= 0= 1= 2= 3= 4= 5= 6= 7= 8= 9

Page 18: Pengenalan Komputer, Algoritma dan Program

Nilai yang terkandung dalam sebuah BYTE

Setiap bit yang ON mempunyai nilai sesuai dengan posisinya dalam sebuah BYTE yang dapat digambarkan sebagai berikut :

128 64 32 16 8 4 2 1

Page 19: Pengenalan Komputer, Algoritma dan Program

Nilai karakter A

Ilustrasi huruf A yang disimpan dalam BYTE

128 64 32 16 8 4 2 1

Sehingga karakter A, atau huruf Ayang disimpan dalam satu BYTE memory akan bernilai = 65karena bit yang ON bernilai 64 dan 1.

Yang dinyatakan dengan angka biner (binary digit)menjadi :

0 1 0 0 0 0 0 1128 64 32 16 8 4 2 1

Page 20: Pengenalan Komputer, Algoritma dan Program

128 64 32 16 8 4 2 1

A

B

C

D

E

HURUFatauKARAKTER : = 65

= 66

= 67

= 68

= 69

Page 21: Pengenalan Komputer, Algoritma dan Program

KOMPUTER

adalah alat pengolah data,

dengan konstruksi elektronik,

yang mempunyai, internal storage

bekerja dengan bantuan

Operating System

menurut program yang diberikan

kepadanya.

Page 22: Pengenalan Komputer, Algoritma dan Program

Operating Systemadalah software yang dibuat untukmengendalikan bekerjanya komputer.

Semua pekerjaan didalam komputer dikendalikan (di-control) oleh Operating System

Beberapa Contoh Operating System :

DOSWINDOWSWINDOWS NTUNIXLINUXXENIXMACINTOSHSUN SOLARIS

Page 23: Pengenalan Komputer, Algoritma dan Program

KOMPUTER

adalah alat pengolah data,

dengan konstruksi elektronik,

yang mempunyai, internal storage

bekerja dengan bantuan

Operating System

menurut program yang diberikan

kepadanya.

Page 24: Pengenalan Komputer, Algoritma dan Program

= Langkah-langkah dalam Alagoritma

Instruksi-instruksiharus tersusunsecara logis

MemerlukanLOGIKA

yang benar

PROGRAM adalah kumpulan instruksi-instruksiyang diberikan kepada komputer untuk menyelesaikan suatu tugas

Page 25: Pengenalan Komputer, Algoritma dan Program

PROGRAMditulis dalam suatu bahasa yang disebut Bahasa Pemrograman (Programming Language)

Contoh BahasaPemrograman :

COBOLFORTRANPascalBASIC

CJavadan sebagainya

Bahaca C ini yang kitagunakan untukmenerapkan Algoritmadi komputer

Page 26: Pengenalan Komputer, Algoritma dan Program

Contoh Persoalan yang akan diselesaikan :

Mencari Total dua buah bilangan(Misal dua buah bilangan tersebut masing masing bernilai 5 dan 2).

diselesaikandengan

menggunakan SIPOA, SWIPOA,

SEMPOA

diselesaikan dengan

menggunakanKALKULATOR

diselesaikan dengan

menggunakanKOMPUTER

Page 27: Pengenalan Komputer, Algoritma dan Program

Contoh Persoalan yang akan diselesaikan dengan menggunakan komputer :

Mencari Total dua buah bilangan(Misal dua buah bilangan tersebut masing masing bernilai 5 dan 2).

diselesaikandengan menggunakan

program yang sudah jadimisalnya EXCEL

diselesaikan dengan membuat

PROGRAM sendiri

Page 28: Pengenalan Komputer, Algoritma dan Program

Contoh Soal :

Diketahui dua buah bilangan masing masing bernilai 5 dan 2.Susun program dalam Bahasa Cuntuk mencetak hasil penambahan kedua buah bilangan tersebut.

Algoritmasecara Umum

A 5 B 2 T A + B WRITE(T)

Algoritma dalam Bahasa C

#include<stdio.h>void main(){ int A,B,T; A = 5; B = 2; T = A + B; printf(“%i”, T);}

Variabeltidak didefine/ dideklarasi/ dinyatakan/ dipesanlebih dulu

Variabel perlu didefine/ dideklarasi/lebih dulu

VARIABLE----------

VARIABEL

- Tipe (Type)- Nama- Isi

MewakiliALAMAT(address)

Page 29: Pengenalan Komputer, Algoritma dan Program

#include<stdio.h> main() { int A,B,T; A=5; B=2; T=A+B: printf(“%I”, T);}

Ccompiler

windows

#include<stdio.h>main(){ int A,B,T; A = 5; B = 2; T = A + B; printf(“%i”, T);}

5 2 7

A B T

7

5 + 2 = 7C PU

MEMORY

SCREEN

KEYBOARD

WindowsC

compiler

HARDDISK

2

1

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

2

3

4

Page 30: Pengenalan Komputer, Algoritma dan Program

Kembali ke Soal :Diketahui dua buah bilangan masing-masing bernilai 5 dan 2.Susun program dalam Bahasa C untuk mencetak hasil penambahan kedua bilangan tersebut.

Cara-1 : #include <stdio.h>main(){ int A, B, T; A = 5; B = 2; T = A + B;

printf(“%i”, T);}

Disiapkan 3 buah variabelmasing-masing bertipe integer.Dapat juga ditulis sbb:

int A; int B; int T;

Variabel Adiisi dengannilai 5

Isi variabel A ditambah dengan isi variabel Bhasil penambahannya disimpan dalam variabel T

Yang dicetak

nilai TInstruksiMencetak

Format “%i”untuk nilai integer

Page 31: Pengenalan Komputer, Algoritma dan Program

#include <stdio.h>main(){ int A, B, T; A = 5; B = 2; T = A + B; printf(“%i”, T);}

Program diatas dapat juga ditulis sbb:

Satu baris statement dapat terdiri dari lebihdari satu instruksi

#include <stdio.h>main(){ int A, B, T; A = 5; B = 2; T = A + B; printf(“%i”, T);}

Atau sebagai berikut :

#include <stdio.h>main(){ int A, B, T; A = 5; B = 2; T = A + B; printf(“%i”, T);}

#include <stdio.h>main(){ int A = 5, B = 2, T; T = A + B; printf(“%i”, T);}

Page 32: Pengenalan Komputer, Algoritma dan Program

#include <stdio.h>main(){ int A, B; A = 5; B = 2; printf(“%i”, A+B);}

Total tidak disimpan dalam sebuah variabel,tapi hasil penambahan A+B bisa langsung dicetak

Cara - 2.

#include <stdio.h>main(){ printf(“%i”, 5 + 2);}

Nilai 5 dan 2 begitu juga Total,tidak dismpan dalam variabel.Tapi hasil 5 + 2langsung bisa dicetak

Cara - 3

#include <stdio.h>main(){ printf(“%i”, 7 );}

Walaupun ini juga program,tapi BUKAN program yang dimaksud untuk menghitung 5 + 2tapi hanya sekedar mencetak nilai 7 yang telah kita hitungsendiri.Nilai 7 bukan dihitung oleh komputer

Page 33: Pengenalan Komputer, Algoritma dan Program

2.01

Page 34: Pengenalan Komputer, Algoritma dan Program

#include <stdio.h>void main(){ int A, B, T; scanf(“ %i ”, &A); scanf(“ %i ”, &B); T = A + B; printf(“ %i ”, T);}

Program dan Bahasa Pemrograman C.

Contoh program dalam Bahasa Cuntuk meng-input dua buah bilangan,menghitung dan mencetak totalnya

#include <iostream.h>void main(){ int A, B, T; cin >> A; cin >> B; T = A + B; cout << T;}

Turbo C C++

Page 35: Pengenalan Komputer, Algoritma dan Program

2.2 Struktur Bahasa C

----

void main() { statement statement statement statement }----

Beberapa contoh penempatan tanda kurung { dan }sebagai batas sebuah main program.

void main(){ statement statement statement statement

}

1.void main(){ statement statement statement

statement }

2.void main(){ statement statement statement statement

}

3.void main(){ statement statement statement

statement }

4.void main() { statement statement statement statement

}

5.void main() { statement statement statement

statement }

6.

Page 36: Pengenalan Komputer, Algoritma dan Program

Keywords dan Library Functions.

#include <stdio.h>void main(){ int A, B, T; scanf(“ %i ”, &A); scanf(“ %i ”, &B); T = A + B; printf(“ %i ”, T);}

#include <iostream.h>void main(){ int A, B, T; cin >> A; cin >> B; T = A + B; cou << T;}

Turbo C C++

Perhatikan kata-kata (words) yang ada dalam kedua program tersebut, yaitu :

include stdio.hstream.h

main()scanf()printf()cincout

voidint

Page 37: Pengenalan Komputer, Algoritma dan Program

a.

Keywords dalam ANSI C(ANSI = American National Standards Institute)

autobreakcasecharconstcontinuedefault

dodoubleelseenumexternfloatfor

gotoifintlongregisterreturn

shortsignedsizeofstaticstructswitch

typedefunionunsignedvoidvolatilewhile

Keyword dalam Bahasa C

Keywords tambahan dalam TURBO C

Selain keywords yang ada pada ANSI C, Turbo C menambah beberapa keywords yaitu :

asmcdeclfarhuge

interuptnearpascal

Page 38: Pengenalan Komputer, Algoritma dan Program

Selain keywords yang ada pada ANSI C, C++ menambah beberapa keywords yaitu : asm

classdeletefriendinline

newoperatorprivateprotectedpublic

templatethisvirtual

b. Library Functions dan Library Macroes dalam Turbo C.

1) Dalam stdio.hLibrary Functions

clearr()fclose()fccloseall()fdopen()fflush()fgetc()fgetchar()fgetpos()fgets()

flushall()fopen()fprint()fputc()fputchar()fputs()fread()free()freopen()

fscan()fseek()fsetpos()ftell()fwrite()gets()getw()perror()printf()

puts()putw()rename()rewind()scanf()unlink()

Library Macroes

feof(f)ferror(f)fileno(f)getch(f)getchar(f)putchar( f)remove(path)

Page 39: Pengenalan Komputer, Algoritma dan Program

2) Dalam math.h

Library Functions

abs()acosh()asin()atan()atan2()atof()

ceil()cos()cosh()exp()fabs()floor()fmod()

labs()ldexp()log()log10()pow()sin()sinh()

sqrt()tan()tanh()

3) Dalam stdlib.h

Library Functions

abs()atof()atoi()atol()div()exit()

Free()ldiv()malloc()rand()srand()system()

abs(x)atoi(s)random(num)randomize()

Library Macroes

Page 40: Pengenalan Komputer, Algoritma dan Program

4) Dalam string.hLibrary Functions

strcpy()strcat()strchr()strcmp()strlen()

5) Dalam conio.hLibrary Functions

clrscr()getch()getche()gotoxy()khbit()putch()

6) Dalam io.hLibrary Functions

access()_close()close()_creat()eof()

filelength()_ope()open()_read()read()_write()write()

6) Dalam ctype.h

Library Functionsstlower()toupper()

Library Macroesisalnum( c)isalpha( c)isascii( c)iscntrl( c)isdigit( c)

isgraph( c)islower ( c)isprint( c)ispunct( c)isspace( c)

isupper( c)isxdigit( c)toascii( c)_tolower( c)_toupper( c)

Page 41: Pengenalan Komputer, Algoritma dan Program
Page 42: Pengenalan Komputer, Algoritma dan Program

Variabel dan Tipe Data.

#include <stdio.h>void main(){ int A, B, T; scanf(“ %i ”, &A); scanf(“ %i ”, &B);

T = A + B;

printf(“ %i ”, T);}

#include <iostream.h>void main(){ int A, B, T; cin >> A; cin >> B;

T = A + B;

cou << T;}

Perhatikan instruksi : int A, B, T;

A B T

MEMORY

Page 43: Pengenalan Komputer, Algoritma dan Program

Nama variabel.

Nama variabel ditentukan atau dikarang sendiri oleh pembuat program dengan syarat sebagai berikut :

1. Tidak boleh sama dengan nama atau kata yang sudah disiapkan (reserved word) oleh komputer seperti keyword, dan functions. Juga harus berbeda dengan nama label atau konstanta yang dibuat oleh pemrogram.

2. Maksimum 32 karakter, bila lebih dari 32 karakter, maka karakter selebihnya tidak diperhatikan. Huruf besar dan huruf kecil berbeda.

3. Karakter pertama harus huruf atau karakter garis bawah (under score), dan karakter berikutnya boleh hurup atau angka, atau karakter garis bawah.

4. Tidak boleh mengandung spasi atau blank.

Contoh nama variabel yang benar.

AA1NilaiNILAInilaiHargaSatuanHarga_SatuanHS_HargaSWITCH

Contoh nama variabel yang SALAH.

1ANilai-1Harga SatuanBenar/Salahswitchlong

Awalnya bukan huruf atau under scoreMengandung tanda minus (-)Mengandung spasi (blank)Mengandung special character Sama dengan keywordSama dengan keyword

Catatan : Dalam bahasa C, huruf besar berbeda dengan huruf kecil (case sensitif)sehingga :

Nilai berbeda dengan NILAI, juga berbeda dengan nilaiSWITCH berbeda dengan switch yang keyword.

Page 44: Pengenalan Komputer, Algoritma dan Program

Tipe Data.Tipe data dasar (primitif) yang digunakan oleh Bahasa C.

1. Character

2. Integer

3. Floating point (single precision)

4. Double precision

char atau signed char

unsigned char

int atau signed int atau signed

unsigned int atau unsigned

long atau long int atau signed long atau signed long int

unsigned long atau unsigned long int

float

double

long double

SebutanTipe Data

Bentuk penulisandalam Bahasa C

Jumlah Byteyang

diperlukan

Jangkauan nilainumerik

1

1

2

2

4

4

4

8

10

-128 s.d. 127

0 s.d. 255

-32768 s.d. 32767

0 s.d. 65535

-2147483648 s.d. 2147483647

0 s.d. 4294967295

3.4E-38 s.d. 3.4E38positip atau negatip

1.7E-308 s.d. 1.7E308positip atau negatip

3.4E-4932 s.d 1.1E4932positip atau negatip

Page 45: Pengenalan Komputer, Algoritma dan Program

Catatan :

1. Dalam Bahasa C dikenal juga tipe data short int atau signed short int, atau short yang penggunaannya sama dengan int.Juga tipe unsigned short int yang sama dengan unsigned int

2.3.4E-38 adalah penulisan untuk 1.4 x 10 -38 dan

3.4E38 adalah penulisan untuk 1.4 x 10 38

Page 46: Pengenalan Komputer, Algoritma dan Program

Menyiapkan dan Mengisi Variabel

Variabel char diisi satu karakter

#include<stdio.h>main(){ char C; C = ‘A’; -

0 1 0 0 0 0 0 1= karakter A ASCII = 65

#include<stdio.h>main(){ char C = ‘A’; - -

#include<stdio.h>main(){ char C; C = 65; -

#include<stdio.h>main(){ char C= 65; - -

0 1 0 0 0 0 0 1= karakter A ASCII = 65

1

atau

atau2

Contoh 1 dan 2 menghasilkan Byte dengan bit-bit yang sama

Page 47: Pengenalan Komputer, Algoritma dan Program

Variabel char diisi String

#include<stdio.h>main(){ char S[10] = “Jakarta”; -

1

#include<stdio.h>main(){ char S[10]; S = “Jakarta”; -

2

Maka isi S{10] menjadi :

J a k a r t a \0

0 1 2 3 4 5 6 7 8 9

Keterangan yang lebih lengkaplihat halaman 4.13

Akan terjadi error

#include<stdio.h>#include<string.h>main(){ char S[10]; strcpy(S, “Jakarta” ); -

3Supaya tidak error harus menggunakan library function strcpy( ) untuk string copy

Agar dapat menggunakan strcpy( ),harus disertakan file string.hdengan #include<string.h>

Page 48: Pengenalan Komputer, Algoritma dan Program

#include<stdio.h>main(){ int N; N = 65; -

Variabel int diisi nilai numerik

#include<stdio.h>main(){ int N = 65; - -

1

atau

0000 0000 0100 0001 = 65Keterangan yang lebih lengkaplihat halaman : 3.08 s.d 3.12dan 4.18 s.d. 4.20

Page 49: Pengenalan Komputer, Algoritma dan Program

#include<stdio.h>main(){ int N; N = ‘A’; -

Variabel int diisi karakter

#include<stdio.h>main(){ int N = ‘A’; - -

1

atau

0000 0000 0100 0001

Karakter Anilai ASCII = 65

Keterangan yang lebih lengkaplihat halaman : 3.08 s.d 3.12dan 4.18 s.d. 4.20

Page 50: Pengenalan Komputer, Algoritma dan Program

2.10

#include<stdio.h>main(){ int N; N = ‘AB’; -

#include<stdio.h>main(){ int N = ‘AB’; - -

2

0100 0010 0100 0001

Karakter A, ASCII = 65Karakter B, ASCII = 66

Byte ini diisi dg ‘A’

Byte ini diisi dg ‘B’

Variabel int, dapat diisi dengan maksimum 2 karakter

Page 51: Pengenalan Komputer, Algoritma dan Program

2.102.6 Soal-Soal, Latihan Mandiri

1.

2.

3.

4.

5.

6.

7.

8.

Apa yang dimaksud dengan keyword dalam Bahasa C.

Sebutkan beberapa contoh keyword

Sebutkan fungsi-fungsi pustaka yang ada dalam file : a) stdio.h b) conio.h c) String.h

Apa yang dimaksud dalam variabel

Berikan beberapa contoh nama variabel yang : a) benar (valid) b) salah (invalid)

Sebutkan beberapa macam tipe data standard

Apa yang dimaksud dengan statement dalam bahasa pemrograman

Apa yang dimaksud dengan main program atau program induk dalam Bahasa C