Podsumowanie — tablice wielowymiarowe
Część sekcji Logika i sterowanie przepływem ścieżki C# w Coddy. Lekcja 7 z 66.
Wyzwanie
ŚredniUtwórz metodę o nazwie processMatrix, która:
- Przyjmuje jako parametr poszarpaną tablicę liczb całkowitych (
int[][] matrix) - Zwraca nową poszarpaną tablicę, w której:
- Każdy element zostaje zastąpiony sumą jego sąsiednich elementów (góra, dół, lewo, prawo)
- W przypadku elementów na krawędziach uwzględniane są tylko istniejące sąsiednie elementy
- Oryginalna tablica nie powinna zostać zmodyfikowana
Na przykład dla tablicy:
[2, 3, 4]
[5, 6, 7]
[8, 9, 10]Wynik powinien być następujący:
[8, 12, 10]
[16, 24, 20]
[14, 24, 16]Na przykład wartość 6 na środku zmienia się w 24, ponieważ jej sąsiednie wartości to 3, 9, 5 i 7, a 3+9+5+7=24.
Spróbuj swoich sił
public class ProcessMatrix
{
public static int[][] processMatrix(int[][] matrix)
{
// Wpisz tutaj swój kod
}
}Wszystkie lekcje w sekcji Logika i sterowanie przepływem
1Tablice wielowymiarowe
Podstawy tablic 2DDeklarowanie i inicjalizacja tablic 2DDostęp do elementów tablic 2DZagnieżdżone pętle z tablicami 2DTablice postrzępionePodstawowe operacje na macierzachPodsumowanie — tablice wielowymiarowe4Techniki sterowania przepływem
Wczesne zwrotyKlauzule ochronneInstrukcje skoku (goto)Break i continueSpłaszczanie zagnieżdżonych warunków7Zaawansowane operatory logiczne
Ewaluacja z krótkim spięciemWarunkowe operatory logicznePriorytet operatorówPowtórzenie — zaawansowane operatory2Zaawansowane podejmowanie decyzji
Wiele warunkówZłożona logika Boole’aPorównanie if i switchZagnieżdżone instrukcje switchPodsumowanie — zaawansowane decyzje5Obsługa wyjątków
Podstawy try-catchTypy wyjątkówWiele bloków catchPraca z plikamiBlok finallyusing a try-finallyWłasne wyjątkiPowtórzenie — obsługa błędów3Udoskonalenia pętli
Wydajność pętliIterowanie po złożonych strukturachKażdy typ pętliRefaktoryzacja pętliPodsumowanie — zoptymalizowane pętle6Obsługa wartości null
Podstawy referencji nullTypy wartości dopuszczające nullWzorce sprawdzania nullProgramowanie defensywnePodsumowanie — bezpieczeństwo nullPoćwicz samodzielnie: Kompilator C# online