Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

02.1 Hari-2.

Presentasi serupa


Presentasi berjudul: "02.1 Hari-2."— Transcript presentasi:

1 02.1 Hari-2

2 Kumpulkan PR

3

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

5 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

6

7 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 A B C KEYBOARD printf 71.66… R cout SCREEN MEMORY

8 #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 : ? Bukankah seharusnya : Matematika : 75 Fisika : 70 Kimia : 70 Rata-Rata = 71 Karena variabel R tipenya int (integer) yang hanya menampung nilai integer (bilangan bulat) nya saja

9 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;

10 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

11 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

12

13 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 :

14 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

15 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

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

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

18 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

19 Tipe double

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

21

22 Latihan di Kelas

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

24 kerjakan soal 5 menit kumpulkan

25 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.

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

27 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

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

29 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

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

31 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

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

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

34 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

35 ? 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

36 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

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

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

39 Tipe data yang dapat menampung nilai pecahan :
float atau double

40 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 s.d 0 s.d s.d 0 s.d 3.4E-38 s.d. 3.4E38 positip atau negatip 1.7E-308 s.d. 1.7E308 3.4E s.d 1.1E4932

41 Kita coba pilih : float

42 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 : int int float 7 5 17 A T L

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

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

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

46 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

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

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

49 ? 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

50 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 : int int float 7 5 17.5 A T L

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

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

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

54 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 : int int float 7 5 17.5 A T L

55 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

56

57 Untuk contoh ini, Lebih aman bila semua variabel bertipe float

58 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 : 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

59 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 Tercetak : float float float 7.0 5.0 17.5 A T L

60 Dengan C++

61 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

62 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

63 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 : Tercetak : 17.5

64

65 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

66 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

67 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

68 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

69 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

70 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

71 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

72 #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; }

73

74 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


Download ppt "02.1 Hari-2."

Presentasi serupa


Iklan oleh Google