TUGAS EBOOK MINGGU KE 3 ALPRO
1. finding the square root of a number
soal :
mencari akar persamaan kuadrat ,,,
analisis :
persamaan kuadrat adalah persamaan dengan bentuk umum ax^2 + bx + c dengan a tidak sama dengan 0. jika b^2 - 4ac < 0 maka akan diperoleh akar imajiner.
input : koefien a, b, c bilangan real.
proses : ada tiga alternatif pilihan dari harga b^2 - 4ac yaitu harganya 0 positif atau negatif
output : nilai akar berdasarkan rumus.
mencari akar persamaan kuadrat ,,,
analisis :
persamaan kuadrat adalah persamaan dengan bentuk umum ax^2 + bx + c dengan a tidak sama dengan 0. jika b^2 - 4ac < 0 maka akan diperoleh akar imajiner.
input : koefien a, b, c bilangan real.
proses : ada tiga alternatif pilihan dari harga b^2 - 4ac yaitu harganya 0 positif atau negatif
output : nilai akar berdasarkan rumus.
algoritma :
{menghitung akar persamaan kuadrat ax^2 + bx + c = 0}
deklarasi :
read (a, b, c)
disk <-b*b - 4*a*c
if (a=0 then write (bukan persamaan kuadrat)
else if disk > 0 then
x1<= b + sqrt(diks)/2*a
x2<= b - sqrt(diks)/2*a
else if disk = 0 then
x1<= b/2 *a
x2<=x1
else write (akar imajiner)
end if
write (x1,x2)
{menghitung akar persamaan kuadrat ax^2 + bx + c = 0}
deklarasi :
read (a, b, c)
disk <-b*b - 4*a*c
if (a=0 then write (bukan persamaan kuadrat)
else if disk > 0 then
x1<= b + sqrt(diks)/2*a
x2<= b - sqrt(diks)/2*a
else if disk = 0 then
x1<= b/2 *a
x2<=x1
else write (akar imajiner)
end if
write (x1,x2)
- Flowchart :
- C++ :
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
int main(int argc, char *argv[])
{
int a,b,c;
long disk;
float x1,x2;
cout<<" koefisien pangkat dua : ";cin>>a;
cout<<" koefisien pangkat satu : ";cin>>b;
cout<<" koefisien pangkat nol : ";cin>>c;
if(a==0){
cout<<"tentukan persamaan kuadrat|n";
cout<<"harga akarnya adalah : "<<-c/b;}
else {
disk=b*b-4*a*c;
if(disk>0){
x1=-b+sqrt(disk)/(2*a);
x2=-b-sqrt(disk)/(2*a);
cout<<"diskriminan : "<<disk<<endl;
cout<<"x1 : "<<x1<<endl;
cout<<"x2 : "<<x2<<endl;
} else
cout<<" akar imajiner"<<endl;
}
system("PAUSE");
return EXIT_SUCCESS;
}
masalah
Di berikan sebuah n integer kemudian memikirkan algoritma untuk menentukan pembagi terkecil selain angka 1.
input dan output
X=integer (input)
R=integer
D= integer
Kpk = integer (output)
algoritma
Menetukan pembagi terkecil dari sebuah bilangan
Deklarasi
X=integer
R= integer
D=integer
Deskripsi
Read x
R ß sqrt (x);
D ß 3
If (n ! = n) then kpk =2
Else
While (n mod d ≤ 0) and (d < r) do
D ß d + 2
If (n mod :: 0) then kpk. D
Else then kpk=1
End while
test data
X= 25
R= 5
If(x! =x)
Kpk =2
While x mod <> 0 end (d < r)
Kpk = d+2
- C++ :
#include <cstdlib>
#include <iostream>
#include <math.h>
using namespace std;
Friend istream& operator >> (istream&, terkecil&);
Friend ostream& operator >> (ostream&, terkecil&);
public;
void kpk ();
private ;
int x,n,d,k;
};
Istream& operator >> (istream& in, terkecil& a)}
Cout <<"masukan bilangan"; in >> a,x;}
Ostream& operator << (ostream out. Terkecil& b)}
Out << "hasilnya " << b.k <<endl; }
Terkecil::terkecil (){
Cout <<"mencari kpk " ; }
void terkecil :: kpk (){
If (n! =n) k= 3;
Else while (n % d<) 0 && d < r ){
D=d+2
If (n % d :: 0 ) k=d;
Else k = 1;}
Int main (){
terkecil m;
Cin >>m ;
m.FPB ();
cout <<m ;
system("PAUSE");
return EXIT_SUCCESS;
}
3. the greatest common divisor of two integer
soal
masalah
Di berikan 2 integer positif tidak atau bukan nol n & m, pola algoritma untuk mencari pembagi yang paling besar.
input dan output
M= integer (input)
N =integer
Gcd= integer (output)
R= integer
D= integer
algoritma
Read m,n
While (m <0) do
R ß n mod m
N ß m
End while
Gcd ß m
Write = (gcd)
test data
M= 36 n= 28
N= 28 m=8
R=36 % 28 gcd = 8
R= 8
Friend ostream& operator << (ostream. Gcd&);
Friend istream& operator >> (istream. Gcd&);
Public;
Int hitung gcd (int ,int);
Private ;
Int x,y;
};
Int gcd :: hitung gcd (int ,(int d)
{ int r;
While ( d> 0);
R = c % d;
D= d;
D= r;
}
Return ( r );
}
(istream& operation >> (istream& in, gcd& a){
Cout << “ inputkan bilangan petama ;” ;
In >> a.x;
Cout << “ inputkan bilangan kedua ; “ ;
In >> a.x;
Return in; }
Ostream& operation << istream& out , gcd& a){
Out << “gcd ‘ << a.c << “.” << a. x << );”;
Out << a.hitung gcd (a.x, a.y);
Return out;
}
Void main (){
Gcd run;
Cin >> run ;
Cout << run ;
Getch ();
}
4. generating prime numbers
soal
Setiap integer bisa di ekspresikan ke dalam hasil bilangna atau angka. Prima pola algoritma untuk memperhitungkan semua factor prima dan sebuah integer.
input dan output
A= integer
R= integer
I= integer
X=integer
X=integer
algoritma
A ß x div y
R ß x mod x
I ß 0
While ( r =0) or (a > y) do
If ( I :: 0) then
I= i+1
X [i] ß y
Y ß a
If r > I then
[i] = r
End while
test data
X=16
Y= 2
Q =16/2 =8
R=16%2=6
While (r-o) ll (Q > y) do
If (r ==0) I = [+1]
X [i] =2
X=8
Friend ostream& operator << (ostream& prima&);
Friend istream& operator >>(istream& prima7);
Public;
Void prima ();
Prima ();
Private;
Int + [50],I,n;
Int Q,R,S;
};
Void prima :: prima (){
Q= n/5;
R=n%5;
I=0;
While ((r=0) ll(Q >5)0{
If (r==0){
If(r==0){
R= i+1;
F(i)=5;
N= Q; }
Else{
Q = n/5;
R= n % 5 ;}
}
If ( n> 1){
I= I + 1
F [i]=n }
}}
5. Computing The Prime Factors Of An Integer
Algoritma
1. Analisis :
Program Mencari Faktorial Bilangan Prima
2. Identifikasi :
Input : batas bilangan
Output : hasil faktorial bilangan prima
3. Algoritmanya
3. the greatest common divisor of two integer
soal
masalah
Di berikan 2 integer positif tidak atau bukan nol n & m, pola algoritma untuk mencari pembagi yang paling besar.
input dan output
M= integer (input)
N =integer
Gcd= integer (output)
R= integer
D= integer
algoritma
Read m,n
While (m <0) do
R ß n mod m
N ß m
End while
Gcd ß m
Write = (gcd)
test data
M= 36 n= 28
N= 28 m=8
R=36 % 28 gcd = 8
R= 8
- C++ :
Friend ostream& operator << (ostream. Gcd&);
Friend istream& operator >> (istream. Gcd&);
Public;
Int hitung gcd (int ,int);
Private ;
Int x,y;
};
Int gcd :: hitung gcd (int ,(int d)
{ int r;
While ( d> 0);
R = c % d;
D= d;
D= r;
}
Return ( r );
}
(istream& operation >> (istream& in, gcd& a){
Cout << “ inputkan bilangan petama ;” ;
In >> a.x;
Cout << “ inputkan bilangan kedua ; “ ;
In >> a.x;
Return in; }
Ostream& operation << istream& out , gcd& a){
Out << “gcd ‘ << a.c << “.” << a. x << );”;
Out << a.hitung gcd (a.x, a.y);
Return out;
}
Void main (){
Gcd run;
Cin >> run ;
Cout << run ;
Getch ();
}
4. generating prime numbers
soal
Setiap integer bisa di ekspresikan ke dalam hasil bilangna atau angka. Prima pola algoritma untuk memperhitungkan semua factor prima dan sebuah integer.
input dan output
A= integer
R= integer
I= integer
X=integer
X=integer
algoritma
A ß x div y
R ß x mod x
I ß 0
While ( r =0) or (a > y) do
If ( I :: 0) then
I= i+1
X [i] ß y
Y ß a
If r > I then
[i] = r
End while
test data
X=16
Y= 2
Q =16/2 =8
R=16%2=6
While (r-o) ll (Q > y) do
If (r ==0) I = [+1]
X [i] =2
X=8
- C++ :
Friend ostream& operator << (ostream& prima&);
Friend istream& operator >>(istream& prima7);
Public;
Void prima ();
Prima ();
Private;
Int + [50],I,n;
Int Q,R,S;
};
Void prima :: prima (){
Q= n/5;
R=n%5;
I=0;
While ((r=0) ll(Q >5)0{
If (r==0){
If(r==0){
R= i+1;
F(i)=5;
N= Q; }
Else{
Q = n/5;
R= n % 5 ;}
}
If ( n> 1){
I= I + 1
F [i]=n }
}}
5. Computing The Prime Factors Of An Integer
Algoritma
1. Analisis :
Program Mencari Faktorial Bilangan Prima
2. Identifikasi :
Input : batas bilangan
Output : hasil faktorial bilangan prima
3. Algoritmanya
Deklarasi :
a (Integer)
Deskripsinya :
while (!(a<=2))
if (a%2==0)
else
6. Generating Of Pseudo Random Numbers
Algoritma
1. Analisis :
Program Mencari Bilangan Acak
Output : bilangan acak
a,b,c,d,e,f (Integer)
Deskripsinya :
b = 2175;
c = 721;
d = a+1;
e = 1234;
f = ((c*e)+b)%d;
2. Identifikasi :
Input : bilangan dan batas angka
Output : hasil perpangkatan
3. Algoritmanya
Deklarasi :
a,b,c,hasil (Integer)
Deskripsinya :
while (1)
if ( b>=0 )
c = 1;
while ( !(c>b))
c = c+1;
a (Integer)
Deskripsinya :
while (!(a<=2))
if (a%2==0)
else
- Flowchart :
6. Generating Of Pseudo Random Numbers
Algoritma
1. Analisis :
Program Mencari Bilangan Acak
2. Identifikasi :
Input : angka acakOutput : bilangan acak
3. Algoritmanya
Deklarasi :a,b,c,d,e,f (Integer)
Deskripsinya :
b = 2175;
c = 721;
d = a+1;
e = 1234;
f = ((c*e)+b)%d;
- Flowchart :
7. Raising A Number To A Large Power
Algoritma
1. Analisis :
Program Menghitung Bilangan Berpangkat Sampai N
Algoritma
1. Analisis :
Program Menghitung Bilangan Berpangkat Sampai N
2. Identifikasi :
Input : bilangan dan batas angka
Output : hasil perpangkatan
3. Algoritmanya
Deklarasi :
a,b,c,hasil (Integer)
Deskripsinya :
while (1)
if ( b>=0 )
c = 1;
while ( !(c>b))
c = c+1;
- Flowchart :
8. Computing The Nth Fibonacci Number