Elvin
"Everything will be 大丈夫"
Profile | ||
---|---|---|
Nama | Elvin | |
NPM | 1706036381 | |
Jurusan | Teknik Mesin |
Pertemuan 1 (4 September 2019)
1. Pengenalan Kelas Metode Numerik
Perkenalkan nama saya Elvin, saya adalah seorang mahasiswa teknik mesin di Universitas Indonesia yang sedang mengambil mata kuliah Metode Numerik yang diajarkan Bapak Dr. Ir. Ahmad Indra Siswantara dan Bapak Dr. Eng. Radon Dhelika. Pada kelas ini, mahasiswa diberi pertanyaan "Mengapa harus mempelajari kalkulus?" oleh Bapak DAI (Dr. Ahmad Indra). Kalkulus merupakan ilmu dasar yang banyak digunakan pada banyak bidang ilmu lainnya, serta juga digunakan untuk membuat model matematika untuk pendekatan suatu kasus nyata serta menganalisa dan proses agar dapat mencapai penyelesaian. Dari kelas Metode Numerik ini sendiri, kami sebagai mahasiswa teknik mesin diharapkan dapat menyelesaikan masalah model matematika secara manual ataupun melalui pembelajaran bahasa pemrograman seperti bahasa C++, Python, Javascript, dan lainnya. Pada kelas Metode Numerik ini, pembelajaran kami akan berfokus pada bahasa pemrograman python yang sudah banyak digunakan secara internasional dan juga dipelajari oleh perguruan tinggi luar negeri seperti Massachusets Institute of Technology dan lainnya.
2. Bahasa Pemrograman Python
Python adalah sebuah bahasa pemrograman tingkat tinggi yang biasa digunakan oleh programmer untuk menulis rangkaian kode logik yang kemudian dapat digunakan sebagai sebuah program yang bekerja sesuai dengan keinginan atau tujuan programmer itu sendiri.
3. Tugas
Tugas yang diberikan pada 4 September 2019 adalah membuat algoritma dan program di Python untuk menyelesaikan persamaan berikut.
T(x) = (x^2 - 1) / (x - 1) (1)
secara manual, persamaan (1) dapat diselesaikan dengan mudah dengan penggunaan limit ataupun l'hopital. Akan tetapi, dikarenakan tugas ini diwajibkan untuk menggunakan Phyton, saya sendiri perlu mempelajari phyton secara keseluruhan terlebih dahulu. Dari hal sederhana seperti print ("Hello World") hingga bagaimana mengoperasikan sebuah kalkulator dengan variabel, string, operator aritmatika, conditionals (if, else, dan elif).
Untuk menyelesaikan persamaan (1), saya merancang algoritma yang diperlukan terlebih dahulu seperti pada gambar berikut.
Proses dimulai dari mendefinisikan masalah terlebih dahulu yaitu persamaan (1). Setelah itu nilai x dimasukkan ke persamaan (1) untuk mendapatkan hasil. Berdasarkan hasil yang didapatkan akan terdapat 2 pilihan. Jika hasil terdefinisi (tidak 0/0), maka perhitungan dilanjutkan seperti biasa. Akan tetapi, jika hasil tidak terdefinisi (0/0), maka perhitungan dilanjutkan dengan menggunakan limit x mendekati 1. Setelah itu, proses akan berakhir dengan mendapatkan nilai akhir dari persamaan.
Berdasarkan algoritma yang dirancang, saya menggunakan language interpreter Spyder untuk membuat rangkaian kode sebagai berikut.
Pada kode ini saya mendefinisikan persamaan (1) sebagai fungsi h(x)=f(x)/g(x) dimana fungsi f(x)=x^2-1 dan fungsi g(x)=x-1. Kemudian, mendefinisikan nilai x yang ingin dimasukkan ke persamaan. Berdasarkan nilai x tersebut, jika terjadi pembagian dengan 0 (tidak terdefinisikan), maka penyelesaian menggunakan limit yang diimport dari library sympy. berdasarkan gambar diatas yang menggunakan nilai x = 1, didapatkan hasil berikut yang terprint pada console spyder.
Sebaliknya, jika tidak terjadi pembagian dengan 0 (terdefinisikan), maka perhitungan dilanjutkan dengan biasa seperti pada gambar kode dan hasil pada console yang dibawah yang menggunakan nilai x = 5 dan mendapatkan hasil 6.
Pertemuan 2 (11 September 2019)
1. Wawasan oleh Pak DAI
Pertemuan kelas Metode Numerik pada minggu ke-2 melanjutkan pembelajaran dalam bahasa pemrograman python. Sebelum memasuki materi tersebut, Pak DAI memberikan beberapa wawasan yang penting dan menarik yang berkaitan mengenai pembelajaran metode numerik python dan pemrograman secara umum dari sudut luar pandang mahasiswa. Seperti yang kita tahu, Metode Numerik dapat digunakan untuk menyelesaikan masalah model matematika apapun dengan pendekatan yang menyerupai kondisi nyata. Hal ini dapat dibantu melalui penggunaan program contohnya python. Selain itu, manfaat dari pemrograman sendiri tidak hanya terbatas pada aplikasi metode numerik ini tetapi juga banyak digunakan untuk menghasilkan berbagai aplikasi/perangkat lunak yang banyak digunakan oleh manusia. Aplikasi ataupun perangkat lunak ini berisi berbagai algoritma dan rangkaian kode yang diisi oleh programmer yang membuatnya. Contoh secara umum adalah permainan catur digital yang banyak dimainkan memiliki puluhan ribu langkah yang diprogram untuk mengalahkan pemain.
2. Python: List and Tuples