Jawaban UTS Alpro 2012

Jawaban UTS Alpro 2012
1.

#include <iostream.h>
class Hitung { // Class Hitung (jawaban c)
friend istream& operator>>(istream&, Hitung&);
friend ostream& operator<<(ostream&, Hitung&);
public :
Hitung() { i =1; total =0; }
void Rata() { result =total/(i-1); } // method (fungsi) hitung rata-rata input (jawaban b)
private : // (jawaban a)
float total; // variabel proses
float result; // variabel output
float input; // variabel input
float i; // variabel proses
};
// (jawaban d)
istream& operator>>(istream& in, Hitung& masuk){
char *raptor_prompt_variable_zzyz;
while (1) {
raptor_prompt_variable_zzyz =”Enter the value : “;
cout << raptor_prompt_variable_zzyz << endl;
cin >> masuk.input;
if (masuk.input<0) break;
masuk.total = masuk.total + masuk.input;
masuk.i = masuk.i + 1;
}
return in;
}
ostream& operator<<(ostream& out, Hitung& keluar){
cout << “The average value : ” << endl;
out<<keluar.result<<endl;
}
int main() {
Hitung X;
cin >> X;
X.Rata();
cout << X;
return 0;
}

2. Xy = x * x * x … * x (sebanyak y kali)
a. Definisi rekursif :
= 1, jika y = 0
= x * (x (y – 1)), jika y > 0
= 1 / x(-y), jika y < 0
C++ :
#include <iostream.h>
double pangkat(int x, int y) {
if ( y == 0) return 1;
else if ( y < 0) return (1 / pangkat (x, -y));
else return (x * pangkat(x, y – 1));
}
int main () {
cout << “2 Pangkat 3 = : ” << pangkat(2, 3) << endl;
cout << “2 Pangkat -3 = : ” << pangkat(2, -3) << endl;
cout << “-2 Pangkat -3 = : ” << pangkat(-2, -3) << endl;
return 0;
}
RAPTOR/ flowchart

Alternatif
4. [Nilai 25] Modifikasi Algoritma
Di bawah ini adalah flowchart yang dimaksudkan untuk menghitung nilai a dibagi b. Isilah tabel
berikut seperlunya sesuai dengan flowchart.
a. Untuk nilai a = 12 dan b = 3
Nilai variabel a
(lama) untuk dicek
Nilai variabel a
(baru) setelah
dikurangi b
Nilai variabel b Nilai variabel hasil
12 < 0 ? No (nilai
awal)
9 3 1
9 < 0 ? No 6 3 2
6 < 0 ? No 3 3 3
3 < 0 ? No 0 3 4
0 < 0 ? No -3 3 5 (nilai akhir)
-3 < 0? Yes ! Stop !

b. Flowchart tersebut, mungkin saja ada kesalahan logika (hasil tidak sesuai dengan yang
diharapkan). Bila perlu, lakukan perubahan (modifikasi) sehingga sesuai dengan yang
diharapkan. Dilakukan perubahan pada persyaratan LOOP : dari “<” diganti dengan “<=”

Tinggalkan Balasan

Please log in using one of these methods to post your comment:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s