O‘ZBEKISTON RESPUBLIKASI AXBOROT TEXNOLOGIYALARI VA
KOMMUNIKATSIYALARINI RIVOJLANTIRISH VAZIRLIGI
MUHAMMAD AL-XORAZMIY NOMIDAGI TOSHKENT AXBOROT TEXNOLOGIYALARI UNIVERSITETI
“KOMPYUTER TIZIMLARI” kafedrasi
Ma’lumotlarni intellektual tahlili fanidan tayyorlagan
“Python dasturlash tili sintaksisi va GAUS usulida chiziqli tenglamalar sistemasini yeshish” mavzusidagi
AMALIY MASHG‘ULOT ISHI
213-20 guruh talabasi
Abdumannobov Diyorbek
KT kafedrasi asistenti
_________A.A.Temirov________
Toshkent – 2022
Mashg’ultoning maqsadi: Python dasturlash tili sintaksisi va GAUS usulida chiziqli tenglamalar sistemasini yechish.
Kirish: Dasturlash tillari matematik algoritmlarni amalga oshirish va real dunyo muammolarini hal qilishda hal qiluvchi rol o'ynaydi. O'zining soddaligi va o'qilishi bilan mashhur bo'lgan Python matematik hisob-kitoblar va ilmiy ilovalar uchun keng qo'llaniladi. Ushbu topshiriqda biz Python dasturlash tilining sintaksisini o'rganamiz va uni Gauss usuli yordamida chiziqli tenglamalar tizimini echishda qo'llaymiz.
Python sintaksisi.
O'zgaruvchilar va ma'lumotlar turlari: Pythonda o'zgaruvchilar ma'lumotlarni saqlash va boshqarish uchun ishlatiladi. Asosiy ma'lumotlar turlariga integers floating-point sonlar, satrlar va strings Booleans kiradi. Bu erda qisqacha ma'lumot:
# O'zgaruvchini e’lon qilish misoli.
x = 5
y = 3.14
name = "John"
is_valid = True
List lar va NumPy massivlari:
Listlar Python-da ko'p qirrali ma'lumotlar tuzilmalari bo'lib, NumPy massivlari esa samarali raqamli operatsiyalarni ta'minlaydi. Bu matritsalarni ifodalash va manipulyatsiya qilish uchun zarur bo'ladi.
# List yaratishga misol
my_list = [1, 2, 3, 4]
# NumPy massivlaridan foydalanishga misol
import numpy as np
matrix = np.array([[1, 2], [3, 4]])
Funktsiyalar va boshqaruv tuzilmalari:
Funktsiyalar kodni qayta foydalanish mumkin bo'lgan bloklarga ajratish imkonini beradi va tsikllar va shartlar kabi boshqaruv tuzilmalari dastur oqimini osonlashtiradi.
# Funktsiyaga misol
def square(x):
return x ** 2
# Tskilga misol
for i in range(5):
print(i)
# Shartli ifodaga misol
if x > 0:
print("Positive")
else:
print("Non-positive")
Chiziqli tenglamalarni yechish tizimlari:
Gauss usuli - kengaytirilgan matritsani satr eshelon shakliga aylantirish orqali chiziqli tenglamalar tizimini yechish uchun ishlatiladigan algoritm. Bosqichlar yuqori uchburchak shaklini yaratish va orqa o'rindiqni o'zgartirishni o'z ichiga oladi.
import numpy as np
def gauss_elimination(A, b):
n = len(b)
augmented_matrix = np.column_stack((A, b))
for i in range(n):
pivot_row = augmented_matrix[i, :]
for j in range(i + 1, n):
factor = augmented_matrix[j, i] / pivot_row[i]
augmented_matrix[j, :] -= factor * pivot_row
x = np.zeros(n)
for i in range(n - 1, -1, -1):
x[i] = (augmented_matrix[i, -1] - np.dot(augmented_matrix[i, i+1:n], x[i+1:])) / augmented_matrix[i, i]
return x
A = np.array([[2, 1, -1], [-3, -1, 2], [-2, 1, 2]])
b = np.array([8, -11, -3])
solution = gauss_elimination(A, b)
print("Solution:", solution)
Ushbu topshiriqda biz Python sintaksisining asoslarini ko'rib chiqdik va ularni chiziqli tenglamalar tizimini echish uchun Gauss usulini amalga oshirish uchun qo'lladik. Dasturlash va matematik algoritmlarning asoslarini tushunish bizni turli sohalardagi turli muammolarni hal qilishga yordam beradi.
Dostları ilə paylaş: |