/*Nama : ALIYYIL MUSTHOFA / J2F009013 */
/*Nama Program : pecahan.c */
/*Dreskripsi : pecahan…… */
/*tanngal : 12..05..2011 / 2:15 */
/*Kamus Global*/
#include <stdio.h>
#include <stdlib.h>
/*Tipe Bentukan untuk pecahan*/
typedef struct {
int pembilang;
int penyebut;
}pecahan;
void show(pecahan P);
/*
* I.S : Pembilang P dan penyebut P telah terisi
* F.S : ditampilkan nilai pembilang/penyebut
* Proses : menampilkan komponen pembilang dan penyebut
*/
void makePecahan(int A, int B, pecahan *P);
/*
I.S : Nilai A sebagai pembilang dan B sebagai penyebut terisi (pecahan belum terbentuk)
F.S : Pecahan A/B terbentuk.
Proses : Membentuk pecahan P dari A dan B
*/
pecahan createPecahan(int A, int B);
/*membentuk pecahan A/B */
pecahan tambah (pecahan P1, pecahan P2);
/*menjumlahkan pecahan P1 dan P2*/
/*Program Utama*/
int main()
{
int atas1; /*Pembilang untuk Pecahan 1*/
int bawah1; /*Penyebut untuk Pecahan 1*/
int atas2; /*Pembilang untuk Pecahan 2*/
int bawah2; /*Penyebut untuk Pecahan 2*/
pecahan X1; /*pecahan dari pembilang dan penyebut*/
pecahan X2;
pecahan P3; /*output untuk hasil penjumlahan*/
/*Algoritma*/
/*Input Pecahan 1*/
printf(“Input Pembilang 1: “);
scanf(“%d”,&atas1);
printf(“Input Penyebut 1: “);
scanf(“%d”,&bawah1);
/*Input Pecahan 2*/
printf(“Input Pembilang 2: “);
scanf(“%d”,&atas2);
printf(“Input Penyebut 2: “);
scanf(“%d”,&bawah2);
/*Membuat Pecahan dari Input*/
makePecahan (atas1,bawah1,&X1); //membuat pecahan menggunakan Prosedur
X2 = createPecahan (atas2,bawah2); //membuat pecahan menggunakan Fungsi
/*menampilkan hasil pecahan*/
show(X1);
show(X2);
/*Operasi Penjumlahan dua Pecahan menggunakan fungsi*/
P3 = tambah(X1,X2);
printf(“Penjumlahan dari X1 + X2 : %d/%d \n”,P3.pembilang, P3.penyebut);
getch();
}
/*Realisasi Fungsi dan Prosedur*/
void show (pecahan P){
/*
* I.S : Pembilang P dan penyebut P telah terisi
* F.S : ditampilkan nilai pembilang/penyebut
* Proses : menampilkan komponen pembilang dan penyebut
*/
printf(“hasil pecahan yang diperoleh : %d/%d \n”,P.pembilang, P.penyebut);
}
void makePecahan (int A, int B, pecahan *P)
{
/*
I.S : Nilai A sebagai pembilang dan B sebagai penyebut terisi (pecahan belum terbentuk)
F.S : Pecahan A/B terbentuk.
Proses : Membentuk pecahan P dari A dan B
*/
/*Kamus*/
/*algoritma*/
(*P).pembilang = A;
(*P).penyebut = B;
}
pecahan createPecahan (int A, int B)
/*membentuk pecahan A/B */
{
/*Kamus Lokal*/
pecahan P;
/*Algoritma*/
P.pembilang = A;
P.penyebut = B;
return P;
}
pecahan tambah (pecahan P1, pecahan P2)
{
/*menjumlahkan pecahan P1 dan P2*/
/*Kamus*/
pecahan jumlah;
/*algoritma*/
jumlah.pembilang = (P1.pembilang*P2.penyebut)+(P2.pembilang*P1.penyebut);
jumlah.penyebut = P1.penyebut*P2.penyebut;
return jumlah;
}
penjelasannya menyusul ea….. mau praktikum dulu….
Yang Suka Komentar