Thursday 20 May 2021

WORKSHOP PEMROGRAMAN MINGGU 6

 MINGGU 6

Kasus 6.2 Mencari nilai deviasi standar dari n buah data
  • - Analisis :
  1.  Rumus deviasi standar adalah 
  2.  Terlihat bahwa nilai rata-rata dan datanya digunakan kembali
  • - Fungsi std(input x : array [1..10] of integer, n : integer, rata : real) : real { Diberikan n data
        kemudian di cari rata-ratanya }
    - Deklarasi
        i, jumlah : integer
    - Deskripsi
        jumlah <--0
        fori <--1 to n do
                jumlah <-- jumlah + sqr(x[i] rata)
        endfor
        std <-- sqrt (jumlah/(n-1)
    kemudian di cari rata-ratanya }
- Deklarasi
    i, jumlah : integer
- Deskripsi
    jumlah <--0
    fori <--1 to n do
            jumlah <-- jumlah + sqr(x[i] rata)
    endfor
    std <-- sqrt (jumlah/(n-1)

  • Syntax dan Hasil Output :
#include <iostream>
using namespace std;
class rerata {
friend istream& operator >> (istream&, rerata&);
friend ostream& operator << (ostream&, rerata&);
private :
int n;
int array[100];
public :
float rata();
};
istream& operator >> (istream& in, rerata& r){
cout<<"Menghitung rata-rata\n";
cout<<"====================\n";
cout<<"Masukan banyak data : ";in>>r.n;
for (int i=0; i<r.n; i++) {
cout<<"Data ke-"<<i+1<<" : "; 
in>>r.array[i];
}
return in;
}
float rerata::rata() {
int i;
float total = 0;
for(i=0; i<n; i++) {
total = total + array[i];
}
return(total/n);
}
ostream& operator << (ostream& out, rerata& r) {
out<<"====================================\n";
out<<"Hasil rata-rata dari data diatas adalah "<<r.rata();
return out;
}
int main(){
rerata go;
cin>>go;
cout<<go;
return 0;
}





Kasus 6.5. Tentukan modus dari n buah data berupa bilangan bulat (data antara 1 sampai dengan 10)
  • Analisis
• Modus adalah bilangan (data) yang paling sering muncul. Dengan kata lain, frekuensi
data terbesarlah yang dicari.
• Langkah penyelesaian masalahnya adalah :
a. Setiap jenis data dihitung frekuensi kemunculannya
b. Dari frekuensi-frekuensi tersebut dicar frekuensi terbesarnya.
  •  Procedure maksimum (data : larik; n : integer; output maks, item : integer) {procedure ini
hasil modifikasi dari algoritma (...) karna selain nilai maks dari larik data, juga perlu diketahui
besar datanya item }
  • Deklarasi
i: integer
  • Deskripsi
maks data[1]
item 1
for | 2 to n do
if (data[i] > maks) then
maks data[i];
item i;
endif
endfor
- Procedure frekuensi (data : larik; n : integer, ouput : larik) { data akan diambil nilai frekuensi
f-nya }
- Deklarasi
i: integer
- Deklarasi
for 1 to n do
f[data[i]] :=f [data[i]] + 1 { dengan prinsip memasukkan bola ke keranjang yang sesuai
dengan nomornya
  •  Syntax dan Hasil Output :
#include <iostream>
using namespace std;
class modusCalc {
friend istream& operator >> (istream&, modusCalc&);
friend ostream& operator << (ostream&, modusCalc&);
private :
int i, n, item, max;
int data[100];
int f[100];
public :
int frekuensi();
int maximum( );
};
istream& operator >> (istream& in, modusCalc& r) {
cout<<"Mencari Modus (data yang sering muncul)\n";
cout<<"=======================================\n";
cout<<"Masukkan n data : "; in>>r.n;
cout<<endl;
for (int i=0; i<r.n; i++) {
cout<<"Data Ke-"<<i+1<" : ";
in>>r.data[i];
}
return in;
}
int modusCalc::maximum( ){
max = data[0];
item= 1;
for(int j=0; j<n; j++) {
if (data[i] > max) {
max = data[i];
item = i;
}
}
return data[i];
}
int modusCalc::frekuensi() {
for(int i=0; i<n; i++) {
++f[data[i]];
}
return f[data[i]];
}
ostream& operator << (ostream& out, modusCalc& r) {
cout<<"==========================\n";
cout<<"Modus dari data diatas adalah "<<r.maximum( )<<endl;
cout<<"Banyaknya frekuensi adalah "<<r.frekuensi()<<" kali ";
return out ;
}
int main() {
modusCalc go;
cin>>go;
cout<<go;
return 0;
}





Saturday 1 May 2021

WORKSHOP PEMROGRAMAN BAB 5

BAB 5


8. [Pengamatan : membayar barang belanja di kasir] Amatilah kejadian di mana seorang pembeli
(yang membeli barang cukup banyak) pada sebuah took swalayan. Perhatikan apa yang
dilakukan pembeli dan apa yang dilakukan oleh kasir ketika mengambil barangnbelanjaan
untuk menghitung berapa harga keseluruhan yang harus dibayar pembeli. Laporkan konsep
counter dan konsep total yang anda temukan pada kejadian tersebut.
Algoritma sistem kasir
{membuat sistem dasar pembayaran dan ada diskon terkait barang yang dibeli sesuai dengan inputan
yang diberikan}
Deklarasi
nm_brg : char
diskon,Total_Belanja,bayar,kd_brg,jml_brg,hrg_brg,jml_uang,kembali : integer
Deskripsi
do
read (kd_brg,nm_brg,jml_brg,hrg_brg)
Total_Belanja <- hrg_brg*jml_brg
write (Total_Belanja)
if(Total_Belanja<=100000)
diskon <- Total_Belanja*0
else if(Total_Belanja>=100000)
diskon <- Total_Belanja*5/100
write (diskon)
bayar <- Total_Belanja-diskon
write (bayar)
read (cin>>jml_uang)
kembali <- jml_uang-bayar
write (kembali)
read lnjt
while(lnjt==’Y’ || lnjt==’y’)
endif
endwhile
Translasi 8
#include <iostream>
#include <windows.h>
using namespace std;
int main(int argc, char** argv) {
char nm_brg [200],lnjt='Y';
int diskon,Total_Belanja,bayar,kd_brg,jml_brg,hrg_brg,jml_uang,kembali;
do{
system("cls");
cout<<"Program kasir sederhana"<<endl;
cout<<"======================="<<endl;
cout<<"Masukkan kode barang : ";cin>>kd_brg;
cout<<"Masukkan nama barang : ";cin>>nm_brg;
cout<<"Masukkan harga barang : ";cin>>hrg_brg;
cout<<"Masukkan jumlah barang : ";cin>>jml_brg;
cout<<"========================="<<endl;
Total_Belanja=hrg_brg*jml_brg;
cout<<"Total : Rp."<<Total_Belanja<<endl;
cout<<"========================="<<endl;
if(Total_Belanja<=100000){
diskon=Total_Belanja*0;
}
else if(Total_Belanja>=100000){
diskon=Total_Belanja*5/100;
}
cout<<"Diskon : Rp."<<diskon<<endl;
bayar=Total_Belanja-diskon;
cout<<"Total bayar : Rp."<<bayar<<endl;
cout<<"========================"<<endl;
cout<<"Masukkan jumlah uang : Rp.";cin>>jml_uang;
cout<<"========================(-)"<<endl;
kembali=jml_uang-bayar;
cout<<"Kembali : Rp."<<kembali<<endl<<endl;
cout<<"Brang yang sudah dibeli tidak dapat ditukar atau dikembalikan"<<endl;
cout<<"Terimakasih atas kunjungan anda"<<endl<<endl;
cout<<"Ulangi lagi : ";cin>>lnjt;
cout<<endl<<endl;
}while(lnjt=='Y' || lnjt=='y');
system("pause");
}
Hasil Kasus 8


[Proyek] Buatlah suatu class yang akan mengeksplorasi kalimat. Kalimat dapat
disimpan dalam bentuk array (kumpulan) karakter.
Algoritma menghitung jumlah huruf vokal dan konsonan
{mengeksplorasi kalimat yang dinputkan, kemudian akan menghitung jumlah vokal dan konsonan
yang terdapat sebuah kalimat yang telah diinputkan}
Deklarasi
i,vokal,konsonan,x : Integer
kalimat : Char
Deskripsi
Read (kalimat)
i=0,vokal=0,konsonan=0
for(i=0;i<x;i++)do
if(kalimat[i]=='a'||kalimat[i]=='i'||kalimat[i]=='u'||kalimat[i]=='e'||kalimat[i]=='o')then
vokal+1;
konsonan+1
write (vokal,konsonan)
endfor
endif
Translasi 9
#include<iostream>
#include<conio.h>
#include<string.h>
using namespace std;
class konvo{
private:
int i,vokal,konsonan,x;
char kalimat[50];
public:
konvo();
void input();
void proses();
void output();
};
konvo::konvo(){
cout<<"\t\tPEROGRAM MENGHITUNG HURUF KONSONAN DAN VOKAL\n";
cout<<endl<<endl;
}
void konvo::input(){
cout<<"Silahkan Masukkan Kalimat: ";
cin.getline(kalimat,50);
}
void konvo::proses(){
i=0,vokal=0,konsonan=0;
x=strlen(kalimat);
for(i=0;i<x;i++)
{
if(kalimat[i]=='a'||kalimat[i]=='i'||kalimat[i]=='u'||kalimat[i]=='e'||kalimat[i]=='o')
vokal++;
konsonan++;
} }
void konvo ::output(){
cout<<"Jumlah Huruf Vokal\t: "<<vokal<<" huruf"<<endl;
cout<<"Jumlah Huruf Konsonan\t: "<<konsonan<<" huruf"<<endl;
}
int main()
{
konvo fen;
fen.input();
fen.proses();
fen.output();
return 0;
}
Hasil Kasus 9



WORKSHOP PEMROGRAMAN MINGGU 6

  MINGGU 6 Kasus 6.2 Mencari nilai deviasi standar dari n buah data - Analisis :  Rumus deviasi standar adalah   Terlihat bahwa nilai rata-r...