Assalamualaikum…..

 

Dalam post ini akan membahas lebih lanjut materi pembelajaran Algoritma dan Pemrograman dalam praktikum kedua. Praktikum kali ini adalah mempelajari dan mengamati penggunaan operator aritmatika seperti +,-,*,/ dan % (modulus) dan operator unary seperti – (minus), ++ (increment) dan – (decrement) yang dipadukan dengan tipe variabel dasar yaitu int (bilangan bulat) dan float (presisi tunggal), double (presisi ganda) dan char.

Suatu expression terdiri dari dua bagian yaitu operator dan operand yang dikombinasikan jadi satu. Operator adalah symbol yang digunakan untuk melakukan proses atau operasi satu atau beberapa operand. Operand adalah bagian yang paling sederhana dari expression. Operand dapat berupa konstanta seperti 339,55,132 dan seterusnya atau berupa variable seperti x,y,jumlah,selisih,dsb.

Statement adalah unsur dasar suatu program. Terdapat 3 macam statement yaitu  : expression statement, compound statement, control statement. Expression statement adalah suatu expression yang diikuti dengan tanda titik koma ( ; ) ( semi colon ). Compound statement adalah dua atau lebih statement yang dikelompokkan menjadi satu dengan cara memberi batas tanda kurung awal dan tanda kurung akhir sehingga tidak perlu diakhiri dengan tanda titik koma pada akhir dari compound. Control statement adalah statement yang mengendalikan langkah-langkah program, contoh for loop,while loop, dan if-else.

 

Percobaan 1. Mengkonversi suatu nilai derajat Fahrenhait (F) ke derajat Celcius (C).

Program :

#include <stdio.h>

 

void main()

{

int konversi, hasil;

 

printf(“Masukkan derajat fahrenhait:”);

scanf(“%d”, &konversi);

 

hasil = (konversi-32)*5/9;

printf(“\n%d derajat fahrenhait adalah = %d derajat celcius\n”, konversi, hasil);

 

getch();

}

 

Kita ketahui bahwa formula untuk mengkonversi Suhu Fahrenhait ke Suhu Celcius adalah :

C= (F – 32)*5/9

Lalu dengan penggunaan fungsi scanf() kita dapat memasukkan beragam variabel maupun konstanta, namun karena pada perhitungan kali ini kita akan memakai bilangan bulat, maka digunakan deklarasi dalam bentuk int dan %d pada penulisan fungsi scanf(). Dan ingat kembali bahwa penulisan operator aritmatika memiliki urutan prioritas.

 

Percobaan 2. Mengevaluasi formula : y= 3x^2 + 6x + 9 dan z= (2y^2 + 5x^2)/9y. (x=2)

Program :

#include <stdio.h>

#include <math.h>

 

void main()

{

int x;

float y, z;

 

printf(“Formula y = 3x^2 + 6x + 9\n\n”);

printf(“Masukkan nilai x = “);

scanf(“%d”, &x);

 

y=(3*pow(x,2))+(6*x)+9;

z=((2*pow(y,2))+(5*pow(x,2)))/(9*y);

 

printf(“Didapatkan nilai y = %2.f dan nilai z = %f\n”, y, z);

 

getch();

}

 

Dalam program ini, dimasukkan nilai x=2 (bilangan bulat), maka digunakan %d pada fungsi scanf(). Pada formula y dan z digunakan ‘pow(x,2)’ yang bisa diartikan seperti x dipangkatkan 2. Dalam fungsi printf() juga tertulis %2.f yang mana bisa menghasilkan tampilan berupa bilangan bulat seperti %d. Jangan lupa masukan pengarah praprosesor #include <math.h> untuk pencarian file Math.

 

Percobaan 3. Menghitung Keliling dan Luas Lingkaran. (jari-jari=12)

Program :

#include <stdio.h>

 

void main()

{

int r;

float keliling, luas;

 

const float PI = 3.14;

 

printf(“masukkan jari-jari lingkaran = “);

scanf(“%d”, &r);

 

keliling=2*PI*r;

printf(“Keliling lingkaran dengan jari-jari 12 adalah = %f\n\n”, keliling);

 

luas=PI*pow(r,2);

printf(“Luas lingkaran dengan jari-jari 12 adalah = %f”, luas);

 

getch();

}

 

Dalam perhitungan keliling dan luar lingkaran diperlukan konstanta float PI 3.14 dalam rumusnya yakni :

Keliling : 2.PI.Jari2

Luas : PI.Jari2^2

Dengan memasukkan nilai r=12 maka program akan memproses nilai r pada fungsi perhitungan lainnya.

 

Percobaan4. Mengkonversi jam ke menit.

Program :

#include <stdio.h>

 

void main()

{

int jam, menit, hasil;

 

printf(“Program konversi jam ke menit\n”);

printf(“Masukkan jam dan menit (jj:mm) = “);

scanf(“%d:%d”, &jam, &menit);

 

hasil=(jam*60)+(menit*1);

printf(“Jam 11:07 adalah setara dengan %d menit”, hasil);

 

getch();

}

 

Dalam Program konversi jam ke menit, diperlukan operator * dan + dalam prosesnya (1 jam = 60 menit). Dan dalam penulisan di scanf() saya menambahkan fitur zero padding, karena apabila hanya memakai %d, maka pengetikan yang diawali angka 0 tidak akan tertulis pada tampilan.

 

Percobaan 5. Jelaskan bagaimana tampilan program dibawah ini :

Program :

#include <stdio.h>

 

void main()

{

int a, b, c, d;

double e, f, g, h;

 

a=75; b=259; c=3315; d=12345;

e=75.07; f=259.055; g=3315.3310; h=12345.67890;

 

printf(“a=%7d\nb=%7d\nc=%7d\nd=%7d\n\n”, a, b, c, d);

printf(“e=%12.5f\nf=%12.5f\ng=%12.5f\nh=%12.5f\n”, e, f, g, h);

 

getch();

}

 

Pada program ini hamper sama seperti konsep zero padding yang mana menentukan jumlah slot minimal yang akan ditampilkan. Yang membedakan adalah pada zero padding, mengganti kekosongan dengan nilai 0(nol), tetapi pada program ini tampilan nilai 0(nol) diganti dengan spasi.