Mam spory problem z ćwiczeniem. Miałem stworzyć macierz dwuwymiarową na podstawie klasy i dodać do niej kilka metod.
- Pierwszy problem jest taki, że wektory wiersza mam przygotować za pomocą ,,TypedArray" (dokładny cytat: ,,Wykorzystaj zwykłą tablicę (Array) do przechowania wektorów wiersza. Wektory wiersza przygotuj przy pomocy TypedArray." TypedArray odnosi się do danych binarnych, które jeszcze kiepsko rozumiem, nie do końca też rozumiem o jakie wektory chodzi - więc jak na razie tablicę stworzyłem taką, jaką potrafiłem...
- Drugi problem, na który natrafiłem, to problem z definiowaniem przesyłanych do metody zmiennych. Próbowałem na różne sposoby, bezskutecznie.
(Dopóki zmieniam wartość w danej komórce jeszcze w konstruktorze - działa).
Dokładna treść tego fragmentu zadania to: ,,Konstruktor klasy powinien przyjmować zadany rozmiar x, y. Domyślna wartość wewnątrz macierzy powinna wynosić 0. Dopisz do klasy metodę setValue z trzema parametrami x, y, value, która będzie służyła do przypisywania wartość w zadanym rzędzie i kolumnie."
Poniżej zamieszczam kod, który mam na chwilę obecną.
<!DOCTYPE html>
<html>
<head>
<title>Tablica dwuwymiarowa</title>
<meta charset="UTF-8"> </head>
<body>
<p id="screen"></p>
<script>
class Macierz{
constructor (x,y){
this.x=x;
this.y=y;
var onScreen = '';
let table =[];
for (var i = 0; i < x; i++) {
table[i] = [];
}
for (var i = 0; i < x; i++) {
for (var j = 0; j < y; j++) {
table[i][j] = 0,0;
}}
table[2][2]=5;
for (var i = 0; i < x; i++) {
for (var j = 0; j < y; j++) {
onScreen += table[i][j] + " | ";
}
onScreen += '<br>';
}
document.getElementById("screen").innerHTML = onScreen;
}
setValue(value,x,y){
this.x=x;
this.y=y;
this.table[x][y]=value;
}
}
const m = new Macierz(13,7);
m.setValue(4,2,2);
</script>
</body>
</html>