sekarang saya akan membagikan jawaban jawaban dari diktat bab 5 langsung saja
Latihan halaman 110
1.cetaklah bilangan 1 sampai dengan 4 menggunakan downto.
Kodingan Dev C++
#include <iostream>
using namespace std;
int main(){
cout <<"\n \t\t\tPROGRAM MENCETAK BILANGAN 1-4 \n";//Algoritma menceteak bilanagn 1 sampai 4
cout <<" \n\t\t\t DENGAN PERULANGAN \n"; //{langsung mencetak bilanagn 1 sampai 4}
int b; //Deklarasi b=integer
for (b=1;b<=4;b++){ //read
cout<<b<<endl;
}
return 0;
}
outputnya :
3. Buatlah algoritma dan program untuk mencetak bilangan yang habis dibagi 3 dan 5 antara 1 sampai dengan 100.
kodingan devC++
#include <iostream>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int a;
for(a=1;a<=100;a++){
if(a%3==0 && a%5==0){
cout<<"Bilangan habis dibagi 3 dan 5= "<<a;
cout<<endl;
}else{
}
}
return 0;
}
outpunya :
Algoritma :
Algoritma
Mencetak bilangan yang
habis dibagi 3 dan 5 antara 1-100
|
Deklarasi
a:integer (output)
|
Deskripsi
a<-1
repeat
a<-100
a%3<-0 && a%5<-0
write(a)
|
5. Hitunglah nilai dari :
1-(1/2)+(1/3)-(1/4)+......+(1/n)
#include <iostream>
#include<conio.h>
#include<math.h>
using namespace std;
class hitung
{
public:
void input();
int proses();
private:
int a;
float bil,hasil,total;
};
void hitung::input(){
cin>>a;
cout<<endl;}
int hitung::proses(){
hasil=0;
total=0;
bil=-1;
for(int j=1; j<=a; j++){
bil=(bil*(-1));
total=bil/j;
hasil+=total;
if(j==1)
cout<<"("<<bil<<"/"<<j<<")";
if(j>1)
cout<<" +("<<bil<<"/"<<j<<")";
}
cout<<endl<<endl<<"hasil penjumlahan deret = "<<hasil;
return hasil;
}
int main()
{
cout<<"menghitung jumlah Hasil Deret 1-(1/2)+(1/3)-(1/4)+...+(1/n)"<<endl<<endl;
cout<<"masukan nilai n : ";
hitung deret;
deret.input();
deret.proses();
getch();
return 0;
}
outputnya jika kita inputkan 10
6. Buatlah algoritma dan program untuk mengkonversi bilangan desimal menjadi bilangan biner. Petunjuk : Gunakan operator mod dan div !
kodingan DevC++ :
#include <iostream>
using namespace std;
int main(int argc, char** argv) {
long desimal, pembagi, bit;
pembagi=1073741824;
cout<<"\t\t Program Konversi Bilangan Desimal ke Biner"<<endl<<endl;
cout<<" Masukan bilangan desimal : ";
cin>>desimal;
while(pembagi>desimal)pembagi/=2;
do{
bit=desimal/pembagi;
cout<<bit;
desimal=desimal%pembagi;
pembagi/=2;
}
while(pembagi>=1);
cout<<"\n";
return 0;
}
outputnya jika di inputkan angka 1234
Latihan halaman 120
1. Buatlah fungsi fibonacci dengan cara iteratif.
kodingan devC++
#include <iostream>
using namespace std;
int iteratif (int suku, int a, int b, int c)
{
a=0, b=1;
if (suku == 1) return b;
if (suku == 0) return a;
else{
for(int i=2; i<=suku; i++){
c = a + b;
a = b;
b = c;
}
return c;
}
}
int main()
{
int suku, a, b,c;
cout<<"Masukkan nilai suku ke-: ";
cin>>suku;
cout<<"\nBilangan fibonaccinya untuk "<<suku<<" adalah ";
cout<< iteratif ( suku, a, b, c);
return 0;
}
outputnya jika di masukan angka 10 :
2. Buatlah fungsi fibonacci dengan 2 cara rekursif yang lain.
kodingan DevC++ :
#include <iostream>
using namespace std;
int nextTerm(int n){
int firstTerm = 0, secondTerm = 1;
int nextTerm;
cout << "Fibonacci Series: " << firstTerm << " " << secondTerm << " ";
for (int i = 1; i <= n-2; ++i) {
nextTerm = firstTerm + secondTerm;
cout<<nextTerm << " ";
firstTerm = secondTerm;
secondTerm = nextTerm;
}
}
int main() {
int n;
cout << "Enter number of terms: ";
cin >> n;
nextTerm(n);
return 0;
}
outputnya jika di inputkan angka 15 :
3. Algoritma perkalian dengan cara penjumlahan pada algoritma 5.3. belum sempurna karena belum mencakup semua kemungkinan, misalnya untuk harga b negatif. Buatlah fungsi perkalian dengan cara penjumlahan dengan menyempurnakan algoritma 5.3. di atas.
kodingan devC++ :
#include <iostream>
#include <math.h>
using namespace std;
/* run this program using the console pauser or add your own getch, system("pause") or input loop */
int main(int argc, char** argv) {
int a,b,i,jumlah=0;
cout<<"Menghitung Perkalian dengan Penjumlahan"<<endl;
cout<<"Masukan Nilai pertama = ";cin>>a;
cout<<"Masukan Nilai Kedua = ";cin>>b;
if (a>0 && a<0 || b>0){
for(i=1;i<=b;i++)
jumlah+=a;
cout<<a<<"x"<<b<<"="<<jumlah;
}else if(b<0 && a<0){
for(i=0;i>a;i--)
jumlah-=b;
cout<<a<<"x"<<b<<"="<<jumlah;
}else{
for(i=1;i<=a;i++)
jumlah+=b;
cout<<a<<"x"<<b<<"="<<jumlah;
}
return 0;
}
outputnya jika di inputkan 10 dan 37 :
4. Buatlah algoritma rekursif dari algoritma 5.3.
Algoritma : algoritma
rekrusif
(diberikan masukan
a,b,i,jumlah)
|
Deklarasi :
I,n,jumlah,x : integer
|
Deskripsi :
Read(n)
jumlah←0
for i←1 to n do
read(x)
jumlah←jumlah+x
endfor
rata←jumlah/n
write(rata)
|
Sekian yang bisa saya bagikan semoga bermanfaat
wassalamualaikum warahmatullahi wabarakatuh
0 komentar:
Posting Komentar