Anda di halaman 1dari 12

LAPORAN PRAKTIKUM MATA KULIAH

METODE NUMERIK

PRAKTIKUM 03 – PENGENALAN MATLAB/OCTAVE II

DISUSUN OLEH:

L0122003 – ADDIN HADI RIZAL

PROGRAM STUDI INFORMATIKA

FAKULTAS TEKNOLOGI INFORMASI DAN SAINS DATA

UNIVERSITAS SEBELAS MARET

2023
BAB I

ANALISIS SOURCE CODE

1. Analisis Source Code “FAKTORIAL”

Dalam program ini, saya tidak lagi mengambil argumen n sebagai input fungsi.
Sebaliknya, program meminta user untuk memasukkan nilai n saat fungsi dijalankan.
User dapat menginputkan nilai apa pun yang mereka inginkan.
Langkah-langkah dalam fungsi ini adalah serupa dengan yang telah dijelaskan
sebelumnya:
● Meminta pengguna untuk memasukkan nilai n menggunakan input.
● Inisialisasi hasil dengan 1.
● Memeriksa jika n adalah angka negatif dan menampilkan pesan kesalahan jika iya.
● Menghitung faktorial dari n menggunakan perulangan for.
● Menampilkan hasil faktorial ke layar dengan menggunakan fprintf.
Program dapat menjalankan fungsi ini dan memasukkan nilai n sesuai keinginan user
di Command Window saat fungsi dijalankan.
2. Analisis Source Code “Inputan Size Matriks”

Penjelasan tentang program yang meminta user untuk memasukkan ukuran matriks
(n x n) dan kemudian mengizinkan user untuk memasukkan nilai-nilai elemen-elemen
matriks.
1. Program dimulai dengan menginstruksikan pengguna untuk memasukkan ukuran
matriks (n x n). Ini dilakukan dengan pernyataan:
n = input('Masukkan ukuran matriks (n x n): ');
2. Setelah pengguna memasukkan nilai n, program menginisialisasi matriks n x n dengan
semua elemen awalnya diatur ke nol. Ini dilakukan dengan pernyataan:
matriks = zeros(n, n); % Inisialisasi matriks dengan nol
Matriks ini akan digunakan untuk menyimpan nilai-nilai elemen matriks yang akan
dimasukkan oleh pengguna.

3. Program menggunakan dua perulangan bersarang (for) untuk memungkinkan


pengguna memasukkan nilai-nilai elemen matriks satu per satu. Perulangan pertama
mengatur baris, dan perulangan kedua mengatur kolom:
for i = 1:n
for j = 1:n
prompt = sprintf('Matriks(%d,%d): ', i, j);
matriks(i, j) = input(prompt);
end
end
Dalam setiap iterasi perulangan, program menampilkan pesan yang meminta
pengguna memasukkan nilai elemen matriks yang sesuai dengan baris dan kolom saat
ini.
4. Setelah semua nilai elemen matriks dimasukkan oleh pengguna, program mencetak
matriks yang telah diisi. Ini dilakukan dengan pernyataan:
fprintf('Matriks yang dimasukkan:\n');
disp(matriks);
Hasilnya adalah mencetak matriks ke layar dalam bentuk yang sesuai.
5. Program juga bisa mencari nilai maksimum dan minimum dalam matriks yang telah
diisi dengan menggunakan pernyataan berikut:
nilai_maksimum = max(matriks(:));
nilai_minimum = min(matriks(:));
Ini mencari nilai maksimum dan minimum dari seluruh elemen matriks, termasuk
elemen-elemen yang dimasukkan pengguna.
6. Akhirnya, program mencetak nilai maksimum dan minimum ke layar:
fprintf('Nilai maksimum dalam matriks: %d\n', nilai_maksimum);
fprintf('Nilai minimum dalam matriks: %d\n', nilai_minimum);
​ Hasilnya adalah mencetak nilai maksimum dan minimum ke layar.
Dengan demikian, program ini memungkinkan pengguna untuk memasukkan ukuran
matriks, kemudian mengisi nilai-nilai elemen matriks, mencetak matriks, dan
menampilkan nilai maksimum serta minimum dari matriks tersebut.
3. Analisis Source Code “DIFERENSIAL”

Program untuk menghitung diferensial dari dua fungsi yang diberikan adalah program
sederhana yang menggunakan simbolik matematika dalam GNU Octave. Berikut
adalah penjelasan langkah demi langkah dari program tersebut:
​ Pertama-tama, program mendefinisikan variabel simbolik x dengan menggunakan
syms x;. Ini memungkinkan kita untuk bekerja dengan simbol-simbol matematika
dalam bentuk persamaan aljabar.
​ Program mendefinisikan dua fungsi matematika yang akan kita hitung diferensialnya,
yaitu f1 dan f2. Dalam contoh ini, f1 adalah x^2 * sqrt(4 - 6*x) dan f2 adalah (x +
2)^3 / (1 - x)^2.
​ Untuk menghitung diferensial pertama dari kedua fungsi tersebut, program
menggunakan fungsi diff(). Dalam contoh ini, df1 adalah diferensial pertama dari f1,
dan df2 adalah diferensial pertama dari f2. Pernyataan ini menghitung derivatif
pertama dari masing-masing fungsi terhadap variabel x.
​ Hasil diferensial pertama dari kedua fungsi tersebut diwakili dalam bentuk simbolik.
Ini berarti bahwa hasil diferensial akan ditampilkan sebagai ekspresi matematika yang
sesuai.
​ Akhirnya, program mencetak hasil diferensial pertama dari kedua fungsi ke layar
menggunakan fprintf(). Hasilnya akan dicetak dalam bentuk persamaan matematika.
Jadi, program ini memungkinkan kita untuk menghitung dan mencetak diferensial
pertama dari dua fungsi matematika tertentu terhadap variabel x. Hasil diferensialnya
akan ditampilkan dalam bentuk persamaan matematika yang sesuai.
Penggunaan char() dalam fprintf() digunakan untuk mengkonversi hasil diferensial
yang berupa objek simbolik menjadi string sehingga dapat dicetak ke layar.
Hasil diferensial yang dihasilkan oleh fungsi diff() dalam GNU Octave adalah objek
simbolik yang mewakili ekspresi matematika. Untuk mencetak hasil ini ke layar
dalam bentuk teks yang dapat dibaca, kita perlu mengkonversinya menjadi string.
char() adalah fungsi yang digunakan untuk melakukan konversi ini. Itu mengubah
objek simbolik menjadi string yang bisa dicetak.
Misalnya, jika hasil diferensial pertama dari suatu fungsi adalah (3*x^2 + 2*x), maka
char() akan mengubahnya menjadi string "3*x^2 + 2*x", yang kemudian bisa dicetak
ke layar dengan fprintf().
Jadi, penggunaan char() dalam fprintf() adalah cara untuk mengonversi hasil
diferensial dari representasi simbolik menjadi string yang dapat dicetak ke layar. Ini
membantu dalam menampilkan hasil diferensial dalam bentuk yang lebih mudah
dibaca oleh pengguna.
4. Analisis Source Code “GRAFIK 2D”

Dalam program ini:


1. Membuat vektor x dengan menggunakan operator : untuk membuat vektor yang berisi
nilai dari -10 hingga 10 dengan selang 0.1.
2. Selanjutnya, kita menghitung nilai y berdasarkan persamaan y = x^2 - 2*x + 1.
3. Kemudian, kita menggunakan perintah plot(x, y) untuk membuat plot 2D dari x dan y.
4. Program memberikan label pada sumbu x dan y serta judul plot menggunakan
xlabel(), ylabel(), dan title().
5. grid on digunakan untuk menampilkan grid pada plot.
6. Terakhir, plot ditampilkan dengan membiarkan Octave menampilkan plot secara
otomatis.
Program ini dapat mengganti persamaan y dengan persamaan lain sesuai dengan yang
diinginkan user untuk membuat plot dari persamaan tersebut.
Grid adalah tanda kisi berupa garis-garis vertikal dan horizontal yang digunakan
dalam plot grafik, diagram, atau grafik lainnya pada software perencanaan seperti
GNU Octave, MATLAB, dan sebagainya. Fungsi dari grid adalah untuk membantu
dalam visualisasi data dengan cara yang lebih terstruktur.
BAB II

ANALISIS PRAKTIKUM

1. Analisis “FAKTORIAL”

Dalam program faktorial yang telah diberikan, jika user memasukkan nilai 3 di
Command Window setelah program dijalankan, berikut adalah langkah-langkah yang
akan terjadi:
1. Program akan meminta pengguna untuk memasukkan nilai n untuk menghitung
faktorial. Dalam hal ini, pengguna memasukkan angka 3.
2. Program akan menginisialisasi variabel n dengan nilai yang dimasukkan pengguna,
yaitu 3.
3. Program akan memeriksa apakah nilai n adalah angka negatif. Dalam kasus ini, nilai n
adalah 3, yang bukan angka negatif, sehingga pernyataan ini tidak akan dieksekusi.
4. Selanjutnya, program akan menghitung faktorial dari nilai n yang adalah 3. Ini
dilakukan dengan menggunakan perulangan for yang mengalikan angka-angka dari 1
hingga 3.
a. Iterasi pertama: hasil = 1 * 1 = 1
b. Iterasi kedua: hasil = 1 * 2 = 2
c. Iterasi ketiga: hasil = 2 * 3 = 6
5. Setelah perhitungan selesai, program akan menampilkan hasil faktorialnya. Pesan
yang ditampilkan adalah "Faktorial dari 3 adalah 6." karena nilai faktorial dari 3
adalah 6.
Jadi, ketika user memasukkan nilai 3, program akan menghitung faktorial dari 3 dan
kemudian menampilkan hasilnya, yang dalam hal ini adalah 6.
2. Analisis “Inputan Size Matriks”

Jika pengguna memasukkan nilai 3 sebagai ukuran matriks dan kemudian


memasukkan nilai 1, 2, dan 3 untuk setiap baris, berikut adalah bagaimana program
akan berperilaku:
1. Pengguna diminta untuk memasukkan ukuran matriks, dan mereka memasukkan nilai
3. Program akan menyimpan nilai 3 sebagai ukuran matriks n x n.
2. Program menginisialisasi matriks 3 x 3 dengan semua elemen awalnya diatur ke nol,
seperti ini:
Matriks awal:
000
000
000
3. Program kemudian meminta pengguna memasukkan nilai untuk setiap elemen
matriks, mulai dari baris pertama hingga baris ketiga. Pengguna memasukkan nilai 1
untuk elemen (1,1), 2 untuk elemen (1,2), dan 3 untuk elemen (1,3). Kemudian
pengguna melakukan hal yang sama untuk baris kedua dan ketiga.
Setelah pengguna memasukkan semua nilai, matriks akan terisi seperti ini:
Matriks yang dimasukkan:
123
123
123
4. Program mencetak matriks yang telah diisi ke layar sesuai dengan input pengguna.
5. Kemudian, program mencari nilai maksimum dan minimum dalam matriks. Dalam
hal ini, nilai maksimum adalah 3 (muncul di semua elemen baris ketiga), dan nilai
minimum adalah 1 (muncul di semua elemen baris pertama).
Program mencetak nilai maksimum dan minimum seperti ini:
Nilai maksimum dalam matriks: 3
Nilai minimum dalam matriks: 1
Jadi, jika pengguna memasukkan nilai 3 dan kemudian memasukkan nilai 1, 2, dan 3
untuk setiap baris, program akan menghasilkan matriks yang terisi sesuai dengan
input pengguna dan mencetak nilai maksimum dan minimum dari matriks tersebut.

3. Analisis “DIFERENSIAL”

Ketika source code dieksekusi, program akan menghasilkan output pada gambar diatas. Jadi,
ketika menjalankan program ini, akan terlihat hasil diferensial pertama dari f1 dan f2
dalam bentuk persamaan matematika pada layar. Ini adalah cara untuk menghitung
dan mencetak diferensial dari dua fungsi matematika tertentu terhadap variabel x.
4. Analisis “GRAFIK 2D”

Setelah program dijalankan, hasilnya adalah plot grafik berbentuk parabola yang
mencerminkan persamaan matematika yang telah ditentukan. Dengan grid, user dapat dengan
mudah melihat titik-titik dalam plot dan mengukur nilai-nilai x dan y yang sesuai dengan
lokasi titik-titik tersebut.

Anda mungkin juga menyukai