Untitled
unknown
plain_text
a year ago
1.9 kB
6
Indexable
def wyswietl_macierz(macierz, n): for i in range(n): print(*macierz[i]) def wykonaj_operacje(macierz, n): i, j, k, c, flag, m, pro = 0, 0, 0, 0, 0, 0, 0 for i in range(n): if all(macierz[i][j] == 0 for j in range(n)) and macierz[i][n] != 0: # Wszystkie zmienne x, y, z, ..., w są równe zero, ale wynik jest różny od zera return 3 for i in range(n): if (macierz[i][i] == 0): c = 1 while ((i + c) < n and macierz[i + c][i] == 0): c += 1 if ((i + c) == n): flag = 1 break j = i for k in range(1 + n): temp = macierz[j][k] macierz[j][k] = macierz[j+c][k] macierz[j+c][k] = temp for j in range(n): if (i != j): p = macierz[j][i] / macierz[i][i] k = 0 for k in range(n + 1): macierz[j][k] = macierz[j][k] - (macierz[i][k]) * p return flag def wyswietl_wynik(macierz, n, flag): print("Wynik: ") if (flag == 2): print("Istnieje nieskończoność rozwiązań") elif (flag == 3): print("Brak rozwiązania") else: for i in range(n): print(macierz[i][n] / macierz[i][i], end=" ") def sprawdz_konsekwencje(macierz, n, flag): flag = 3 for i in range(n): suma = 0 for j in range(n): suma = suma + macierz[i][j] if (suma == macierz[i][j]): flag = 2 return flag S macierz_Rozszerzona = [[0, 0, 0, 0, -3], [0,0,0,0,0], [0, 0, 0,0, 0], [0, 0, 0, 0, 0]] rozmiar = 4 flaga = 0 flaga = wykonaj_operacje(macierz_Rozszerzona, rozmiar) if (flaga == 1): flaga = sprawdz_konsekwencje(macierz_Rozszerzona, rozmiar, flaga) wyswietl_wynik(macierz_Rozszerzona, rozmiar, flaga)
Editor is loading...
Leave a Comment