Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

21
8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ] http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 1/21 1 PRAKTIKUM 3 Tipe Data dan Variabel A.  Dasar Teori Data berdasarkan jenisnya dibagi menjadi lima kelompok, yang dinamakan sebagai tipe data dasar. Kelima tipe data dasar adalah: 1. Bilangan bulat (integer) 2. Bilangan real presisi-tunggal 3. Bilangan real presisi-ganda 4. Karakter 5. Tak-bertipe (void) Kata-kunci yang berkaitan dengan tipe data dasar secara berurutan di antaranya adalah int (short int, long int, signed int dan unsigned int), float, double, dan char. Berikut tabel informasi mengenai ukuran memori yang diperlukan dan kawasan dari masing-masing tipe data dasar. Tipe Total bit Kawasan Keterangan char 8 -128 s/d 127 Karakter Int 32 -2147483648 s/d 2147483647 Bilangan integer float 32 1.7E-38 s/d 3.4E+38 Bilangan real presisi-tunggal Double 64 2.2E-308 s/d 1.7E+308 Bilangan real presisi ganda Variabel Aturan penulisan pengenal untuk sebuah variabel, konstanta atau fungsi yang didefinisikan oleh pemrogram adalah sebagai berikut : 1. Pengenal harus diawali dengan huruf (A..Z, a..z) atau karakter garis bawah ( _ ). 2. Selanjutnya dapat berupa huruf, digit (0..9) atau karakter garis bawah atau tanda dollar ($). 3. Panjang pengenal boleh lebih dari 31 karakter, tetapi hanya 31 karakter pertama yang akan dianggap berarti. 4. Pengenal tidak boleh menggunakan nama yang tergolong sebagai kata -kata cadangan (reserved words) seperti int, if, while dan sebagainya. Konstanta 1. Konstanta menyatakan nilai yang tetap. Penulisan konstanta mempunyai aturan tersendiri, sesuai dengan tipe masing-masing.

Transcript of Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

Page 1: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 1/21

1

PRAKTIKUM 3

Tipe Data dan Variabel

A. 

Dasar TeoriData berdasarkan jenisnya dibagi menjadi lima kelompok, yang dinamakan sebagai

tipe data dasar. Kelima tipe data dasar adalah:

1.  Bilangan bulat (integer)

2.  Bilangan real presisi-tunggal

3.  Bilangan real presisi-ganda

4.  Karakter

5.  Tak-bertipe (void)

Kata-kunci yang berkaitan dengan tipe data dasar secara berurutan di antaranya

adalah int (short int, long int, signed int dan unsigned int), float, double, dan char. Berikut

tabel informasi mengenai ukuran memori yang diperlukan dan kawasan dari masing-masing

tipe data dasar.

Tipe Total bit Kawasan Keterangan

char 8 -128 s/d 127 Karakter

Int 32 -2147483648 s/d 2147483647 Bilangan integer

float 32 1.7E-38 s/d 3.4E+38 Bilangan real presisi-tunggal

Double 64 2.2E-308 s/d 1.7E+308 Bilangan real presisi ganda

Variabel

Aturan penulisan pengenal untuk sebuah variabel, konstanta atau fungsi yang

didefinisikan oleh pemrogram adalah sebagai berikut :

1.  Pengenal harus diawali dengan huruf (A..Z, a..z) atau karakter garis bawah ( _ ).

2.  Selanjutnya dapat berupa huruf, digit (0..9) atau karakter garis bawah atau tanda

dollar ($).

3.  Panjang pengenal boleh lebih dari 31 karakter, tetapi hanya 31 karakter pertama yang

akan dianggap berarti.

4.  Pengenal tidak boleh menggunakan nama yang tergolong sebagai kata -kata cadangan

(reserved words) seperti int, if, while dan sebagainya.

Konstanta

1.  Konstanta menyatakan nilai yang tetap. Penulisan konstanta mempunyai aturan

tersendiri, sesuai dengan tipe masing-masing.

Page 2: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 2/21

2

2.  Konstanta karakter misalnya ditulis dengan diawali dan diakhiri dengan tanda petik

tunggal, contohnya : ‘A’ dan ‘@’.

3.  Konstanta integer ditulis dengan tanda mengandung pemisah ribuan dan tak

mengandung bagian pecahan, contohnya : – 1 dan 32767.

4. 

Konstanta real (float dan double) bisa mengandung pecahan (dengan tanda berupa titik)dan nilainya bisa ditulis dalam bentuk eksponensial (menggunakan tanda e), contohnya :

27.5f (untuk tipe float) atau 27.5 (untuk tipe double) dan 2.1e+5 (maksudnya 2,1 x 105).

5.  Konstanta string merupakan deretan karakter yang diawali dan diakhiri dengan tanda

 petik-ganda (“), contohnya :“Pemrograman Dasar C”. 

Operator Aritmatika

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah :

* perkalian

/ pembagian

% sisa pembagian

+ penjumlahan

- pengurangan

Page 3: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 3/21

3

START

READ

dollar

PRINT

rupiah

rupiah = dolar * kurs

END

kurs =11.090

B. 

Tugas Pendahuluan

Tuliskan desain algoritma dan flowchart untuk soal-soal di bawah ini :

1.  Melakukan konversi valuta asing, misalnya mata uang dolar US ke mata uang Rupiah

dimana satu dolar sama dengan Rp 11.090

- Input : uang dalam US dolar

- Proses : uang_rupiah = uang_dolar * 11090

-  Output : uang rupiah

a.  Algoritma

Deklarasikan dolar, rupiah, dan kurs

sebagai bilangan bulat.

1. 

Baca nilai uang dalam US Dollar

dan tampung ke variabel dolar

2.  Kalikan dolar dengan kurs dan

tampung hasilnya ke variabel

rupiah

3.  Tampilkan isi dari variabel rupiah

 b. Flowchart

2.  Menentukan banyaknya uang pecahan yang

dibutuhkan, urut dari pecahan terbesar

(100000,50000,20000,10000,5000,2000,1000)

Input : jumlah uang dalam rupiah (misal : 189000)

Proses : ratusanribu = jml_uang dibagi 100000

Sisa = jml_uang –  (ratusanribu*100000)

limaplhribu = sisa dibagi 50000

sisa = sisa –  (limaplhribu*50000)

dan seterusnya.

Output : 1 Lembar 100000

1 Lembar 50000

1 Lembar 20000

1 Lembar 10000

1 Lembar 5000

2 Lembar 2000

Page 4: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 4/21

4

a.  Algoritma

Deklarasikan uang, lbr100, lbr50, lbr20, lbr20, lbr10,

lbr5, lbr5, lbr2, lbr1 dan sisa sebagai bilangan bulat.

1. 

Baca jumlah uang, kemudian tampung di variabeluang.

2.  Bagi uang dengan 100000, kemudian tampung

hasilnya di variabel lbr100 

3.  Cari sisa bagi uang dengan 100000, kemudian

tampung hasilnya di variabel sisa 

4.  Bagi sisa dengan 50000, kemudian tampung hasilnya

di variabel lbr50 

5. 

Cari sisa bagi uang dengan 50000, kemudian

tampung hasilnya di variabel sisa 

6.  Bagi sisa dengan 50000, kemudian tampung hasilnya

di variabel lbr20 

7.  Cari sisa bagi uang dengan 20000, kemudian

tampung hasilnya di variabel sisa 

8.  Bagi sisa dengan 50000, kemudian tampung hasilnya

di variabel lbr10 

9.  Cari sisa bagi uang dengan 10000, kemudian

tampung hasilnya di variabel sisa 

10. Bagi sisa dengan 50000, kemudian tampung hasilnya

di variabel lbr5 

11. Cari sisa bagi uang dengan 5000, kemudian tampung

hasilnya di variabel sisa 

12. Bagi sisa dengan 50000, kemudian tampung hasilnya di variabel lbr2 

13. Cari sisa bagi uang dengan 2000, kemudian tampung hasilnya di variabel sisa 

14. Bagi sisa dengan 50000, kemudian tampung hasilnya di variabel lbr1 

15. Cari sisa bagi uang dengan 1000, kemudian tampung hasilnya di variabel sisa 

16. Tampilkan jumlah lembar seratusan ribu yaitu lbr100 

17. Tampilkan jumlah lembar lima puluhan ribu yaitu lbr50 

18. Tampilkan jumlah lembar tiga puluhan ribu yaitu lbr30 

19. Tampilkan jumlah lembar dua puluhan ribu yaitu lbr20 

20. 

Tampilkan jumlah lembar sepuluhan ribu yaitu lbr10 

21. Tampilkan jumlah lembar lima ribuan yaitu lbr5 

22. Tampilkan jumlah lembar dua ribuan yaitu lbr2 

23. Tampilkan jumlah lembar seribuan yaitu lbr1 

START

READ

uang

PRINT

lbr100,

lbr50,lbr20,

lbr10,

lbr5,

lbr2,

lbr1

l br100 = uang / 100000

sisa = uang % 100000

lbr50 = sisa / 50000

sisa = sisa % 50000

lbr20 = sisa / 20000

sisa = sisa % 20000

lbr10 = sisa / 10000

sisa = sisa % 10000

lbr5 = sisa / 5000

isa = sisa % 5000

lbr2 = sisa / 2000

sisa = sisa % 2000

lbr1 = sisa / 1000

sisa = sisa % 1000

END

 b. Flowchart

Page 5: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 5/21

5

3.  Diketahui variabel-variabel sebagai berikut: int a = 12, b = 2, c = 3, d = 4;

Buat program untuk mencetak hasil :

a % b

a - c

a + b

a / d

a / d * d + a % d

a % d / d * a –  c

a.  Algoritma

1.  Deklarasikan a, b dan c sebagai

 bilangan bulat dengan nilai a=12,

 b =2, c=3 , d=4

2.  Lakukan perhitungan sesuai

rumus :

a % b

a - c

a + b

a / d

a / d * d + a % d

a % d / d * a –  c

3.  Tampilkan seluruh hasil operasi di

atas.

 b.  Flowchart

4.  Buatlah program untuk menghitung Diskriman dari sebuah persamaan kuadrat dengan

nilai a, b dan c yang diinputkan.

a. 

Algoritma

Deklarasikan a, b, c, d sebagai bilangan bulat.

1.  Baca nilai a dan tampung ke variabel a

2.  Baca nilai a dan tampung ke variabel b

3.  Baca nilai a dan tampung ke variabel c

4.  Hitung diskriminan dengan melakukan

 perhitungan sesuai rumus b * b –  4 * a * c, dan

tampung hasilnya di variabel d

5.  Tampilkan isi dari variabel d

PRINT

s1, s2, s3,s4, s5, s6

s1= a % b

s2 = a - c

s3 = a + b

s4 = a / d

s5 = a / d * d + a % d

s6 = a % d / d * a  –  c

END

a = 12

b = 2

c = 3

d = 4 

START

START

READ

a, b, c

PRINTd

d = b * b  –  4 * a * c

END

Page 6: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 6/21

6

5.  Kerjakan soal no 4 dan 5 dengan mengubah tipe datanya menjadi float.

5a)

a.  Algoritma

5. 

Deklarasikan a, b dan c sebagai bilangan pecahan float dengan

nilai a=12, b =2, c=3 , d=4

6.  Lakukan perhitungan sesuai

rumus :

a % b

a - c

a + b

a / d

a / d * d + a % d

a % d / d * a –  c

7.  Tampilkan seluruh hasil operasi di

atas.

 b.  Flowchart

5b)

a.  Algoritma

Deklarasikan a, b, c, d sebagai

 bilangan pecahan float.

6. 

Baca nilai a dan tampung ke

variabel a

7.  Baca nilai a dan tampung ke

variabel b

8.  Baca nilai a dan tampung ke

variabel c

9.  Hitung diskriminan dengan

melakukan perhitungan sesuai

rumus b * b –  4 * a * c, dan

tampung hasilnya di variabel d

 b. Flowchart 

PRINTs1, s2, s3,

s4, s5, s6

s1= a % b

s2 = a - c

s3 = a + b

s4 = a / d

s5 = a / d * d + a % d

s6 = a % d / d * a  –  c

END

a = 12

b = 2

c = 3

d = 4 

START

START

READ

a, b, c

PRINT

d

d = b * b –  4 * a * c

END

Page 7: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 7/21

7

C. 

Percobaan

1.  Mengkonversi dolar ke rupiah

a.   Listing Program

#include <stdio.h>#define KURS 11090main(){

int dolar, rupiah;printf("\nPRAKTIKUM 3 SOAL 1 \nRENDRA BUDI HUTAMA

\n2110131036 - 1D4ITB\n");printf("\n===================================================

=========================== \n\n");printf("Masukkan nilai uang dalam dolar : ");scanf("%d",&dolar);

rupiah = dolar * KURS;

printf("\n$%d = Rp.%d",dolar,rupiah);printf("\n\n");

getch();}

b.  Capture Program

 

c.   Analisis

Tipe variabel yang cocok untuk operasi pada program diatas adalah int(angka)

karena dengan tipe data integer memungkinkan kita untuk melakukan operasi

aritmatika mulai dari penjumlahan, pengurangan, perkalian dan penjumlahan.

2.  Menentukan jumlah lembar uang yang dibutuhkan.

a.   Listing Program 

#include <stdio.h>#define KURS 11090main(){

int uang, sisa, lbr100, lbr50, lbr20, lbr10, lbr5, lbr2,lbr1;

printf("\nPRAKTIKUM 3 SOAL 2 \nRENDRA BUDI HUTAMA\n2110131036 - 1D4ITB\n");

printf("\n============================================================================== \n\n");

printf("Masukkan jumlah uang : ");scanf("%d",&uang);

lbr100 = uang / 100000;sisa = uang % 100000;lbr50 = sisa / 50000;sisa = sisa % 50000;lbr20 = sisa / 20000;sisa = sisa % 20000;

Page 8: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 8/21

8

lbr10 = sisa / 10000;sisa = sisa % 10000;lbr5 = sisa / 5000;sisa = sisa % 5000;lbr2 = sisa / 2000;sisa = sisa % 2000;lbr1 = sisa / 1000;sisa = sisa % 1000;

printf("\n %d seratus ribuan",lbr100);printf("\n %d lima puluh ribuan",lbr50);printf("\n %d dua puluh ribuan",lbr20);printf("\n %d sepuluh ribuan",lbr10);printf("\n %d lima ribuan",lbr5);printf("\n %d dua ribuan",lbr2);printf("\n %d seribuan",lbr1);

printf("\n\n");

getch();}

b. 

Capture Program 

c.  Analisis

Operasi Pembagian bilangan integer akan menghasilkan bilangan utuh(dibulatkan

ke bawah) apabila sisa bagi tidak sama dengan 0. Sedangkan untuk mendapatkan

nilai sisa itu sendiri, kita dapat menggunakan operator % (modulus).

3.  Melakukan operasi aritmatika sederhana

a.   Listing Program

#include <stdio.h>main(){

int a=12, b=2 , c=3, d=4;int s1, s2, s3, s4, s5, s6;printf("\nPRAKTIKUM 3 SOAL 3 \nRENDRA BUDI HUTAMA

\n2110131036 - 1D4ITB\n");printf("\n===================================================

=========================== \n\n");

s1 = a % b;s2 = a - c;s3 = a + b;s4 = a / d ;s5 = a / d * d + a % d;s6 = a % d / d * a - c;printf("%d %% %d = %d \n", a, b, s1);printf("%d - %d = %d \n", a, b, s2);printf("%d + %d = %d \n", a, b, s3);printf("%d / %d = %d \n", a, b, s4);printf("%d / %d * %d + %d %% %d = %d \n", a, d, d, a, d, s5);printf("%d / %d * %d + %d %% %d = %d \n", a, d, d, a, d, s5);

getch();

Page 9: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 9/21

9

}

 b.  Capture Program 

c.  Analisis

Di dalam bahasa C terdapat banyak operator yang bisa digunakan untuk berbagai

 perhitungan aritmatika.Operator yang biasa digunakan adalah + , - , * , / dan %. Setiap

operator memiliki prioritas yang menentukan urutan eksekusi tiap operator. Misalnya

operator * dan / akan dikerjakan lebih dahulu dibandingkan operator + dan -.

4.  Menghitung nilai Diskriminan

a.   Listing Program 

#include <stdio.h>main(){int a, b, c , d;printf("\nPRAKTIKUM 3 SOAL 4 \nRENDRA BUDI HUTAMA \n2110131036 -1D4ITB\n");printf("\n============================================================================== \n\n");printf("Masukkan nilai a : ");scanf("%d",&a);printf("Masukkan nilai b : ");scanf("%d",&b);printf("Masukkan nilai c : ");scanf("%d",&c);

d = b * b - 4 * a * c;

printf("\nDiskriminannya adalah : %d", d);

getch();}

 b.  Capture Program 

Page 10: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 10/21

10

c.  Analisis

Untuk menghitung nilai diskriminan, diperlukan 3 buah variabel dengan tipe

 bilangan bulat. Kemudian ketiga variabel tersebut diproses sesuai rumus diskriminan

yaitu b2-4ac

5.  1. Melakukan operasi aritmatika sederhana dengan tipe bilangan Float

a.   Listing Program

#include <stdio.h>

main(){

float a=12, b=2 , c=3, d=4;float s2, s3, s4;printf("\nPRAKTIKUM 3 SOAL 5a \nRENDRA BUDI HUTAMA

\n2110131036 - 1D4ITB\n");printf("\n===================================================

=========================== \n\n");

s2 = a - c;s3 = a + b;s4 = a / d ;

printf("%.2f - %.2f = %.2f \n", a, b, s2);printf("%.2f + %.2f = %.2f \n", a, b, s3);printf("%.2f / %.2f = %.2f \n", a, b, s4);

getch();

}

 b.  Capture Program 

c.  Analisis

Untuk bilangan pecahan(float), tidak bisa  menggunkan operator modulus. Terbukti

untuk aritmatika no 1, 5 dan 6 yang menggunakan operator modulu, ketika program

dieksekusi terjadi error, namun ketika operasi aritmatika tersebut dihapus, program dapat

dieksekusi.

5. 

2. Menghitung nilai Diskriminan dengan tipe data float

a.   Listing Program 

#include <stdio.h>main(){float a, b, c , d;printf("\nPRAKTIKUM 3 SOAL 4 \nRENDRA BUDI HUTAMA \n2110131036 -1D4ITB\n");

Page 11: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 11/21

11

printf("\n============================================================================== \n\n");printf("Masukkan nilai a : ");scanf("%d",&a);printf("Masukkan nilai b : ");scanf("%d",&b);printf("Masukkan nilai c : ");scanf("%d",&c);

d = b * b - 4 * a * c;

printf("\nDiskriminannya adalah : %d", d);

getch();}

 b.  Capture Program 

Kesimpulan Percobaan

1.  Di dalam bahas C, terdapat berbagai tipe data yang dapat digunakan. Setiap tipe

data memiliki karakteristik dan ukuran tersendiri sehingga pemilihan tipe data yang

 benar sangatlah penting.

2.  Variabel adalah sebuah pengenal yang nilainya dapat berubah-ubah sedangkan

konstanta adalah sebuah pengenal yang nilainya selalu tetap.

3.  Untuk mencetak tampilan ke layar, kita bisa menggunakan fungsi  printf()  dan

 putchar()  sedangkan untuk mendapatkan inputan nilai bisa menggunakan fungsi

 scanf() dan getchar() 

Hirarki Operator Aritmatika

Page 12: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 12/21

12

Soal Tambahan Laporan Resmi

a. Berapakah hasil akhir dari program berikut :

#include <stdio.h>

main()

{

int a = 22;

a = a + 5;

a = a-2;

printf("a = %d\n", a);

}

Jawab :

Hasil akhir dari program tersebut adalah “a = 25” 

 b. Berapakah nilai x setelah pernyataan-pernyataan berikut dijalankan, apabila x

 bertipe int :

(1) x = (2 + 3) –  10 * 2;

(2) x = (2 + 3) –  (10 * 2);

(3) x = 10 % 3 * 2 + 1;

Jawab:

(1) x = (2 + 3) –  10 * 2;

x = 5 –  20

x = 15

(2) x = (2 + 3) –  10 * 2

x = 5 –  20

x = 15

(3) x = 10 % 3 * 2 + 1

x = 1 * 2 + 1

x = 3 + 1

x = 4

c. Nyatakan dalam bentuk pernyataan :

Jawab:

(1) 

y = b * x * x + 0.5 * x –  c

(2) y = (0.3 * x * z) / (2 * a)

d. Apa hasil eksekusi dari program berikut :

#include <stdio.h>

main()

{

char kar = ‘A’; 

kar = kar + 32;

printf("%c\n",kar);

}

Jawab :

Hasil dari eksekusi program diatas adalah “a”. Karakter “A” memiliki bilangan ANSI

65 dimana jika dengan 32 hasilnya adalah 97 yang merupakan ANSI dari “a” 

Page 13: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 13/21

13

PRAKTIKUM 4

Operasi Input dan Output

A. 

Dasar TeoriUntuk keperluan menampilkan data/informasi, C menyediakan sejumlah fungsi.

Beberapa di antaranya adalah berupa printf(),  putchar(), dan puts().

a.  Fungsi putchar()

Fungsi putchar() digunakan khusus untuk menampilkan sebuah karakter di layar.

Penampilan karakter tidak diakhiri dengan perpindahan baris. Contoh :

putchar(‘A’); 

menghasilkan keluaran yang sama dengan

printf(“%c”,’A’); 

 b.  Fungsi printf()

Bentuk umum pernyataan printf() :

printf(“string kontrol”,argumen1, argumen2,...); 

String kontrol dapat berupa keterangan yang akan ditampilkan pada layar beserta

 penentu format (seperti %d, %f,%c). Penentu format dipakai untuk memberi tahu kompiler

mengenai jenis data yang akan ditampilkan. Argumen sesudah string control

argumen1, argumen2,...) adalah data yang akan ditampilkan ke layar. Argumen ini dapat

 berupa variabel, konstanta dan bahkan ungkapan. Misal :

printf(“%d”,20);  //argumen berupa konstanta

printf(“%d”,a); //argumen berupa variabel

printf(“%d”,a+20); //argumen berupa ungkapan

Tabel 4.1 Penentu format pada printf()

Page 14: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 14/21

14

c.  Fungsi getchar()

Fungsi getchar() digunakan khusus untuk menerima masukan berupa sebuah karakter

dari keyboard. Contoh :

c = getchar();

maka variabel c akan berisi karakter yang diketikkan oleh user atau EOF (end of file) jika

ditemui akhir dari file. Selain fungsi scanf() dan getchar() adalagi fungsi l ain untuk

menginputkan untuk sebaris karakter yaitu fungsi puts().

d.  Fungsi scanf()

Fungsi ini digunakan untuk memasukkan berbagai jenis data. Misalnya untuk

memasukkan data jari-jari lingkaran pada program menghitung luas lingkaran.

scanf(“%f”,&radius); 

Bentuk scanf() sesungguhnya menyerupai fungsi printf(). Fungsi ini melibatkan

 penentu format yang pada dasarnya sama digunakan pada printf(). Secara umum

 bentuk scanf() adalah sebagai berikut :

scanf(“string kontrol”, daftar_argumen); 

Dengan string kontrol dapat berupa :

  Penentu format

  Karakter spasi-putih (white-space)

  Karakter bukan spasi-putih

scanf(“%f”, &radius); 

 berarti (bagi komputer) : “bacalah sebuah bilangan real (%f) dan tempatkan ke

alamat dari radius (&radius)”. 

Untuk menentukan panjang medan yang disediakan bagi tampilan data, maka sesudah

tanda % dalam penentu format dapat disisipi dengan bilangan bulat yang menyatakan

 panjang medan. Untuk data yang berupa bilangan bulat, misal pada :printf(“Abad %4d”, 20); 

%4d menyatakan medan untuk menampilkan bilangan 20 adalah sepanjang 4 karakter.

Untuk data yang berupa bilangan real, spesifikasi medannya berupa

m = panjang medan

n = jumlah digit pecahan

Contoh pada pernyataan :

printf(“Harga : Rp %8.2f\n”, 500.0); 

%8.2f menyatakan panjang medan dari bilangan real yang akan ditampilkan adalah 8

karakter dengan jumlah digit pecahan 2 buah.

Page 15: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 15/21

15

Kalau hanya jumlah digit pecahan yang perlu ditentukan, panjang medan tak perlu

disertakan, misal :

printf(“%.2f\n”, 600.0); 

printf(“%.2f\n”, 7500.25); 

hasilnya :

600.00

7500.25

Untuk data yang berupa string, contoh :

printf(“%12s”, “Bahasa C”); 

maka akan ditampilkan sebagai berikut

Tampak dalam berbagai jenis data di atas, penentu format yang mengandung panjang

medan, secara default akan menampilkan data dalam bentuk rata kanan terhadap

 panjang medan yang diberikan. Untuk data string yang biasanya dikehendaki untuk

ditampilkan dalam bentuk rata kiri, maka sesudah tanda % pada penentu format %s perlu

disisipkan tanda –  (minus), contoh :

printf(“%-12s”, “Bahasa C”); 

menyatakan bahwa string akan ditampilkan dalam medan dengan panjang 12 karakter dan

diatur rata kiri. Sehingga tampilan di atas berubah menjadi :

Page 16: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 16/21

16

B. 

Tugas Pendahuluan

Tuliskan desain algoritma dan flowchart untuk soal-soal di bawah ini :

1. Buatlah program untuk mengkonversi suhu dari Celcius ke Fahrenheit dengan rumus

F = C * 1.8 + 32

Input : suhu dalam Celcius

Output : suhu dalam Fahrenheit

Jawab :

a. Algoritma 

Deklarasikan f dan c sebagai bilangan

 pecahan float.

1. 

Baca nilai suhu dalam celcius

kemudian tampung di variabel c.

2.  Kalikan c dengan 1.8 kemudian

tambahkan dengan 32, tampung

hasilnya di f  

3.  Tampilkan f  di layar 

 b. Flowchart

2. Buatlah program untuk menghitung total pendapatan bulanan seorang karyawan

dengan ketentuan sebagai berikut:

  Tunjangan istri/suami = 10% dari gaji pokok

  Tunjangan anak = 5% dari gaji pokok untuk setiap anak

  THR = Rp 5000 kali masa kerja (tahun)

  (-) Pajak = 15% dari gaji pokok, tunjangan istri & anak

  Bantuan transport = Rp 3000 kali masuk kerja (hari)

  (-) Polis asuransi = Rp 20000

tanda (-) artinya mengurangi pendapatan.

Tentukan dahulu apa-apa saja yang akan menjadi input dan output (ke layar) dari

 program. Tentukan juga variabel-variabel yang akan digunakan beserta tipenya.

INPUT  : gajipokok, masakerja, harikerja, jumlahanak

OUTPUT :  gajitotal

VARIABEL  :

-  gajipokok (int) 

maskerja (short int) 

-  harikerja (short int) 

 jumlahanak (short int) 

-  tunjanganistri (int) 

tunjangananak (int) 

-  tunjanganraya (int) 

transport (int) 

-   pajak (int) 

asuransi (int) 

-  gajitotal (int) 

START

READc

f = c * 1,8 + 32

PRINTf

END

Page 17: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 17/21

17

a.  Algoritma

1.  Baca nilai gajipokok , masakerja,

harikerja, dan jumlahanak  

2.  Hitung tunjanganistri dengan cara

mengalikan gajipokok  dengan 0,13.  Hitung tunjangananak  dengan cara

mengalikan gaji pokok dengan 0.05

(5%) dan jumlahanak  

4.  Hitung tunjanganraya(THR)

dengan cara mengalikan masa kerja

dengan Rp. 5000

5.  Hitung transport(Bantuan

Transport) dengan cara mengalikan

harikerja dengan Rp. 3000

6.  Hitung pajak  dengan cara

mengalikan 0.15(15%) dengan

 jumlah gajipokok  ditambah 

tunjangananak  dan tunjanganistri 

7.  Hitung totalgaji yang dibawa

 pulang yaitu gajipokok  +

tunjangananak  + tunjanganistri +

tunjanganraya + transport  –  

pajak   –  asuransi 

8.  Tampilkan totalgaji ke layar

 b.  Flowchart

3. Harga tiket pertandingan sepak bola, Rp 50.000,-. Bila membeli dua tiket (seharga Rp

100.000,-), maka ada bonus 1 tiket gratis. Buatlah program untuk menghitung biayayang harus dibayar untuk sejumlah tiket yang diperlukan (diinputkan).

a.  Algoritma

1.  Baca jumlah tiket yang akan dibeli

2.  Hitung jumlahpaket “beli 2 gratis 1” yang

memungkinkan dengan cara membagi jumlahtiket

dengan angka 3

3.  Hitung sisatiket yang harus dibayar utuh dengan

cara modulus jumlahtiket dengan angka 3

4.  Hitung total uang yang harus dibayar yaitu dengan

rumus :

 jumlahpaket * 100000 + sisatiket * 50000

5.  Tampilkan hasil dar perhitungan tadi

asuransi =

20000

START

READ

gajipokok,masakerja,arikerja,jumlahanak

tunjanganistri = 0.10 * gajipokok

tunjangananak = 0.05 * gajipokok *

jumlahanak

tunjanganraya = masakerja * 3000

transport = harikerja * 5000

 pajak = gajipokok + tunjangananak+ tunjanganistri * 0.15

totalgaji = gajipokok + tunjangananak

+ tunjanganistri + tunjanganraya +

transport – pajak – asuransi

PRINTtotalgaji

END

START

READjumlahtiket

jumlahpaket = Sjumlahtiket / 3sisatiket = jumlahtiket % 3

 bayar = jumlahpaket * 100000 +sisatiket * 50000

PRINTf

END

 b. Flowchart

Page 18: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 18/21

18

C. 

Percobaan

1.  Program untuk mengkonversi suhu dari Celcius ke Fahrenheit

a.   Listing program 

#include <stdio.h>

main(){

float c, f;printf("\nPRAKTIKUM 4 SOAL 1 \nRENDRA BUDI HUTAMA

\n2110131036 - 1D4ITB\n");printf("\n===================================================

=========================== \n\n");

printf("Masukkan suhu dalam Celcius : ");scanf("%f",&c);f = c * 1.8 + 32;printf("\n%.2f Celcius = %.2f\n", c, f);

getch();}

 b.  Capture Program

c.  Analisis

Untuk mengkonversi suhu dari Celcius ke Fahrenheit, digunakanlah data

 bertipe float agar dapat diketahui presisi yang tepat tiap termometer.

2.  Program untuk menghitung gaji yang dibawa pulang

a.   Listing Program

#include <stdio.h>main(){

float jumlah_anak,g_pokok,g_total,t_istri, t_anak, t_raya,transport, pajak, asuransi = 20000, masa_kerja, hari_kerja;

printf("\nPRAKTIKUM 4 SOAL 2 \nRENDRA BUDI HUTAMA\n2110131036 - 1D4ITB\n");

printf("\n============================================================================== \n\n");

printf("Masukkan gaji pokok \t\t = Rp. ");

scanf("%f",&g_pokok);printf("Masukkan masa kerja(tahun) \t = ");scanf("%f",&masa_kerja);printf("Masukkan jumlah hari kerja \t = ");scanf("%f",&hari_kerja);printf("Masukkan jumlah anak \t\t = ");scanf("%f",&jumlah_anak);

t_anak = 0.05 * jumlah_anak * g_pokok;t_istri = 0.10 * g_pokok;t_raya = 5000 * masa_kerja;

Page 19: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 19/21

19

transport = 3000 * hari_kerja;pajak = 0.15 * (g_pokok + t_anak + t_istri);g_total = g_pokok + t_anak + t_istri + t_raya - pajak -

asuransi;

printf("\nJumlah Tunjangan yang diterima \t\t= Rp. %.2f",t_anak + t_istri + t_raya + transport);

printf("\nPotong gaji untuk pajak dan asuransi \t= Rp.

%.2f",pajak + asuransi);printf("\nJumlah gaji yang dibawa pulang \t\t= Rp.

%.2f",g_total);

getch();}

 b.  Capture Program

c.  Analisis

Tipe data yang cocok digunakan untuk program ini adalah tipe data float karena

di dalam program ini memerlukan perkalian secara prosentase misalnya dalam

menentukan tunjangan istri kita perlu mengalikan gaji pokok dengan bilangan

 pecahan 0.1 atau 10 / 100. Jika menggunakan int atau bilangan bulat, hasilnya

akan kurang akurat karena akan dibulatkan ke bawah di setiap pembagian.

3.  Program penghitung biaya pembayaran tiket

a.   Listing Program

#include <stdio.h>main(){int jum_tiket, jum_paket, jum_utuh, bayar;

printf("\nPRAKTIKUM 4 SOAL 3 \nRENDRA BUDI HUTAMA\n2110131036 - 1D4ITB\n");printf("\n===================================================

=========================== \n\n");

printf("Masukkan jumlah tiket \t = ");scanf("%d",&jum_tiket);

jum_paket = jum_tiket / 3;jum_utuh = jum_tiket % 3;

bayar = jum_paket * 100000 + jum_utuh * 50000;

printf("\nTotal pembayaran \t = Rp. %d", bayar);

getch();}

Page 20: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 20/21

20

 b.  Capture Program

c.  Analisis

Operator “/” apabila dikenakan ke bilangan bulat(int) maka hanya akanmemunculkan hasil pembagian utuh dengan pemulatan ke bawah tanpa angkadibelakang koma.

Kesimpulan Percobaan :

1.  Untuk mencetak tampilan ke layar, kita bisa menggunakan fungsi  printf(),  puts() 

dan putchar() sedangkan untuk mendapatkan inputan nilai bisa menggunakan fungsi

 scanf() dan getchar(). 

2.  Fungsi printf() atau print format memungkinkan kita untuk memformat dahulu data

yang akan kita tampilkan ke layar yaitu dengan menambahkan angka parameter

setelah tanda %, contoh %2.5f.

Soal-soal Laporan Resmi

a. Pilihlah nama-nama variabel yang benar dan yang salah, mengapa ?

int = Salah, menggunakan reserved word  

char = Salah, menggunakan reserved word  

6_05 = Salah, diawali dengan angka

floating = Benar

 _1312 = Benarcalloc = Benar

Xx = Benar

A$ = Benar

ReInitialize = Benar

alpha_beta_routine = Benar

xxx = Benar

z = Benar

 b. Apa yang dihasilkan oleh program di bawah ini :

main()

{

char c, d;

c = 'd';d = c;

printf("d = %c", d);

Jawab : 

Program tersebut akan menampilkan karakter “d” yang terdapat pada variable d.

Page 21: Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

8/20/2019 Laporan Resmi 03-04 Konsep Pemrograman [Tipe Data Dan Variabel ]

http://slidepdf.com/reader/full/laporan-resmi-03-04-konsep-pemrograman-tipe-data-dan-variabel- 21/21

c. Buatlah program untuk mengevaluasi polynomial di bawah ini :

3x2 –  5x + 6  dengan nilai x merupakan masukan dari user.

Jawab :

#include <stdio.h>main(){

int x,hasil;

printf("\nSOAL LAPRES PRAK 4 NO 3 \nRENDRA BUDI HUTAMA\n2110131036 - 1D4ITB\n");

printf("\n============================================================================== \n\n");

printf("Masukkan nilai x : ");scanf("%d",&x);

hasil = 3 * x * x - 5 * x + 6;

printf("\nHasil dari 3 * %d * %d - 5 * %d + 6 = %d \n",x,x,x,hasil);

getch();}

Hasil :