DIKTAT translasi 6.5 dan 6.6 (BAB 7)
Translasi 6.5
DEV c++ nya:
#include <iostream.h>
#include <math.h>
class HitungStatistik {
friend ostream& operator<<(ostream&, HitungStatistik&);
friend istream& operator>>(istream&, HitungStatistik&);
public:
HitungStatistik();
void hitung_modus();
private:
void maksimum();
void frekuensi();
int maks, item;
int n; // banyaknya data
int A[20]; // array untuk menyimpan data
int f[11]; // array untuk menampung frekuensi
};
HitungStatistik::HitungStatistik()
{ for (int i=0; i<20; i++) f[i] = 0; }
istream& operator>>(istream& in, HitungStatistik& a) {
cout << "Banyaknya data : ";
in >> a.n;
for (int i = 0; i < a.n; i++) {
cout << "Data ke- : " << i+1 << " > ";
in >> a.A[i];
}
return in;
}
void HitungStatistik::maksimum()
{
maks = f[0];
item = 1;
for (int i=0; i<n; i++)
if (f[i] > maks) {
maks = f[i];
item = i;
}
cout << "Modus = " << item;
}
void HitungStatistik::frekuensi()
{
for (int i=1; i<n; i++) ++f[A[i]];
}
void HitungStatistik::hitung_modus() {
cout << "Frekuensi running\n";
frekuensi();
maksimum();
}
ostream& operator<<(ostream& out, HitungStatistik& a) {
cout << "Mulai ...\n";
a.hitung_modus();
out << "Nilai modus : " << a.item;
return out;
}
main() {
HitungStatistik run;
cin >> run;
cout << run;
return 0;
}
Algoritma 6.6
function palindrom(input s : string) : boolean
Deklarasi
i, pj : integer
Deskripsi
palindrom <- true { diasumsikan benar, dibuktikan dengan penyangkalan }
pj <- length(s)
for i <- 1 to (pj div 2) do
if (s[i] <> s[pj-i+1]) then palindrom false
Translasi 6.6.
#include <iostream.h>
#include <string.h>
#include <conio.h>
class Palindrom {
friend ostream& operator<<(ostream&, Palindrom&);
friend istream& operator>>(istream&, Palindrom&);
public:
int cek_palindrom();
private:
char *s;
};
ostream& operator<<(ostream& out, Palindrom& a) {
if (a.cek_palindrom())
out << a.s << " adalah palindrom";
else out << a.s << " bukan palindrom";
return out;
};
istream& operator>>(istream& in, Palindrom& a) {
cout << "Masukkan sebuah kalimat : ";
in >> a.s;
return in;
};
int Palindrom::cek_palindrom()
{ int i, pj;
pj = strlen(s);
for (i=0; i<=pj/2 ;i++)
if (s[i] != s[pj-i-1]) return 0;
return 1;
}
main() {
Palindrom kata;
cin >> kata;
cout << kata;
getch();
return
}
untuk melihat translasi diktat 6.1 dan 6.4 silahkan liat di blog http://lagisinaukok.blogspot.co.id/
untuk melihat translasi diktat 6.8, 6.7, 6.9, 6.10, dan 6.11 silahkan liat di blog
http://sandaljebat16.blogspot.co.id/search/label/Tranlasi%206
0 komentar:
Posting Komentar