October 26, 2025, Sunday, 298

Języki Programowania 4

From MJanik

(Difference between revisions)
Jump to: navigation, search
Line 3: Line 3:
Więcej informacji na ten temat można znaleźć na Wykładzie 2 Prof. Zbroszczyk (slajdy dostępne na MS Teams).
Więcej informacji na ten temat można znaleźć na Wykładzie 2 Prof. Zbroszczyk (slajdy dostępne na MS Teams).
-
 
+
program w języku C++, który:
-
== Zadanie: Tablice dynamiczne 1D i 2D w C++ ==
+
-
 
+
-
Napisz program w języku C++, który:
+
# Wczytuje liczbę '''n''' – rozmiar tablicy jednowymiarowej typu ''int''.
# Wczytuje liczbę '''n''' – rozmiar tablicy jednowymiarowej typu ''int''.

Revision as of 09:49, 16 October 2025

Tematem zajęć numer 4 będą tablice i wskaźniki. W szczególności dynamiczna alokacja pamięci dla tablic 1- i 2-wymiarowych.

Więcej informacji na ten temat można znaleźć na Wykładzie 2 Prof. Zbroszczyk (slajdy dostępne na MS Teams).

program w języku C++, który:
  1. Wczytuje liczbę n – rozmiar tablicy jednowymiarowej typu int.
  2. Dynamicznie alokuje tablicę jednowymiarową o rozmiarze n i wypełnia ją kolejnymi liczbami całkowitymi od 1 do n.
  3. Tworzy dynamicznie tablicę dwuwymiarową n × n, w której element [i][j] jest równy iloczynowi tab1[i] * tab1[j].
  4. Wypisuje tablicę dwuwymiarową w formie macierzy.
  5. Zwalnia całą zaalokowaną pamięć (delete[], delete[][]).

Przykład działania programu:

Podaj n: 3
1 2 3
2 4 6
3 6 9


Dynamiczne tworzenie tablic dwuwymiarowych w C++:

int **tab = new int* [5]; 
for (int i = 0; i < 5; ++i) 
   tab[i] = new int [10]; 

W ten sposób stworzono tablicę dwuwymiarową którą statycznie zadeklarowalibyśmy jako:

int tab[5][10];

Należy również zwolnić pamięć dla dynamicznie zadekladowanej tablicy:

    for (int x = 0; x < 5; x++)
      delete [] tab[x];
    delete [] tab;