Anda di halaman 1dari 10

LAPORAN PRAKTIKUM PEMOGRAMAN KOMPUTER PROGRAM STUDI TEKNIK NUKLIR

NAMA : Aldo Fachrudin Arrozi


NIM : 18/431314/TK/47907
KELAS : B2

HARI/TANGGAL PRAKTIKUM : Jumat, 26 April 2019


HARI/TANGGAL LAPORAN : Kamis, 2 Mei 2019

MENYUSUN ROGRAM DENGAN STATEMENT BERULANG SEDERHANA


LABORATORIUM KOMPUTASI
DEPARTEMEN TEKNIK NUKLIR DAN TEKNIK FISIKA
FAKULTAS TEKNIK
UNIVERSITAS GADJAH MADA
YOGYAKARTA
2019
1. Masalah
a. Menentukan nilai fungsi secara numerik, yaitu dengan menyatakan dengan nilai jumlah suatu
deret. Contoh kasus nilai F(x)=𝑒 𝑥
b. Lengkapi listing program di atas, dengan mengacu diagram alir yang ada. Upayakan tampilan keluaran yang
baik sesuai dengan yang Saudara inginkan. Setelah itu program disempurnakan dengan menampilkan nilai
𝑒 𝑥 dengan fungsi exp(x) pada file header cmath.
c. Hitung nilai dari fungsi dibawah ini :

2. Tujuan
Peserta dapat menggunakan statement for
3. Analisis
a. Program 1
1) Informasi : Nilai fungsi =fx
2) Data : Bentuk deret fungsi, cacah suku deret, n
3) Landasan : Untuk menjumlahkan jumlah deret secara numeric dengan menjumlahkan mulai suku
pertama sampai terakhir.
b. Program 2
1) Informasi : Nilai fungsi = fx
2) Data : Bentuk deret fungsi, cacah suku deret, n
3) Landasan : Untuk menjumlahkan jumlah deret secara numerik dengan menjumlahkan mulai suku
pertama sampai terakhir kemudian dibandingkan nilainya dengan fungsi exp(x) pada file header cmath.
c. Program 3
1) Informasi : Nilai fungsi = fx
2) Data : Bentuk deret fungsi, cacah suku deret, n
3) Landasan : Untuk menjumlahkan jumlah deret secara numerik dengan menjumlahkan mulai suku
pertama sampai terakhir kemudian dibandingkan nilainya dengan fungsi (1 + 𝑥)𝑛 .
4. Algoritma dan Flowchart
a. Algoritma
1) Program 1
1. Nilai awal fx=1, s=1
2. Input nilai x
3. Input jumlah deret (n)
4. Hitung jumlah suku banyak deret; untuk i=1; i<n; i++
a) s=s*x/i;
b) fx=fx+s;
5. Tampilkan nilai exp(x)
2) Program 2
1. Nilai awal fx=1. s=1
2. Input nilai x
3. Input jumlah deret (n)
4. Hitung jumlah suku banyak deret; untuk i=1; i<n; i++
a) s=s*x/i;
b) fx=fx+s;
5. fy=exp(x)
6. e=abs((fy-fx)/fy)*100
7. Tampilkan nilai exp(x) (fx)
8. Tampilkan nilai exp(x) (fy)
9. Tampilkan eror (e)
3) Program 3
1. Nilai awal fx=1, s=1
2. Input nilai x
3. Input jumlah deret (n)
4. Hitung jumlah suku banyak deret; untuk i=1; i<=n; i++
a) s=s*x*(n+1-i)/i
b) fx=fx+s
5. fy=(1+x)^n
6. e=abs((fy-fx)/fy)*100
7. Tampilkan nilai exp(x) (fx)
8. Tampilkan nilai exp(x) (fy)
9. Tampilkan eror (e)

b. Flowchart
 Program 1

 Program 2
 Program 3
V. Listing Program
 Modul
#include<iostream>
using namespace std;
int main()
{
float x,fx=1,s=1,n;
cout<<"Program untuk menghitung exp(x) \n";
cout<<"Masukkan nilai x = "; cin>>x;
cout<<"cacah suku deret = "; cin>>n;
for(int i=1;i<n;i++)
{
s=s*x/i; fx=fx+s;
}
cout<<"Nilai fungsi exp("<<x<<") = "<<fx<<endl;
system("pause");
return 0;
}
system("pause");
return 0;
}

 Modifikasi 1
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
float x,fx=1,s=1,n,fy,e;
cout<<"Nama : Aldo Fachrudin Arrozi\n";
cout<<"NIM : 18/431314/TK/47907\n";
cout<<"Program untuk menghitung exp(x) \n";
cout<<"Masukkan nilai x = "; cin>>x;
cout<<"cacah suku deret = "; cin>>n;
for(int i=1;i<n;i++)
{
s=s*x/i; fx=fx+s;
}
fy=exp(x);
e=abs((fy-fx)/fy)*100;
cout<<"Nilai fungsi exp("<<x<<") dari metode numerik = "<<fx<<endl;
cout<<"Nilai fungsi exp("<<x<<") dari rumus = "<<fy<<endl;
cout<<"Persentase error = "<<e<<"%"<<endl;
system("pause");
return 0;
}

 Modifikasi 2

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
float x,fx=1,s=1,n,fy,e;
cout<<"Nama : Aldo Fachrudin Arrozi\n";
cout<<"NIM : 18/431314/TK/47907\n";
cout<<"Program untuk menghitung (1+x)^n \n";
cout<<"Masukkan nilai x = "; cin>>x;
cout<<"cacah suku deret/pangkat = "; cin>>n;

for(int i=1;i<=n;i++)
{

s=s*x*(n+1-i)/i; fx=fx+s;
}
fy=pow(1+x,n);
e=abs((fy-fx)/fy)*100;
cout<<"Nilai fungsi (1+"<<x<<")^"<<n<<" dari metode numerik = "<<fx<<endl;
cout<<"Nilai fungsi (1+"<<x<<")^"<<n<<" dari rumus = "<<fy<<endl;
cout<<"Tingkat error = "<<e<<"%"<<endl;
system("pause");
return 0;
}

VI. Screenshot Program


 Modul

 Modifikasi 1

 Modifikasi 2
VII. Catatan
a) Soal Pretest
1. Apa judul praktikum ini?
 Menyusun Program dengan statement berulang sedeerhana dengan statement for
2. Penjelasan tentang for.
 For digunakan untuk mengulang program dalam suatu kondisi sampai kondisi tidak terpenuhi maka
perulangan akan berhenti.
3. Buatlah skema cara kerja for

4. for (int i=0;i<20;i++)


cout<<”Teknik Nuklir\n”;
i=i+2
Berapa jumlah tulisan “Teknik Nuklir” yang ditampilkan?
 17
b) Cara Kerja Program
1. Untuk program 1
Setelah program dijalankan, maka akan muncul perintah memasukkan nilai x dan jumlah deret (n).
Setelah memasukkan dan enter, maka nilai exp(x) ditampilkan.
2. Untuk program 2
Setelah program dijalankan, maka akan muncul perintah memasukkan nilai x dan jumlah deret (n).
Setelah memasukkan dan enter, maka nilai exp(x) dari metode numerik (fx) dan exp(x) dari fungsi (fy)
ditampilkan.
3. Untuk program 3
Setelah program dijalankan, maka akan muncul perintah memasukkan nilai x dan jumlah deret atau
pangkat (n). Setelah memasukkan dan enter, maka nilai exp(x) dari metode numerik (fx) dan exp(x) dari
fungsi (fy) ditampilkan.

c) Penjelasan
Pada bagian awal program modifikasi terdapat #Include <iostream> yang berguna agar fungsi cout, cin,
endl dapat bekerja, #include <cmath> berguna untuk menjalankan fungsi perhitungan matematika, pada
program ini yaitu fungsi exp(x) (e^x), pow (fungsi pangkat). Using namespace std untuk menyingkat fungsi
dari library di iostream.

Fungsi for befungsi untuk mengulang program dalam suatu kondisi sampai kondisi tidak memenuhi,
program akan keluar dari perulangan. Pada prorgram modul (int i=1;i<n;i++), misal kita masukkan nilai
n=10, maka program akan berulang sebanyak 8 kali. Pada program modifikasi (int i=1;i<n;i++), misal
kita memasukkan nilai n=10, maka program akan berulang sebanyak 9 kali
d) Kelebihan Program Modifikasi
Program dapat menghitung nilai exp(x) dan (1+x)^n dengan metode numerik dan dapat dibandingkan hasil
dengan rumus juga erornya
e) Kekurangan program Modifikasi
Untuk menghitung dengan metode numerik kurang teliti jika jumlah deretnya sedikit, jika jumlah deret
banyak kerja program lebih berat.
Daftar Pustaka

 Frieyadie. 2007. Pemrograman C++ dengan Borland C++ 5.02 (Edisi Revisi). Jakarta: Bina Sarana Informatika.

Anda mungkin juga menyukai