3 programming basic
TRANSCRIPT
To translate mathematical algorithm in numerical methods into a language that computers understand.
3.1 WHY PROGRAMMING?
Mathematical Model
Numerical Methods
Arithmetical Model
Logical Skill
Algorithm
Prog
ram
min
g Sk
illsComputer
Program
Computer Power
Numerical Solution
Pengetahuan mengenai NM untuk memecahkan suatu
masalah
Kemampuan logika dalam
menerjemahkan masalah kedalam
algoritma
Pengetahuan mengenai Bahasa Pemrograman& kemampuan
untuk membuat bahasa pemrograman untuk
memecahkan suatu masalah
Kemampuan komputer dalam
menjalankan program yang diperintahkan
CASE STUDY:
Diketahui:Seorang penerjun yang mempunyai massa m (= mpenerjun + mbarang) meloncat dari
pesawat yang membawanya.Jika percepatan gravitasi (g) dan koefisien drag (c).
Ditanyakan:Turunkan persamaan matematika untuk menjelaskan bagaimana hubungan antara kecepatan (v) terhadap waktu (t)?
ANALITYCAL SOLUTIONFOR THE FALLING PARACHUTIST PROBLEM:
Diketahui:Jika massa dari penerjun dan perlengkapannya adalah 68,1 kg, percepatan gravitasinya (g = 9,8 m/s2), dan koefisien dragnya (c =12,5 kg/s).
Ditanyakan:Bagaimana hubungan kecepatan terhadap waktu yang terjadi dari mulai dia melompat dari pesawat dan kapan dia mencapai terminal velocity-nya?
DENGAN BANTUAN EXCELDIDAPAT HUBUNGAN KECEPATAN TERHADAP WAKTU SBB:
0 10 20 30 40 50 600.00
10.00
20.00
30.00
40.00
50.00
60.00
v (m/s) vs t (s)
t (s)
v (m/s)
Terminal Velocity
pada t = 52 s dengan v = 53,39 m/s
Metode Numerik adalah mereformula persamaan matematika yang telah diturunkan pada slide sebelumnya menjadi operasi aritmetika sbb:
NUMERICAL SOLUTIONFOR THE FALLING PARACHUTIST PROBLEM:
Diketahui:Dengan soal yang sama seperti pada Analytical Solution. Dan mempergunakan step size 2 untuk perhitungannya.
Ditanyakan:Bagaimana hubungan kecepatan terhadap waktu yang terjadi dari mulai dia melompat dari pesawat dan kapan dia mencapai terminal velocity-nya?
3.2 COMPUTERS PROGRAMS
Computer program are a set of instructions that direct the computer to perform a certain task
Classification:- High Level: Programming language
(Fortran, Basic, Pascal, C, etc.)
- Low Level : Machine language
Programming Topics:a. Simple information representation
ex. constants (m, g), variables (v, t), etc. b. Advanced information representation (data structure, arrays, records) c. Mathematical formulae d. Input (m)/Output (v, graph) e. Logical representation (Y/N) f. Modular Programming (Sub Routine/Sub Program)
3.3 STRUCTURED PROGRAMMING
Structured program is a set rules that prescribe good style habits for the programmer
Apart from structured programming:- Top-Down Programming (Bhs. BASIC) Keunggulan: Faster for computer to read but less simple Kekurangan:
Difficult to understand/read by human- Modular Programming Keunggulan: Easier to understand Communicative
Characteristics:- Clear and easy to understand- Easier to debug, test, run, and update/modify- Sequence, selection, and repetition- Requires computers that can translate it to unstructured version before running it
Communications: - Algorithm is a set of steps to instruct a
computer to perform a certain task- Flow Chart is a virtual/graphical
representation of an algorithm- Pseudo Code is an alternative approach to express an algorithm that bridges the gap between flow chart & computer code
3.4 SIMBOLS USED IN FLOWCHART
SYMBOL NAME FUNCTION
Terminator Represents the beginning or end of a program
Flowlines
Represents the flow of logic. The humps on the horizontal arrow indicate that it passes over and does not connect with the vertical flowlines
Process Represents calculations or data manipulations
Input/Output Represents inputs or outputs of data and information
DecisionRepresents a comparison, question, or decision that determines alternative paths to be follow
SYMBOL NAME FUNCTION
On-page connector
Represents a break that is continued on the same page
Off-page connector
Represents a break that is continued on another page
Count-controlled loop
Used for loops which repeat a prespecified number of iterations
EXAMPLE-1:
Buat Flowchart, Algoritma, dan Pseudocode untuk menjumlahkan dua buah bilangan A dan B kedalam variabel C.
JAWAB:A. Flowchart
START
A, B
C = A + B
C
END
B. Algoritma
1. Memulai Program
2. Memasukkan data A dan B
3. Menjumlahkan data A dan B kedalam variabel C
4. Menampilkan hasil penjumlahan, C
5. Mengakhiri program
C. Pseudocode
INPUT A, B C = A + BDISPLAY C
EXERCISE-1:
Buat Flowchart, Algoritma, dan Pseudocode untuk menghitung:a. Luas Persegipanjangb. Luas Kubusc. Luas Segitigad. Luas Jajaran Genjange. Luas Lingkaranf. Volume Balokg. Volume Bolah. Volume Tabungi. Keliling Persegipanjangj. Keliling Lingkaran
EXAMPLE-2:
Buatlah Flowchart, Algoritma, dan Pseudocode untuk menentukan bilangan terbesar dari 2 buah bilangan.
JAWAB:
A. Flowchart
START
Bil_1, Bil_2
Bil_1 adalah bilangan yang
terbesar
END
Bil_1 > Bil_2
Bil_1 = Bil_2
Bil_1 sama besar dengan
Bil_2
Bil_2 adalah bilangan yang
terbesar
Y
Y
N N
B. Algoritma
1. Memulai Program2. Memasukkan data Bil_1 dan Bil_23. Membandingkan, apakah Bil_1 lebih dari Bil_2?
Jika Ya, lanjutkan program ke langkah-4,Jika Tidak, lanjutkan program ke langkah-5
4. Menampilkan “Bil_1 adalah bilangan yang terbesar” dan lanjutkan ke langkah-8
5. Membandingkan apakah Bil_1 sama dengan Bil_2?Jika Ya, lanjutkan program ke langkah-6,Jika Tidak, lanjutkan program ke langkah-7
6. Menampilkan “Bil_1 sama besar dengan Bil_2” dan lanjutkan ke langkah-8
7. Menampilkan “Bil_2 adalah bilangan yang terbesar”8. Mengakhiri Program
C. Pseudocode
INPUT Bil_1, Bil_2IF Bil_1 > Bil_2 THEN DISPLAY “Bil_1 adalah bilangan yang terbesar”ELSE IF Bil_1 = Bil_2 THEN DISPLAY “Bil_1 sama besar dengan Bil_2” ELSE DISPLAY “Bil_2 adalah bilangan yang terbesar” ENDIFENDIF
EXERCISE-2:
Buatlah Flowchart, Algoritma, dan Pseudocode untuk menentukan Grade dari suatu nilai, dengan ketentuan sbb:
80 < A ≤ 10065 < B ≤ 8055 < C ≤ 6545 < D ≤ 55
0 < E ≤ 45
B. Algoritma
1. Memulai Program2. Memasukkan data J3. Mengisi J dengan 04. Membandingkan apakah J lebih dari 10?
Jika Ya, lanjutkan program ke langkah-5,Jika Tidak, lanjutkan program ke langkah-8
5. Menjumlahkan J yang lama dengan 1 dan memasukkannya ke J yang baru
6. Menampilkan nilai J yang baru7. Kembali ke langkah-48. Program Selesai