"Telekamunikatsiya texnologiyalari" kafedrasi tt22-03 guruh talabasi Yarashov Jamshidning 2 мustaqil ta’lim ish hisoboti Algoritmlarni loyihalash fanidan



Yüklə 29,13 Kb.
səhifə3/3
tarix07.01.2024
ölçüsü29,13 Kb.
#202731
1   2   3
Yarashov Jamshid

3-MUSTAQIL ISH TOPSHIRIQLARI

import numpy as np

def simplex_iteration(tableau):


nrows, ncols = tableau.shape
pivot_col = np.argmin(tableau[0, :-1])
if tableau[0, pivot_col] >= 0:
return None
pivot_row = None
min_ratio = float('inf')
for i in range(1, nrows):
if tableau[i, pivot_col] > 0:
ratio = tableau[i, -1] / tableau[i, pivot_col]
if ratio < min_ratio:
min_ratio = ratio
pivot_row = i
return pivot_row, pivot_col

def simplex_solve(c, A, b):


nrows, ncols = A.shape
tableau = np.zeros((nrows+1, ncols+1))
tableau[0, :-1] = -c
tableau[1:, :-1] = A
tableau[1:, -1] = b
while True:
pivot = simplex_iteration(tableau)
if pivot is None:
break
pivot_row, pivot_col = pivot
tableau[pivot_row] /= tableau[pivot_row, pivot_col]
for i in range(nrows+1):
if i != pivot_row:
tableau[i] -= tableau[i, pivot_col] * tableau[pivot_row]
return tableau[0, -1]

c = np.array([5, 3, 1])


A = np.array([[3, 1, 1],
[4, 5, 1],
[9, 4, 1]])
b = np.array([20, 14, 7])

solution = simplex_solve(c, A, b)


print("Optimal solution:", solution)


5-MUSTAQIL ISH TOPSHIRIQLARI

# Masala class


class Masala:
def __init__(self, raqam, yechim, talaba, jurnal_id):
self.raqam = raqam
self.yechim = yechim
self.talaba = talaba
self.jurnal_id = jurnal_id

# Masala yechish uchun funksiya


def masala_yechish(jurnal_id, masalalar):
masala_list = []
for masala in masalalar:
if masala.jurnal_id == jurnal_id:
masala_list.append(masala)
return masala_list

# Masalalar ro'yxati


masalalar = [
Masala(1, "Masala yechimi 1", "Talaba A", 1),
Masala(2, "Masala yechimi 2", "Talaba B", 1),
Masala(3, "Masala yechimi 1", "Talaba A", 2),
Masala(4, "Masala yechimi 2", "Talaba B", 2),
Masala(5, "Masala yechimi 3", "Talaba C", 2),
Masala(6, "Masala yechimi 1", "Talaba A", 3),
Masala(7, "Masala yechimi 2", "Talaba B", 3),
Masala(8, "Masala yechimi 3", "Talaba C", 3)
]

jurnal_id = 1


masalalar_jurnali = masala_yechish(jurnal_id, masalalar)
print("Jurnal raqami", jurnal_id, "uchun masalalar:")
for masala in masalalar_jurnali:
print("Masala raqami:", masala.raqam, "Yechim:", masala.yechim, "Talaba:", masala.talaba)
Yüklə 29,13 Kb.

Dostları ilə paylaş:
1   2   3




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©www.azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin