Tugas 8-3
Tentukan jenis kohesi dan kopling, untuk latihan nomor 4 , hal 124
Bab. Communication between modules
dari buku Simple Program Design, edisi ke dua.
Kohesi Procedular
void baca()
{
char str[40],*p;
jmlh=0;
fstream in(“data.txt”,ios::in);
if(!in)cerr<<”data.txt belum tersedia”<<endl;
else
{
while(!in.eof())
{
in.getline(str,40);
p=strtok(str,”;”);
if(p!=NULL)
{
strcpy(kode[jmlh],p);
p=strtok(NULL,”;”);
strcpy(nama[jmlh],p);
p=strtok(NULL,”");
nilai[jmlh]=atoi(p);
jmlh++;
}
}
}
}
Kohesi Data
void cetak()
{
cout<<”———————————————————–”<<endl;
cout<<”|KODE|NAMA SALES | VALUE | KOMISI |”<<endl;
cout<<”|—-|——————————|———-|———-|”<<endl;
for(int j=0;j<jmlh;j++)
{
if(nilai[j]>=0&&nilai[j]<=199){
comisi[j]=nilai[j]*5;
}
else if(nilai[j]>=200&&nilai[j]<=999){
comisi[j]=(200*5)+((nilai[j]-200)*8);
}
else if(nilai[j]>=1000&&nilai[j]<=1999){
comisi[j]=(200*5)+((1000-200)*8)+((nilai[j]-1000)*10);
}
else if(nilai[j]>=2000){
comisi[j]=(200*5)+((1000-200)*8)+((2000-1000)*10)+((nilai[j]-2000)*12);
}
cout.setf(ios::left);
cout<<”|”<<setw(4)<<kode[j]<<”|”<<setw(30)<<nama[j]<<”|”;
cout.setf(ios::fixed);
cout.precision(0);
cout.setf(ios::right);
cout<<setw(10)<<nilai[j]<<”|”<<setw(10)<<comisi[j]<<”|”<<endl;
}
cout<<”———————————————————–”<<endl;
}
Kopling External
char kode[10][4],nama[10][30];
double nilai[10],comisi[10];
int jmlh;
void baca();
…..
void cetak();
…..
void main()
{
baca();
cetak();
cin.get();
}

Komentar Terakhir