02.1 Hari-2.

Slides:



Advertisements
Presentasi serupa
Introduction to Algorithm evaluation Soal Matrikulasi Buka Buku
Advertisements

Keyword, Variabel, Konstanta, Tipe Data, Operator, dan Input / Output
09 Control Statement if 143.
DASAR-DASAR PEMROGRAMAN C
02.1 Hari-2.
Pemrograman Terstruktur
INSTRUKSI MASUKAN DAN KELUARAN
3 Variabel, Konstanta Tipe Data dan dalam Bahasa C/C++ Java dan Bab
7. 1 Bab 07 Menginput Nilai melalui Keyboard.
menginput waktu dalam detik di konversi ke Jam, Menit dan Detik
Statement Input – Output
TIPE DATA Erizal, S.Si, M.Kom Sistem Informasi STTI Respati
1 Pertemuan 1 Pengenalan Pemrograman Terstruktur C Matakuliah: H0112 – Pemrograman Bahasa Tingkat Tinggi Tahun: 2005/2006 Versi: xxx/2.
Elemen Dasar C++ Norma Amalia, ST.,M.Eng.
03.1 Hari-3.
ANALISA DAN DESAIN ALGORITMA
Pengantar C++.
Pertemuan 1 Pengenalan Bahasa C++.
Pendahuluan & identifier pada bahasa c dan c++
INPUT DAN OUTPUT OLEH: SRI SUPATMI,S.KOM.
Pertemuan III Komentar, Identifier dan Tipe data.
Teknik Pemrograman oleh: Yohanes Sugiarto.
Pendahuluan Erfin Gustaman.
TYPE DATA ,VARIABEL &KONSTANTA Dalam C++
POINTER 6.3 & 7.3 NESTED LOOP.
04.2 Hari-4.
04.1 Hari-4.
MATERI 1 Review dan Pengantar C (Struktur Bahasa C, Variabel, Konstanta, Tipe Data, Operator)
Introduction using 03b to Algorithm C / C++ teknik dasar Algoritma.
Introduction 03 using to Algorithm C / C++ teknik dasar Algoritma.
Pertemuan 1 DATA & STRUKTUR DATA.
07.3 Hari-7.
Contoh Aplikasi Sederhana
Mengenal Model Data, Perintah I/O
Contoh Aplikasi Sederhana
Minggu 5 Imam Fahrur Rozi
Introduction 02 using to Algorithm C / C++ Algoritma dan
TEL 2112 Dasar Komputer & Pemrograman
Input/output Pemrograman 1 (C++) STMIK AsiA Malang.
Operator dan Operasi Input Output pada C++ Pertemuan 11
TEL 2112 Dasar Komputer & Pemrograman
Teori Pendukung Introduction to Algorithm 01.
(Struktur Dasar, Variabel, Tipe Data, Input, Output, Komentar)
04.2 Hari-4.
Input Dan Output.
~ PERTEMUAN 4 KONSEP TIPE DATA ~
Pemrograman Terstruktur
VARIABEL DAN TIPE DATA Erizal, S.Si, M.Kom Sistem Informasi
Mengenal Model Data, Perintah I/O
S. Indriani Lestariningati, M.T
Pemrograman Terstruktur
Pemrograman Bahasa C sRi nurhayati, mt.
05.1 Hari-5.
Input dan Output Pertemuan ke-3 Bahasa C.
Variabel dan Tipe Data TEE 2103 Algoritma & Pemrograman
mencetak Total kedua bilangan tersebut
03.7 Latihan Membaca Flowchart.
Algoritma dan struktur data
Arithmetic Expression
Bab 08 Menghitung Total Data yang Diinput Dari Keyboard
01.5 Soal-Soal Pekerjaan Rumah.
Pertemuan 2 Pengantar Pemrograman
Data dan Struktur Data.
Algoritma dan Stuktur Data
Bab 05 Tipe Data dan Mengisi Variabel
Nested if 164.
Mencetak Nilai Konstanta
Soal-soal.
Bab 03 Variabel dan Tipe Data
Operator, Variabel, Konstanta, Tipe Data
Transcript presentasi:

02.1 Hari-2

Kumpulkan PR

Ambil Kertas Selembar Tulis NIM dan Nama Kerjakan Soal 5 menit kumpulkan

Ini Soalnya : Susun algoritma (Program dalam Bahasa C/C++) untuk menghitung dan mencetak nilai rata-rata 3 buah bilangan berikut : Bilangan pertama : 75 Bilangan ke-dua : 70 Bilangan ke-tiga : 70. Soal tidak perlu ditulis untuk dikumpulkan. Tapi sebaiknya Soal Saudara catat di buku Saudara

Soal-2.1 Menetak Nilai Rata-Rata dan memilih Tipe Data Susun algoritma (Program dalam Bahasa C/C++) untuk menginput 3 buah bilangan ( nilai Matematika, Fisika dan Kimia ) kemudian mencetak nilai rata-rata ketiga buah bilangan tersebut. 75 70 Nilai Rata-Rata scanf 75 70 70 215 T cin 71.666667 A B C KEYBOARD printf 71.66… R cout SCREEN MEMORY

#include <stdio.h> void main() { int A, B, C, T, R; Bila program ibi diRUN,dan diinput : 75, 70, dan 70,maka terlihat dilayar sevagai berikut : #include <stdio.h> void main() { int A, B, C, T, R; printf("Matematika : "); scanf(" %i", &A); printf("Fisika : "); scanf(" %i", &B); printf("Kimia : "); scanf(" %i", &C); T = A + B + C; R = T / 3; printf("Nilai Rata-Rata = %i ", R); } Matematika : 75 Fisika : 70 Kimia : 70 Rata-Rata = 71 Mengapa tercetak : 71 ? Bukankah seharusnya : 71.66666666. . . . . Matematika : 75 Fisika : 70 Kimia : 70 Rata-Rata = 71 Karena variabel R tipenya int (integer) yang hanya menampung nilai integer (bilangan bulat) nya saja

T = A + B + C; R = T / 3; printf(“%i”, T ); Proses : Penjelasan Proses Tipe Data Hasil Proses T = A + B + C; R = T / 3; printf(“%i”, T ); Proses : A B A B C T R Nilai Nilai INPUT 3 71 75 70 70 215 int int int int int int proses Tambah, Kurang. Kali, Bagi Proses dalam komputer : Nilai Hasil Proses OUTPUT T = A + B + C;

Sifat Proses : A B Tipe Tipe proses A B int float double int float INPUT INPUT OUTPUT Tipe A Tipe B Tipe Hasil Proses Nilai proses Tambah, Kurang. Kali, Bagi Hasil Proses A B INPUT OUTPUT int float double int float double doube int float double doube Tipe output, mengambil tipe input yang jumlah Byte nya terpanjang

Proses dalam komputer : Semua variabel integer R = T / 3; T = A + B + C; A B konstanta T 75 + 70 int 3 int int 215 / int R C 145 + 70 int simpan int 71 71 int int T 215 simpan 215 int int Ini yang dicetak Karena T dan 3 kedua-duanya bertipe int, maka hasilny bertipe int A ditambah dengan B hasilnya = 145 145 ditambah dengan C hasilnya 215 , 215 disimpan ke T

float Bila R tipenya dibuat : float R = T / 3; T / 3 215 R 71.0 71 konstanta T / 3 215 int int R Karena R tipenya float, maka isinya 71.0 71.0 71 float int Ini yang dicetak Bila dicetak dengan format “ %f “ maka tercetak : 71.000000

Bila R tipenya dibuat : float Kalau formatnya tidak dinyatakan dengan bentuk lain , maka akan dicetak menurut format default yaitu 6 angka dibelakang titik decimal Format : %f Karena Tipe R adalah Floating Point float

double R = T / 3; Konstanta dibuat bertipe double Tapi R masih bertipe float double R = T / 3; T konstanta / Kalau konstanta dibuat menjadi 3.0 , maka oleh komputer Tipe datanya dinyatakan dalam Tipe double int 3.0 215 double R 71.666……. 71.666……… f l o a t double

float 4 ? Mengapa bukan 71.666667 3.0 7 ! ? Karena tipe float ketelitiannya masih rendah

R bertipe float Konstanta dibuat bertipe double %16.12 12 angka dibelakang titik decimal Tipe float ketelitiannya lebih rendah dibandingkan tipe double

R = T / 3; double Bila konstanta bertipe double dan R juga beripe : double R = T / 3; double konstanta T / 3.0 int 215 double R double 71.666……. 71.666……… double

Tipe double

Huruf el kecil 22 angka dibelakang titik decimal Tipe double lebih teliti dari tipe float 71.666664123535

Latihan di Kelas

Ambil Kertas Selembar Tulis N.I.M. dan Nama

kerjakan soal 5 menit kumpulkan

Soal Tugas Kelas 2.1 Susun algoritma yang ditulis dalam Bahasa C/C++, untuk mencetak Luas sebuah segitiga bila alas dan tinggi segitiga tersebut sudah diketahui yaitu : Alas = 7 dan Tinggi = 5.

Soal Tugas Kelas 2.1 Menghitung luas segitiga bila diketahui alas dan tinggi segitiga tersebut

Soal Tugas Kelas 2.1 Susun algoritma yang ditulis dalam Bahasa C/C++, untuk mencetak Luas sebuah segitiga bila diketahui Alas = 7 dan Tinggi = 5. ? printf 7 5 ? cout A T L A untuk Alas T untuk Tinggi, dan L untuk Luas

17.5 7 5 17.5 cout A T L A untuk Alas T untuk Tinggi, dan L untuk Luas

mengetahui : Rumus menghitung Luas sebuah Segitiga harus mengetahui : Rumus menghitung Luas sebuah Segitiga Kadang-kadang : Lebih sulit : Mencari , memahami dan menggunakan Rumus, dibandingkan menulis algoritma

dan konsep atau draf secara manual sudah dibuat algoritma dapat ditulis setelah persoalannya sudah dipahami dan konsep atau draf secara manual sudah dibuat

Yang harus BUKAN dipahami dan Dikuasai PERSOALAN sebelumnya MATEMATIKA RUMUS menghitung Luas sebuah segitiga : DALAM BEBERAPA HAL (KASUS), RUMUS TIDAK DIBERITAHUKAN LUAS = ALAS * TINGGI / 2 atau LUAS = (ALAS * TINGGI) / 2 PEMBUAT ALGORITMA HARUS MENGETAHUINYA SENDIRI atau LUAS = ALAS * ( TINGGI / 2) atau LUAS = ALAS * TINGGI * 0.5 TIDAK MENGETAHUI RUMUS TIDAK DAPAT MEMBUAT ALGORITMA atau LUAS = 0.5 * ALAS * TINGGI atau dan sebagainya yang valid

Draf KONSEP penyelesaian Alas Tinggi 7 5 Luas = Alas * Tinggi / 2 17.5

Program menghitung dan mencetak Luas Segitiga Algoritma yang ditulis dalam suatu Bahasa Pemrograman disebut PROGRAM menghitung dan mencetak Luas Segitiga

int C ? Cara-1 #include <stdio.h> void main() { int A, T, L; Program Flowchart #include <stdio.h> void main() { int A, T, L; A = 7; T = 5; L = A * T / 2; printf(“%i”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END Bagaimana bila menggunakan tipe data : int int int 7 5 ? int A T L integer

? C Tercetak : ? Cara-1 #include <stdio.h> void main() Program Flowchart #include <stdio.h> void main() { int A, T, L; A = 7; T = 5; L = A * T / 2; printf(“%i”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END ? Tercetak : int int int 7 5 ? A T L

17 C Tercetak : 17 Cara-1 #include <stdio.h> void main() Program Flowchart #include <stdio.h> void main() { int A, T, L; A = 7; T = 5; L = A * T / 2; printf(“%i”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END 17 Tercetak : int int int 7 5 17 A T L

Mengapa tercetak : 17 ? Seharusnya tercetak 17.5 Karena (7*5)/2 = 17.5

17 Karena variabel L tipenya int Tipe int hanya menyimpan nilai integer int 17 17,5 L

Tipe data yang dapat menampung nilai pecahan : float atau double

Tipe Data. Tipe data dasar (primitif) yang digunakan oleh Bahasa C. Sebutan Tipe Data Bentuk penulisan dalam Bahasa C Jumlah Byte yang diperlukan Jangkauan nilai numerik 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 1 2 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.4E38 positip atau negatip 1.7E-308 s.d. 1.7E308 3.4E-4932 s.d 1.1E4932

Kita coba pilih : float

17.00000 C Tercetak : #include <stdio.h> void main() { int A, T; Program Flowchart #include <stdio.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2; printf(“%f”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END Tercetak : 17.00000 int int float 7 5 17 A T L

Perhatikan : printf(“%f”, L); format untuk data bertipe float

Tercetak : 17.000000 Perhatikan : Dengan format standar, ( %f ) , nilai bertipe float akan dicetak dengan 6 angka dibelakang titik decimal

Mengapa masih tercetak : 17.000000 ? Padahal data ( L ) bertipe float, Seharusnya tercetak : 17.500000 ?

L = A * T / 2 ; Perhatikan : Ketiga-tiganya bertipe int Sehingga hasil perhitungan ini nilainya disimpan dalam bentuk int 17, bukan 17.5 Nilai dalam bentuk integer ini yang disimpan ke L

L = A * T / 2 ; Perhatikan : Salah satu bertipe float, maka hasil perhitungan disimpan dalam bentuk float

ganti L = A * T / 2.0 ; bentuk floating point double precision

? C Tercetak : ? #include <stdio.h> void main() { int A, T; Program Flowchart #include <stdio.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2.0; printf(“%f”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END ? Perhatikan : Untuk contoh ini, Algoritmanya sendiri, seperti terlihat dalam Flowchart, tidak terpengaruh oleh tipe data Tercetak : int int float 7 5 ? A T L

17.50000 Tercetak : #include <stdio.h> void main() { int A, T; Program Flowchart #include <stdio.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2.0; printf(“%f”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END Tercetak : 17.50000 int int float 7 5 17.5 A T L

Tercetak : 17.500000 printf(“%f”, L ); printf(“%5.2f”, L ); Perhatikan : Tercetak : 17.500000 ganti printf(“%f”, L ); menjadi : printf(“%5.2f”, L );

Tercetak : 17.50 printf(“%5.2f”, L ); dengan Dua angka dibelakang titik decimal

Tercetak : 17.50 printf(“%8.2f”, L ); dengan Dua angka dibelakang titik decimal ada 3 spasi

17.50000 Tercetak : #include <stdio.h> void main() { int A, T; Program Flowchart #include <stdio.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2.0; printf(“%f”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END Tercetak : 17.50000 int int float 7 5 17.5 A T L

17.50 Tercetak : #include <stdio.h> void main() { int A, T; Program Flowchart #include <stdio.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2.0; printf(“%5.2f”, L ); } START A = 7 T = 5 L = A * T / 2 printf L END Tercetak : 17.50 int int float 7 5 17.5 A T L

Untuk contoh ini, Lebih aman bila semua variabel bertipe float

17.50000 Tercetak : #include <stdio.h> void main() Program Flowchart #include <stdio.h> void main() { float A, T, L; A = 7; T = 5; L = A * T / 2.0; printf(“%f”, L ); } START A = 7 atau A = 7.0; T = 5 atau T = 5.0; L = A * T / 2 printf L END Tercetak : 17.50000 Perhatikan : Untuk contoh ini, Algoritmanya sendiri, seperti terlihat dalam Flowchart, tidak terpengaruh oleh tipe data float float float 7.0 5.0 17.5 A T L

17.50000 Tercetak : #include <stdio.h> void main() { float A, T, L; A = 7; T = 5; L = A * T / 2; printf(“%f”, L ); } atau A = 7.0; atau T = 5.0; Bukan 2.0 Tapi Mengapa mau tercetak 17.500000 Tercetak : 17.50000 float float float 7.0 5.0 17.5 A T L

Dengan C++

17.5 C++ Tercetak : #include <iostream.h> void main() Program Flowchart #include <iostream.h> void main() { int A, T; float L; A = 7; T = 5; L = A * T / 2.0; cout << L ; } START A = 7 T = 5 L = A * T / 2 cout L END Tercetak : 17.5 int int int 7 5 17.5 A T L

17.5 C++ Tercetak : #include <iostream.h> void main() Program Flowchart #include <iostream.h> void main() { float A, T, L; A = 7; T = 5; L = A * T / 2.0; cout << L ; } START A = 7 T = 5 L = A * T / 2 cout L END Tercetak : 17.5 float float float 7.0 5.0 17.5 A T L

17.500000 17.5 C C++ Tercetak : Tercetak : #include <stdio.h> void main() { float A, T, L; A = 7; T = 5; L = A * T / 2.0; printf(“%f”, L ); } #include <iostream.h> void main() { float A, T, L; A = 7; T = 5; L = A * T / 2.0; cout << L ; } Tercetak : 17.500000 Tercetak : 17.5

Soal Tugas Kelas 2.2 Susun algoritma yang ditulis dalam Bahasa C++, untuk menginput alas dan tinggi sebuah segitiga, kemudian mencetak luas segitiga tersebut. 7 5 ? cin 7 5 ? cout A T L A untuk Alas T untuk Tinggi, dan L untuk Luas

Soal Tugas Kelas 2.2 Susun algoritma yang ditulis dalam Bahasa C++, untuk menginput alas dan tinggi sebuah segitiga, kemudian mencetak luas segitiga tersebut. 7 5 17.5 cin 7 5 17.5 cout A T L A untuk Alas T untuk Tinggi, dan L untuk Luas

C Cara-1 #include <stdio.h> void main() { float A, T, L; Program Flowchart #include <stdio.h> void main() { float A, T, L; scanf(“%f”, &A); scanf(“%f”, & T); L = A * T / 2; printf(“%f”, L ); } START scanf A scanf T L = A * T / 2 printf L END Dua instruksi ini dapat digabung menjadi satu instruksi : Scanf(“%i %i”, &A, &B ); scanf A,T

C Cara-1 #include <stdio.h> void main() { int A, T, L; Program Flowchart #include <stdio.h> void main() { int A, T, L; scanf(“%i”, &A); scanf(“%i”, & T); L = A * T / 2; printf(“%i”, L ); } START scanf A scanf T L = A * T / 2 printf L END Dua instruksi ini dapat digabung menjadi satu instruksi : Scanf(“%i %i”, &A, &B ); scanf A,T

C++ Cara-1 #include <iostream.h> void main() { float A, T, L; Program Flowchart #include <iostream.h> void main() { float A, T, L; cin >> A; cin >> T; L = A * T / 2; cout << L; } START cin A cin T L = A * T / 2 cout L END Dua instruksi ini dapat digabung menjadi satu instruksi : cin >> A >> T; cin A,T

float C++ Cara-1 #include <iostream.h> void main() { float A, T, L; cin >> A; cin >> T; L = A * T / 2; cout << L; } 7 5 17.5 Menulis program, memerlukan pengtahuan mengenai : Karena ada kemungkinan mengandung nilai pecahan, maka digunakan tipe data : BAHASA Pemograman yang digunakan float Floating point Single Precission

C++ Cara-1 #include <iostream.h> void main() { float A, T, L; cin >> A; cin >> T; L = A * T / 2; cout << L; } 12 6 30 Walaupun tipe data : float Tapi tercetak bukan : 30.0

#include <iostream.h> void main() { float A,T, L; cout << " Alas : " ; cin >> A; cout << " Tinggi : " ; cin >> T; L = A * T / 2; cout << " Luas : " << L; } Alas : 7 Tinggi : 5 Luas : 17.5 Atau : #include <iostream.h> void main() { float A,T, L; cout << " Alas : " ; cin >> A; cout << " Tinggi : " ; cin >> T; L = A * T / 2; cout << " Luas : " << L; }

menginput suhu dalam Celcius di konversi ke suhu dalam Fahrenheit Bersambung ke : 02.2 Soal Tugas Kelas 2.3 menginput suhu dalam Celcius dan di konversi ke suhu dalam Fahrenheit