KWALIFIKACJA INF3 - STYCZEŃ 2021 (test 2)

PYTANIE NR 31.
Wskaż typ złożony.
A.
B.
C.
D.
Wyjaśnienie poprawnej odpowiedzi:
Typ złożony (nieprymitywny) opisuje strukturę składającą się z pól i/lub metod, zwykle tworzoną przez programistę. class odnosi się do klasy, czyli konstrukcji obiektowej służącej do definiowania takich struktur. Natomiast bool, float i char to typy proste, przechowujące pojedynczą wartość.

Pełne wyjaśnienie:

W programowaniu często rozróżnia się typy proste (prymitywne) oraz typy złożone. Typy proste przechowują pojedynczą wartość o ustalonej reprezentacji (np. znak, liczba, wartość logiczna). Typy złożone służą do opisu bardziej rozbudowanych danych: mogą łączyć wiele pól, a w podejściu obiektowym także zachowania (metody).

Poprawna odpowiedź: class
Klasa jest konstrukcją używaną do definiowania nowych typów złożonych (np. obiektów), które mogą zawierać pola (dane składowe) i metody (operacje). W typowym ujęciu dydaktycznym klasy zalicza się do typów złożonych/nieprymitywnych, bo pozwalają tworzyć struktury z wielu elementów.

Dlaczego pozostałe odpowiedzi są niepoprawne?

  • bool – to typ prosty przechowujący wartość logiczną (prawda/fałsz). Nie opisuje struktury złożonej z wielu pól.
  • float – to typ prosty liczbowy (zmiennoprzecinkowy). Choć wewnętrznie ma określoną reprezentację, z punktu widzenia programisty jest to pojedyncza wartość liczbowa, a nie typ złożony.
  • char – to typ prosty przeznaczony do zapisu pojedynczego znaku (lub małej liczby całkowitej w zależności od języka). Również nie jest typem złożonym.

Wskazówka egzaminacyjna: jeśli w odpowiedziach występują nazwy typu wartościowego (bool/char/liczby) oraz konstrukcja obiektowa (class), to "złożony" zwykle oznacza "tworzony z wielu elementów" i prowadzi do wyboru klasy/obiektu.

Dodatkowe pytania

Dodatkowe pytania (FAQ):
Typ złożony to taki, który może składać się z wielu elementów (np. pól) i często jest definiowany przez programistę. Przykłady to struktury, rekordy i klasy. W odróżnieniu od typów prostych nie opisuje tylko jednej, elementarnej wartości.
Typy proste to zwykle wartości elementarne: logiczne, znakowe i liczbowe (np. bool, char, liczby całkowite i zmiennoprzecinkowe). Typy złożone to konstrukcje grupujące dane (np. struct/record/class) i często pozwalają tworzyć własne modele danych.
Klasa służy do zdefiniowania obiektu z wieloma składowymi: polami (danymi) i metodami (zachowaniem). To oznacza, że opisuje "złożoną" strukturę, a nie pojedynczą wartość. W praktyce klasy tworzą typy domenowe w aplikacjach.
bool opisuje wartość logiczną (prawda/fałsz). Używa się go w warunkach if, pętlach i flagach stanu (np. czy użytkownik jest zalogowany). To typ prosty, bo przechowuje jedną, elementarną informację.
float to typ liczbowy zmiennoprzecinkowy do wartości z częścią ułamkową. Stosuje się go np. w obliczeniach przybliżonych. Mimo że reprezentacja jest technicznie złożona, w klasyfikacji typów danych jest to typ prosty (pojedyncza wartość).
char służy do przechowywania pojedynczego znaku lub małej wartości liczbowej zależnie od języka. Używa się go m.in. przy pracy z tekstem na niskim poziomie oraz w tablicach znaków. To typ prosty, bo opisuje pojedynczy element.
W aplikacjach webowych typami złożonymi są np. obiekty opisujące użytkownika, zamówienie czy produkt. Często są implementowane jako klasy, które łączą wiele pól (np. id, email, rola) i metody (np. walidacja, obliczenia).
Różne języki inaczej nazywają i klasyfikują typy: czasem "class" jest słowem kluczowym, czasem "typem" w sensie definicji, a gdzie indziej typy złożone to np. obiekty lub rekordy. Dlatego na egzaminie warto znać konwencję używaną w kursie.
Częsty błąd to mylenie "złożony" z "większy" albo "bardziej skomplikowany liczbowo", przez co wybiera się float zamiast konstrukcji obiektowej. Inny błąd to przenoszenie skojarzeń między językami bez sprawdzenia, jak dana kategoria jest definiowana w danym języku.
Powtórz listę typów prostych i ich zastosowania oraz naucz się rozpoznawać typy definiowane przez programistę (klasy/struktury/obiekty). Przećwicz krótkie zadania: dobierz typ do opisu danych i wskaż, które elementy kodu tworzą typ złożony.
info

Statystycznie 74% uczniów zna prawidłową odpowiedź. średnio łatwe

Specjaliści zwracają uwagę: "Typ złożony (nieprymitywny) opisuje strukturę składającą się z pól i/lub metod, zwykle tworzoną przez programistę."

Źródła:

  • cppreference.com: "Fundamental types" (bool, char, floating-point types) https://en.cppreference.com/w/cpp/language/types (dostęp: 2026-02-18)
  • cppreference.com: "Class" (definicja klasy jako konstrukcji z polami i metodami) https://en.cppreference.com/w/cpp/language/class (dostęp: 2026-02-18)
  • Microsoft Learn: "C# built-in types" (bool, char, float jako typy wbudowane/prymitywne) https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/built-in-types (dostęp: 2026-02-18)

Materiały:

  • Dokumentacja języka programowania używanego na zajęciach (sekcja o typach danych i klasach)
  • Materiały o programowaniu obiektowym (klasa, obiekt, pola, metody)
  • Ćwiczenia: rozróżnianie typów prostych i złożonych na przykładach kodu

Aktualizacja pytania: 31.03.2026



Aktualizacja pytania: 31.03.2026
📡 Brak połączenia internetowego