Muhamad Adim Majid
Muhamad Adim Majid (lahir di Kudus, 22 Januari 2000) merupakan seorang mahasiswa Fakultas Teknik Universitas Indonesia, mengambil jurusan Teknik Mesin.
Pertemuan Pertama
Kalkulus Untuk Mahasiswa Teknik
Menurut Adim, mahasiswa Teknik Mesin harus belajar Kalkulus karena pada dasarnya Kalkulus adalah hal yang paling mendasar yang diperlukan untuk mempelajari hal-hal yang lebih mendalam. Ilmu-ilmu dan konsep yang dipelajari pada Kalkulus pada nantinya akan dipakai di mata kuliah lain, seperti Termodinamika Dasar dan Matematika Teknik.
Python
Python adalah bahasa pemrograman interpretatif multigunadengan filosofi perancangan yang berfokus pada tingkat keterbacaan kode. Python diklaim sebagai bahasa yang menggabungkan kapabilitas, kemampuan, dengan sintaksis kode yang sangat jelas,dan dilengkapi dengan fungsionalitas pustaka standar yang besar serta komprehensif. Python juga didukung oleh komunitas yang besar.
Pertemuan Kedua
Print "Hello World" dengan Python
Membuat tulisan di python sangatlah mudah tidak seperti bahasa pemograman yang lain cukup memberikan perintah print
print("Hello World")
Python Tuple
Masukkan Kode
tuple = ("Muhamad","Adim","Majid","Adim",(22,1,2000)) name1,name2,name3,surname,born = tuple print("Nama saya",name1,name2,name3,", biasa dipanggil",surname,". Saya muncul di bumi pada tanggal",born[0],"bulan",born[1],"tahun",born[2],".")
Akan Menghasilkan
Nama saya Muhamad Adim Majid , biasa dipanggil Adim . Saya muncul di bumi pada tanggal 22 bulan 1 tahun 2000
Pertemuan Ketiga
Menentukan Suku Ke-n Deret Fibonacci Dengan Python
1. Algoritma
1. Mulai
2. Tentukan definisi n
3. Tentukan nilai a=0 , b=1
4. Jika n<0, print "Incorrect input"
5. Dan jika n=0, kembali ke a
6. Dan jika n=1, kembali ke b
7. Selain itu, untuk i di range 2 dan seterusnya: c = a + b, a = b, b = c, return b
8. Input nilai n
9. Selesai
2. Flowchart
3. Kode di Python
def fibonacci(n): a = 0 b = 1 if n < 0: print("Incorrect input") elif n == 0: return a elif n == 1: return b else: for i in range(2,n): c = a + b a = b b = c return b Fibo = int(input('enter n: ')) print(fibonacci(Fibo))
Run dari kode di atas. Ketika dimasukkan nilai n = 30, program menampilkan suku ke-30 dari deret fibonacci yaitu 514229.
QUIZ
Problem 2.1 Nomor 6
#Numpy dimasukkan ke dalam program from numpy import linalg import numpy as np #Matriks dipecah menjadi 5 baris #Baris pertama dinotasikan sebagai barisA1, baris kedua barisA2, dst. #MatriksA sebagagai notasi dari matriks a barisA1 = [0,0,2,1,2] barisA2 = [0,1,0,2,-1] barisA3 = [1,2,0,-2,1] barisA4 = [0,0,0,-1,1] barisA5 = [0,1,-1,1,-1] MatriksA = np.array ([barisA1,barisA2,barisA3,barisA4,barisA5]) #MatriksB sebagagai notasi dari matriks b MatriksB = np.array ([1,1,-4,-2,-1]) #Perhitungan dengan modul numpy jawab = linalg.solve (MatriksA,MatriksB) hasilx1 = int(jawab[0]) hasilx2 = int(jawab[1]) hasilx3 = int(jawab[2]) hasilx4 = int(jawab[3]) hasilx5 = int(jawab[4]) #Hasil print ("Hasilnya adalah:") print ("x1=",hasilx1) print ("x2=",hasilx2) print ("x3=",hasilx3) print ("x4=",hasilx4) print ("x5=",hasilx5)
Jika kode tersebut di run maka akan memperlihatkan
Hasilnya adalah: x1= 3 x2= -2 x3= 1 x4= 1 x5= -1
Problem 7.1 Nomor 2
# x0 dan y sebagai titik asal, x yaitu 0.03, dan h sebagai tingkat ketinggian x0 = 0 y0 = 1 # pada x = 0.03 (Seperti di soal), y = 1 h = 0.008 # h dimisalkan 0.008 x = 0.03 # pers1 adalah persamaan awal soal #y' = x^2 - 4y def pers1(x, y): return (x**2 - 4*y) def RKrangekutta(x0, y0, x, h): n = (int)((x - x0)/h) y = y0 for i in range(1, n + 1): k1 = h * pers1(x0, y) k2 = h * pers1(x0 + 0.5 * h, y + 0.5 * k1) k3 = h * pers1(x0 + 0.5 * h, y + 0.5 * k2) k4 = h * pers1(x0 + h, y + k3) #X selanjutnya x0 = x0 + h #Y selanjutnya y = y + (1.0 / 6.0)*(k1 + 2 * k2 + 2 * k3 + k4) return y #Hasilnya print("hasilnya adalah") print("Nilai y(", x, ") :") print (RKrangekutta(x0, y0, x, h))
Jika kode tersebut di run maka akan memperlihatkan
hasilnya adalah Nilai y( 0.03 ) : 0.9084685163565254
UTS
Nomor 3A
from math import *
G = 9.81 Massa1 = eval(input("Massa 1 :")) Massa2 = eval(input("Massa 2 :")) Massa3 = eval(input("Massa 3 :")) P1 = eval(input("Koefisien Gesek1 :")) P2 = eval(input("Koefisien Gesek2 :")) P3 = eval(input("Koefisien Gesek3 :")) Sudut = eval(input("Sudut Teta :")) a = eval(input("percepatan:")) x = sin (Sudut) y = cos (Sudut)
T1 = Massa1*G*(x-P1*y) - Massa1*a T2 = Massa2*G*(x-P2*y) + T1 - Massa2*a T3 = Massa3*G*(x-P3*y) + T2 - Massa3*a Massa4 = -(T3 - Massa1*a)/G
print ("Massa 4 adalah :",Massa4)
Hasil
Massa1 : 10 Massa2 : 30 Massa3 : 20 Koefisien Gesek1 :1 Koefisien Gesek2 :2 Koefisien Gesek3 :3 Sudut Teta :30 percepatan :4 Massa 4 :107.87688970261921
Nomor 3B
from math import * from sympy import *
g = 9.81 ro = 1.2
dg = eval(input("Drag Coefisien :")) area = eval(input("Area m^2:")) Vakhir = eval(input("Velocity Akhir:")) M = eval(input("Massa Mobil kg:")) P = eval(input("Koefisien Gesek:")) a = eval(input("Percepatan :")) Fs = g*P F1 = a for Vawal in range (0,Vakhir) : Fdrag = (dg*area*ro*Vawal**2)/2*m atotal = F1 - (Fdrag+Fs) t = -(Vakhir)/atotal print ("Percepatan Total m/s^2 :",atotal) print ("Waktu untuk mencapai Vakhir:",t)
Hasil
Drag Coefisien : 0.1 Area m^2 :2 Velocity Akhir:10 Massa Mobil kg:1000 Koefisien Gesek:0.3 Percepatan:5 Percepatan Total m/s^2:-9717.94299999999997 Waktu untuk mencapai Vakhir:0.0010290243521700016