Kamis, 15 Juni 2017

DIKTAT BAB 7

1. Kasus 6.1.
Carilah rata-rata dari n bilangan bulat dengan menggunakan array.
Algoritma 6.1. :
Fungsi rata (input x : array [1..10] of integer, n : integer) : real {Diberikan n data kemudian dicari rata-ratanya}
Deklarasi:
i, jumlah : integer
capture program nya :


#include <iostream>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */
using namespace std;

class HitungRata{
friend ostream& operator<<(ostream&, HitungRata&);
friend istream& operator>>(istream&, HitungRata&);
public:
float rata();
private:
int n;
int A[20];
};
istream& operator>>(istream& in, HitungRata& a){
cout<<"Banyaknya data : ";
in>>a.n;
for(int i=0;i<a.n;i++){
cout<<"Masukkan data ke- : "<<i+1<<">";
in>>a.A[i];
}
return in;
}
float HitungRata::rata(){
float total=0;
for(int i=0;i<n;i++)total=total+A[i];
return(total/n);
}
ostream& operator<<(ostream& out,HitungRata& a){
out<<"Rata-rata dari "<<a.n<<"bilangan adalah : "<<a.rata()<<endl;
return out;
}
main()
{
HitungRata run;
cin>>run;
cout<<run;
system("PAUSE");
return 0;

}












3.. KASUS PPT 6.5

#include <iostream>
#include <conio.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */

int x;
void findmod(float bil[], int n, float mod[]){
int total[100];
int k=1;
x=0;
for(int c=0;c<n;c++){
for(int i=(n-1);i>=0;i++){
if(bil[i]<bil[i-1]){
int temp;
temp=bil[i];
bil[i]=bil[i-1];
bil[i-1]=temp;
}
}
}
for(int c=0;c<n;c++){
total[c]=0;
for(int i=0;i<n;i++){
if(bil[c]==bil[i]){
total[c]++;
}
}
}
for(int c=0;c<n;c++){
if(total[c]>k){
k=total[c];
}
}
for(int c=0;c<n;c++){
if(x==0)
mod[x]=0;
else
mod[x]=mod[x-1];
if(total[c]==k){
if(bil[c]!=mod[x]){
mod[x]=bil[c];
x++;
}
}
}
int z=0;
for(int c=0;c<n;c++){
if(total[c]==k){
z++;
}
}
if(z==n){
x=0;
}
}
int main(){
int n;
float bil[100];
float mod[100];
cout<<" Banyak N : ";
cin>>n;
for(int c=0;c<n;c++){
cout<<"nilai "<<(c+1)<<" : ";
cin>>bil[c];
}
cout<<endl;
findmod(bil,n,mod);
if(x==0)
cout<<"tidak ada modus!"<<endl;
else{
cout<<"Modus : ";
for(int c=0;c<x;c++){
cout<<mod[c]<<" ";
}
}

return 0;
}

Latihan halaman 161
1. Buatlah algoritma dan subprogram yang cara kerjanya seperti function pos di atas.



AlgoritmaDeklarasi  Subprogram
c,i,j,kali,proses,masuk,hasil=integer
Deskripsi
Void masuk(c[20],b[20])
For(i=1;j<=2;i++) then
For(j=1;j<=3;j++)then
Write(“Vaktor A”)
Write(“Vaktor B”)
Void proses(c[20],b[20])
Write(“Vaktor A”)
For(i=1;j<=2;i++) then
For(j=1;j<=3;j++)then
Write(b)
Write(“Vaktor B”)
For(i=1;j<=2;i++) then
For(j=1;j<=3;j++)then
Write(c)
Write(“Vaktor C”)
For(i=1;j<=2;i++) then
For(j=1;j<=3;j++)then
Hasil<-b+c
Write(hasil)
Write(“Vaktor Hasil Kali”)
For(i=1;j<=2;i++) then
For(j=1;j<=3;j++)then
Kali<-b*hasil
Write(Kali)
Write(“Banyak Elemen”)
Int main()
Write(“Menghitung Vaktor”)
Masuk(b,c)
Proses(b,c,hasil,kali)
Return 0;

Source Code:
#include <iostream>
#include <windows.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
void masuk(int c[20],int b[20]){
    for (int i=1;i<=2;i++){
        for (int j=1;j<=3;j++){
            cout<<"Vaktor A "<<i<<","<<j<<" =";cin>>b[i,j];
            cout<<"Vaktor B "<<i<<","<<j<<" =";cin>>c[i,j];
        
        }
    }
    system("cls");
}
void proses(int b[20],int c[20],int hasil[20],int kali[20]){
 
        cout<<"Vaktor A"<<endl;
    for(int i=1;i<=2;i++){
        for(int j=1;j<=3;j++){
            cout<<b[i,j]<<" ";
        }
    }
    cout<<"\n\nVaktor B"<<endl;
        for(int i=1;i<=2;i++){
        for(int j=1;j<=3;j++){
            cout<<c[i,j]<<" ";
        }
    }
    cout<<"\n\nVektor C"<<endl;
    for (int i=1;i<=2;i++){
        for (int j=1;j<=3;j++){
            hasil[i,j]=b[i,j]+c[i,j];
        
            cout<<hasil[i,j]<<" ";
        }
   
    }
    cout<<"\n\nVaktor Hasil Kali"<<endl;
    for (int i=1;i<=2;i++){
        for (int j=1;j<=3;j++){
            kali[i,j]=b[i,j]*hasil[i,j];
        
            cout<<kali[i,j]<<" ";
        }
   
    }
    cout<<"\n\nBanyak Elemen ="<<12;
}

int main(int argc, char** argv) {
    int hasil[20];
    int kali[20];
    int b[20];
    int c[20];
    cout<<"Menghitung faktor"<<endl;
    masuk(b,c);
    proses(b,c,hasil,kali);
    return 0;
}
:
Dev C++:

Output nya :


Raptor nya :



No.2

Buatlah algoritma dan function dalam bahasa C untuk menggantikan strlen, yaitu mengetahui panjang suatu string 

C++
#include <iostream>
using namespace std;
void nama(){
 string kata;

 cout<<"mencari panjang nama = ";cin>>kata;
 cout<<"berisi berapa kata? = "<<kata.size();

 }
int main(){
 nama();
 return 0;
}

output nya :

raptor nya :



Workshop Halaman 158

1. Buatlah algoritma dan subprogram yang cara kerjanya seperti procedure insert di atas.
Misalkan : kata1 = “Algoritma Pemrograman”
kata2 = “dan “
Outputnya :
kata3 = “Algoritma dan Pemrograman”
Coba lakukan secara manual huruf demi huruf dari kata2 yang disisipkan ke kata1.
Perhatikan letak indeks dari kata1 yang akan memperoleh tambahan kata2.

Algoritma:


Judul = { Program Meyisipkan kata }
Deklarasi
            i=integer
Algoritma =
            Read (i)
            for(int i=1;i<=1;i++)
                        Write (“Masukkan kata1”)
            End for(int j=1;j<=1;j++)  then
                        Write(“Masukkan kata2”)
                        Write(“Masukkan kata1”)
Dev C++:

Output nya :

raptor nya :


2. Buatlah algoritma dan program untuk mengubah string menjadi bergantian huruf besar dan kecil.

Contoh :

Algoritma dan Pemrograman --> AlGoRiTmA dAn PeMrOgRaMaN 

Analisis :  Perhatikan bahwa manipulasi elemen (dalam hal ini karakter) array tertuju pada indeksnya. Buat angka indeks di bawah setiap karakter di atas :
Cari keberaturan letak karakter yang berubah. Kemudian turunkan menjadi algoritma.
C++



#include <stdio.h>


#include <ctype.h>


#include <string.h>

#include<windows.h>

char konversi (char kata[100]) { 
   int n, a; 
    n = strlen (kata);

        for (a =0; a <= n-1; a++) {
            if (islower (kata[a])) {
                kata[a] = toupper (kata[a]);
            }
            else {
                kata[a] = tolower (kata[a]);

            }

            printf ("%c", kata[a]); 
        }
    return (kata[100]);

}

 int main () {

    char kata[100];

                printf ("\t=======================\n");

    printf ("\tPROGRAM KONVERTER HURUF\n");

    printf ("\t=======================\n\n\n");

    printf ("Masukkan Kata : ");gets (kata);

    //system("CLS");

    printf ("Hasilnya : ");

    konversi (kata);

}

output nya:

Tidak ada komentar:

Posting Komentar