Week 5 Extra

5th Week – Extra (24th March 2013)

Hi again! Do you remember about the blunder I’ve made in the last entry (You know, aside from the messiness of my programs…), well, I’ve fixed it! I said I’ll post it up next week but in my world, next week actually means the next day! Yay! So here is my program, feel free to laugh your butt off at my newbieness, I’ll just cry a little bit. Oh and I’ll only show the one using ‘for’.

 

#include <cstdlib>

#include <iostream>

 

// Nama : Nur Arina Bt Faizal   No Matrik : UK25837  Tarikh : 21 Mac 2013

/* Amali : Minggu   Program : Aturcara untuk Mengira CGPA*/

 

/* a) Andaian:

CGPA Semester Lama : 3.45

Jumlah kredit kumulatif : 50 kredit (Untuk 3 semester lepas)

Semester sekarang : 4 Subjek

Subject1 > 3 kredit, gred “A”

Subject2 > 4 kredit, gred “A”

Subject3 > 2 kredit, gred “C”

Subject4 > 3 kredit, gred “B”

 

Arahan umum / Algoritma

Input : 1) Input   :

Untuk mengira CGPA beberapa pelajar, nama dan nombor matrik pelajar

(1 pelajar sahaja) perlu ditaipkan supaya dapat dipamerkan dalam

pengiraan CGPA pelajar tersebut ; nama , uk

Seterusnya, data-data yang perlu diinputkan oleh pengguna untuk mengira

CGPA ialah;

a) Jumlah kredit kumulatif ; credcum

b) Nilai CGPA untuk semester yang lepas ; Lcgpa

c) Jam kredit untuk setiap subjek yang diambil untuk semester sekarang;

cred1, cred2, cred3 dan cred4

d) Gred untuk setiap subjek yang diambil untuk semester sekarang(4 subjek);

gred1, gred2, gred3 dan gred4

Proses :  Cara pengiraan GPA adalah seperti berikut;

a) Kirakan jumlah GP untuk semua semester lepas:

lastTgp = Lcgpa * credcum

b) Tambahkan semua nilai jam kredit untuk semester sekarang:

ttlcrednow = cred1 + cred2 + cred3 + cred4

c) Darabkan nilai markah gred dan jam kredit untuk setiap subjek dalam semester sekarang. Tambahkan semua hasilnya.

crgr = (cred1 * gredpt1) + (cred2 * gredpt2) + (cred3 * gredpt3) + (cred4 * gredpt4)

d) Hasil (d) dibahagikan dengan hasil (c) untuk mendapatkan nilai GP semester sekarang; currentTgp

e) Tambahkan semua nilai jam kredit untuk semua semester:

ttlcredall = cred1 + cred2 + cred3 + cred4 + credcum

f) Kirakan jumlah GP yang terkini:

cgp = lastTgp + currentTgp

g) Kirakan CGPA terkini :

cgpa = cgp / ttlcredall

h) Dengan menggunakan kata kunci ‘for’ yang mewakili salah satu arahan

yang mengulangkan kenyataan, segala arahan dari meminta input data yang berkenaan

dari pengguna hingga nilai CGPA selesai dikira dan dipamerkan akan diulangi

untuk pelajar yang seterusnya.

(Arahan diulangi sebanyak 100 kali untuk 100 pelajar)

Output :  Nilai CGPA dipamerkan.   */

 

using namespace std;

 

void BacaData(); // Pengisytiharaan fungsi

void KiraCgpa();

void PamerCgpa();

 

 

int main(int argc, char *argv[])

{

// Penggunaan kata kunci ‘for’ untuk mengulangi arahan bagi ketiga-tiga fungsi sebanyak 100 kali

int Loop;

for (Loop = 0; Loop < 100; Loop++)

{

BacaData();   //Panggil fungsi 1

KiraCgpa();   //Panggil fungsi 2

PamerCgpa();  //Panggil fungsi 3

}

system(“PAUSE”);

return EXIT_SUCCESS;

}

 

void BacaData() // Pengenalan kepada aturcara

{

string nama,uk;

cout << “\n      ************ Amali Minggu 5 ************” << endl;

cout << ”    ******** Aturcara untuk Mengira CGPA ********” << endl;

cout << ”  *************** Nama : Babybird *****************” << endl;

cout << “************** Matrik No : UK25837 *********************” << endl << endl << endl;

cout << “\nSila taipkan nama pelajar.” << endl;

cin  >> nama;

cout << “\nSila taipkan nombor matrik pelajar.” << endl;

cin  >> uk;

}

 

void KiraCgpa()

{

// Pengisytiharaan data

float cred1, cred2, cred3, cred4, ttlcred, gredpt1, gredpt2, gredpt3, gredpt4, ttlgred, crgr, credcum, ttlcredall, ttlcrednow, Lcgpa, lastTgp, currentTgp, cgp, cgpa;

string gred1, gred2, gred3, gred4;

 

 

// Pengiraan jumlah GP utk sem lepas bermula dengan 2 ‘user prompt’

cout << “\nSila letakkan nilai kredit kumulatif.” << endl;

cin  >> credcum;

cout << “\nSila letakkan nilai CGPA untuk semester yang lepas.” << endl;

cin  >> Lcgpa;

 

//  Nilai GP utk sem lepas dikira

lastTgp = Lcgpa * credcum;

cout << “\nNilai GP untuk semua semester lepas adalah : ” << lastTgp << endl;

// Pengiraan utk jumlah GP sem sekarang

cout << “\nSila letakkan gred anda untuk 4 subjek semester terkini.” << endl;

cin  >> gred1 >> gred2 >> gred3 >> gred4;

// Penggunaan ‘conditional statement’ dalam aturcara.

// Menentukan nilai untuk string gred1, gred2, gred3 dan gred4.

if (gred1 == “A”)

gredpt1 = 4;

if (gred1 == “B”)

gredpt1 = 3;

if (gred1 == “C”)

gredpt1 = 2;

if (gred1 == “D”)

gredpt1 = 1;

if (gred1 == “F”)

gredpt1 = 0;

if (gred2 == “A”)

gredpt2 = 4;

if (gred2 == “B”)

gredpt2 = 3;

if (gred2 == “C”)

gredpt2 = 2;

if (gred2 == “D”)

gredpt2 = 1;

if (gred2 == “F”)

gredpt2 = 0;

if (gred3 == “A”)

gredpt3 = 4;

if (gred3 == “B”)

gredpt3 = 3;

if (gred3 == “C”)

gredpt3 = 2;

if (gred3 == “D”)

gredpt3 = 1;

if (gred3 == “F”)

gredpt3 = 0;

if (gred4 == “A”)

gredpt4 = 4;

if (gred4 == “B”)

gredpt4 = 3;

if (gred4 == “C”)

gredpt4 = 2;

if (gred4 == “D”)

gredpt4 = 1;

if (gred4 == “F”)

gredpt4 = 0;

 

// ‘User Prompt’ utk pengiraan nilai kredit semester sekarang

cout << “\nSila letakkan nilai kredit untuk 4 subjek diambil dalam semester sekarang.” << endl;

cin  >> cred1 >> cred2 >> cred3 >> cred4;

// Kiraan bermula dengan menambahkan semua jam kredit

ttlcrednow = cred1 + cred2 + cred3 + cred4;

cout << “\nJumlah kesemua kredit adalah: ” << ttlcrednow << endl;

// Nilai jam kredit serta poin gred didarabkan

// Nilai bagi string ‘grednombor’ diwakili dengan ‘gredptnombor’

crgr = (cred1 * gredpt1) + (cred2 * gredpt2) + (cred3 * gredpt3) + (cred4 * gredpt4);

cout << “\nJumlah kesemua nilai daraban kredit dan gred adalah: ” << crgr << endl;

// GP terkini dikira

currentTgp = crgr / ttlcrednow;

cout << “\nJumlah GP untuk semester sekarang adalah: ” << currentTgp << endl;

 

//GP keseluruhan dikira

cgp = lastTgp + currentTgp;

cout << “\nJumlah GP keseluruhan adalah: ” << cgp << endl;

//Jumlah kredit utk semua sem dikira

ttlcredall = cred1 + cred2 + cred3 + cred4 + credcum;

cout << “\nJumlah kredit keseluruhan adalah: ” << ttlcredall << endl;

//Pengiraan CGPA

cgpa = cgp / ttlcredall;

}

 

// CGPA dipamerkan

void PamerCgpa()

{

float cred1, cred2, cred3, cred4, ttlcred, gredpt1, gredpt2, gredpt3, gredpt4, ttlgred, crgr, credcum, ttlcredall, ttlcrednow, Lcgpa, lastTgp, currentTgp, cgp, cgpa;

string gred1, gred2, gred3, gred4;

cout << “\nCGPA pelajar adalah: ” << cgpa << endl;

if (cgpa >= 3.5)

cout << “\nPelajar disenarai Dalam Senarai Dekan” << endl;

if (cgpa < 3.5 && cgpa > 2.0)

cout << “\nSyabas, pelajar lulus!” << endl;

if  (cgpa <= 2.0)

cout << “\nAmaran! CGPA pelajar terlalu rendah!” << endl;

}

 

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s