Pytania pomocnicze - INF.03
Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
Pytania pomocnicze rozwijające tematy z pytań egzaminacyjnych. Każde pytanie ma krótką odpowiedź, która pomaga utrwalić wiedzę i przygotować się do egzaminu. Łącznie: 6221.
Strona 54 z 81.
Na czym polega zasada superpozycji w przetwarzaniu sygnałów?
Zasada superpozycji oznacza, że odpowiedź układu na sumę sygnałów jest sumą odpowiedzi na każdy sygnał osobno. Jest to podstawowa cecha układów i filtrów liniowych.
Czym filtr liniowy różni się od filtru przyczynowego?
Filtr liniowy opisuje zależność między wejściem i wyjściem zgodną z zasadą superpozycji. Filtr przyczynowy oznacza natomiast, że sygnał wyjściowy zależy tylko od obecnych i wcześniejszych wartości sygnału wejściowego.
Czym jest filtr niezmienny w czasie?
Filtr niezmienny w czasie działa tak samo niezależnie od momentu podania sygnału. Przesunięcie sygnału wejściowego w czasie powoduje takie samo przesunięcie sygnału wyjściowego.
Co oznacza filtr o skończonej odpowiedzi impulsowej?
Filtr o skończonej odpowiedzi impulsowej, czyli FIR, reaguje na impuls tylko przez ograniczoną liczbę próbek. Nie jest to jednak definicja liniowości.
Jaki przykład operacji na sygnale można uznać za liniowy?
Przykładem jest pomnożenie sygnału przez stałą wartość albo uśrednianie kilku próbek. Takie operacje zachowują proporcje i spełniają zasadę superpozycji.
Jaki przykład operacji na sygnale jest nieliniowy?
Przykładem jest obcinanie amplitudy, czyli clipping. Taka operacja zniekształca sygnał i nie spełnia zasady superpozycji.
Co oznacza instrukcja `a++` w JavaScript?
Instrukcja `a++` zwiększa wartość zmiennej `a` o 1. Jako samodzielna instrukcja jest równoważna zapisowi `a = a + 1;`.
Jaka jest różnica między `a++` a `++a`?
`a++` to postinkrementacja — najpierw zwraca starą wartość, potem zwiększa zmienną. `++a` to preinkrementacja — najpierw zwiększa zmienną, potem zwraca nową wartość.
Czy `a++` i `a = a + 1` zawsze działają identycznie?
Jako osobne instrukcje dają ten sam efekt: zwiększają `a` o 1. Różnica może pojawić się wtedy, gdy `a++` jest częścią większego wyrażenia, ponieważ zwraca starą wartość.
Jak można skrótowo zapisać `a = a + 1`?
Można użyć operatora przypisania z dodawaniem: `a += 1;`. Ten zapis również zwiększa wartość zmiennej `a` o 1.
Dlaczego zapis `1 += a` jest niepoprawny?
Po lewej stronie operatora przypisania musi znajdować się zmienna lub inne poprawne miejsce zapisu. Liczba `1` jest stałą wartością, więc nie można jej przypisać nowej wartości.
Co oznacza operator `<<` w JavaScript?
Operator `<<` wykonuje przesunięcie bitowe w lewo. Zapis `a << 1` nie jest tym samym co `a++`, bo nie zwiększa zmiennej o 1, tylko operuje na bitach wartości liczbowej.
Co oznacza operator `&` w JavaScript?
Operator `&` to bitowe AND. Zapis `a & 1` najczęściej służy do sprawdzania najmłodszego bitu, np. czy liczba jest nieparzysta, ale nie zwiększa wartości zmiennej.
Jak rozpoznać tabelę nadrzędną w relacji jeden do wielu?
Tabela nadrzędna to ta, której jeden rekord może być powiązany z wieloma rekordami drugiej tabeli. W przykładzie tabelą nadrzędną są `rezyserzy`, bo jeden reżyser może mieć wiele filmów.
Gdzie znajduje się klucz obcy w relacji jeden do wielu?
Klucz obcy znajduje się w tabeli podrzędnej, czyli po stronie „wiele”. W tym przykładzie jest to kolumna `rezyserzy_id` w tabeli `filmy`.
Z czym łączy się klucz obcy?
Klucz obcy łączy się z kluczem podstawowym tabeli nadrzędnej. Dlatego `filmy.rezyserzy_id` wskazuje na `rezyserzy.id`.
Dlaczego odpowiedź z dwoma kluczami podstawowymi jest błędna?
Relacja między tabelami nie polega na połączeniu dwóch kluczy podstawowych. Standardowo łączy się klucz podstawowy tabeli nadrzędnej z kluczem obcym tabeli podrzędnej.
Dlaczego kolumna `rezyserzy_id` w tabeli `filmy` jest kluczem obcym?
Ponieważ przechowuje identyfikator rekordu z innej tabeli, czyli `id` reżysera z tabeli `rezyserzy`. Nie identyfikuje filmu, tylko wskazuje jego reżysera.
Co oznacza oznaczenie FK przy kolumnie w diagramie bazy danych?
FK oznacza Foreign Key, czyli klucz obcy. Informuje, że dana kolumna odwołuje się do klucza w innej tabeli.
Jaki jest praktyczny sens relacji między tabelami `rezyserzy` i `filmy`?
Relacja pozwala uniknąć wielokrotnego wpisywania tych samych danych reżysera przy każdym filmie. Dane reżysera są zapisane raz, a filmy odwołują się do nich przez identyfikator.
Dlaczego format JPEG jest najczęściej używany do zapisu zdjęć?
JPEG dobrze kompresuje fotografie, znacznie zmniejszając rozmiar pliku. Dopuszcza jednak niewielką utratę jakości, co zwykle jest akceptowalne przy zdjęciach.
Czym różni się kompresja stratna od bezstratnej?
Kompresja stratna usuwa część danych i może pogorszyć jakość obrazu. Kompresja bezstratna zachowuje wszystkie dane, więc obraz po dekompresji jest identyczny z oryginałem.
Dlaczego PNG nie jest poprawną odpowiedzią w tym pytaniu?
PNG stosuje kompresję bezstratną, więc nie jest typowym formatem zdjęć z kompresją stratną. Lepiej nadaje się do grafik, ikon, zrzutów ekranu i obrazów z przezroczystością.
Dlaczego GIF nie jest najlepszym formatem do zdjęć?
GIF obsługuje ograniczoną paletę 256 kolorów, co źle sprawdza się w fotografiach. Częściej używa się go do prostych animacji i grafik o małej liczbie kolorów.
Co oznaczają artefakty kompresji JPEG?
Artefakty to widoczne zniekształcenia obrazu powstałe przez zbyt silną kompresję stratną. Mogą mieć postać bloków, rozmyć lub przebarwień.
Kiedy lepiej użyć PNG zamiast JPEG?
PNG warto wybrać, gdy ważna jest idealna jakość, ostre krawędzie, tekst, logo lub przezroczystość. JPEG lepiej sprawdza się przy fotografiach.
Do czego służy funkcja AVG() w SQL?
Funkcja `AVG()` oblicza średnią arytmetyczną wartości z wybranej kolumny. W tym pytaniu służy do obliczenia średniej ocen ucznia.
Dlaczego poprawne zapytanie zaczyna się od SELECT, a nie od AVG?
W SQL zapytanie pobierające dane rozpoczyna się od instrukcji `SELECT`. Funkcja `AVG()` jest elementem listy wybieranych danych, dlatego zapisuje się ją po `SELECT`.
Jaką rolę pełni warunek WHERE uczenID = 7?
Warunek ogranicza obliczenia tylko do rekordów ucznia, którego identyfikator wynosi `7`. Bez niego średnia zostałaby policzona dla wszystkich uczniów.
Czym różni się AVG(ocena) od COUNT(ocena)?
`AVG(ocena)` oblicza średnią ocen, natomiast `COUNT(ocena)` zlicza liczbę niepustych ocen. Dlatego `COUNT()` nie odpowiada na pytanie o średnią.
Czy w zapytaniu SELECT AVG(ocena) FROM przedmioty WHERE uczenID=7; potrzebne jest GROUP BY?
Nie, ponieważ średnia ma być obliczona tylko dla jednego ucznia wskazanego w `WHERE`. `GROUP BY` byłoby potrzebne np. do obliczenia średniej osobno dla każdego ucznia.
Jak obliczyć średnią ocen dla każdego ucznia osobno?
Należy użyć grupowania po identyfikatorze ucznia: `SELECT uczenID, AVG(ocena) FROM przedmioty GROUP BY uczenID;`.
Dlaczego defragmentacja dysku nie zabezpiecza serwera bazy danych przed atakami?
Defragmentacja dotyczy organizacji danych na dysku, a nie kontroli dostępu, haseł, portów czy uprawnień. Może mieć znaczenie administracyjne lub wydajnościowe, ale nie jest mechanizmem bezpieczeństwa.
Jaką rolę pełni zapora sieciowa przy ochronie serwera bazy danych?
Zapora filtruje ruch sieciowy i może blokować połączenia do portów bazy danych z nieautoryzowanych adresów. Dzięki temu ogranicza możliwość bezpośrednich ataków na usługę bazy.
Dlaczego silne hasła są ważne w bazie danych?
Silne hasła utrudniają odgadnięcie danych logowania metodą brute force lub słownikową. Szczególnie ważne jest zabezpieczenie kont administracyjnych.
Co oznacza blokowanie portów związanych z bazą danych?
Oznacza uniemożliwienie połączeń do portów, na których działa serwer bazy, np. MySQL na 3306. Dostęp powinny mieć tylko zaufane hosty lub aplikacje.
Dlaczego nie należy udostępniać serwera bazy danych bezpośrednio w Internecie?
Publicznie dostępny serwer jest narażony na skanowanie, próby logowania i wykorzystanie podatności. Bezpieczniej ograniczyć dostęp do wybranych adresów IP lub sieci wewnętrznej.
Jak uprawnienia użytkowników wpływają na bezpieczeństwo bazy danych?
Użytkownik powinien mieć tylko takie uprawnienia, jakie są mu potrzebne do pracy. Ogranicza to skutki ewentualnego przejęcia konta.
Jakie działania administracyjne mogą zwiększyć bezpieczeństwo serwera bazy danych?
Należą do nich aktualizacje, konfiguracja zapory, silne hasła, ograniczenie portów, kopie zapasowe i kontrola uprawnień. Ważne jest też usuwanie nieużywanych kont.
Do czego służy instrukcja INSERT INTO w SQL?
Instrukcja INSERT INTO służy do dodawania nowych wierszy do tabeli w bazie danych. Jest to jedna z podstawowych instrukcji modyfikujących dane.
Jaka jest podstawowa składnia polecenia INSERT INTO?
Najczęściej używa się składni: INSERT INTO tabela (kolumna1, kolumna2) VALUES (wartosc1, wartosc2). Lista kolumn powinna odpowiadać kolejności podanych wartości.
Czy INSERT INTO tworzy nową tabelę?
Nie. INSERT INTO dodaje dane do już istniejącej tabeli. Do tworzenia tabel służy instrukcja CREATE TABLE.
Do jakiej grupy poleceń SQL należy INSERT INTO?
INSERT INTO należy do DML, czyli Data Manipulation Language. Są to polecenia służące do operowania na danych, np. INSERT, UPDATE i DELETE.
Czym różni się INSERT INTO od SELECT?
INSERT INTO dodaje nowe dane do tabeli, natomiast SELECT służy do odczytywania danych z bazy. SELECT nie tworzy nowych wierszy.
Jakie polecenie SQL służy do zmiany istniejącego wiersza?
Do zmiany istniejących danych służy instrukcja UPDATE. INSERT INTO dodaje nowy wiersz, a UPDATE modyfikuje już zapisany rekord.
Jakie polecenie SQL służy do usuwania wierszy z tabeli?
Do usuwania wierszy z tabeli służy instrukcja DELETE FROM. Należy zwykle stosować ją z warunkiem WHERE, aby nie usunąć wszystkich rekordów.
Do czego służy słowo kluczowe `unsigned` w C++?
`unsigned` oznacza typ całkowity bez znaku. Taka zmienna może przechowywać tylko wartości nieujemne, czyli zero i liczby dodatnie.
Jaka jest różnica między `int` a `unsigned int`?
`int` może przechowywać liczby ujemne i dodatnie. `unsigned int` przechowuje tylko liczby nieujemne, ale ma większy zakres wartości dodatnich.
Czy `long` ogranicza zmienną do liczb nieujemnych?
Nie. `long` zwiększa zakres typu całkowitego, ale nadal może przechowywać liczby ujemne, jeśli nie zostanie użyte z `unsigned`.
Czy `short` oznacza typ bez znaku?
Nie. `short` oznacza krótszy typ całkowity o mniejszym zakresie. Aby był bez znaku, trzeba zapisać `unsigned short`.
Czy `const` ma związek z zakresem liczb?
Nie. `const` oznacza, że wartość zmiennej nie może zostać zmieniona po inicjalizacji. Nie decyduje o tym, czy liczba może być ujemna.
Z jakimi typami można stosować `unsigned`?
`unsigned` stosuje się głównie z typami całkowitymi, np. `int`, `short`, `long`, `long long` i czasem `char`. Nie stosuje się go z typami zmiennoprzecinkowymi, takimi jak `float` czy `double`.
Do czego służy właściwość CSS float?
Właściwość `float` pozwala przesunąć element do lewej lub prawej strony, a pozostała treść może go opływać. Typowy przykład to obrazek ustawiony obok tekstu.
Co oznacza zapis float: left;?
`float: left;` ustawia element po lewej stronie kontenera. Tekst lub inne elementy mogą układać się obok niego po prawej stronie.
Dlaczego odpowiedź align: left; jest niepoprawna?
`align` nie jest poprawną właściwością CSS służącą do opływania elementu. W CSS do takiego efektu używa się między innymi `float`.
Czym różni się float od text-align?
`float` zmienia sposób opływania elementu przez treść, np. obrazka przez tekst. `text-align` służy głównie do wyrównywania zawartości tekstowej w poziomie.
Jak zatrzymać opływanie elementu ustawionego za pomocą float?
Do zatrzymania opływania używa się właściwości `clear`, np. `clear: both;`. Powoduje ona, że element zaczyna się poniżej elementów pływających.
Czy element img domyślnie jest elementem blokowym czy liniowym?
Element `img` jest domyślnie elementem liniowym. Jednak zastosowanie `float` zmienia jego zachowanie w układzie strony.
Dlaczego tabela z kolumną zawierającą cały adres może być uznana za nieznormalizowaną?
Ponieważ jedna komórka przechowuje kilka informacji jednocześnie, np. ulicę, numer, kod pocztowy i miasto. Narusza to zasadę atomowości danych wymaganą w pierwszej postaci normalnej.
Co oznacza atomowość danych w bazie danych?
Atomowość oznacza, że pojedyncze pole tabeli powinno zawierać jedną, niepodzielną informację. Przykładowo miasto i kod pocztowy powinny być osobnymi kolumnami.
Jak poprawić tabelę, w której adres zapisano w jednej kolumnie?
Należy rozbić adres na osobne pola, np. ulica, numer budynku, kod pocztowy i miasto. Dzięki temu dane są łatwiejsze do wyszukiwania, filtrowania i aktualizacji.
Czym różni się pierwsza postać normalna od drugiej i trzeciej?
Pierwsza postać normalna wymaga atomowych wartości w komórkach. Druga usuwa zależności częściowe od klucza złożonego, a trzecia usuwa zależności przechodnie między kolumnami niekluczowymi.
Jakie problemy może powodować brak normalizacji tabeli?
Może prowadzić do powielania danych, trudności w aktualizacji i błędów spójności. Przykładowo zmiana miasta lub kodu pocztowego może wymagać modyfikacji wielu tekstowych wpisów.
Czy każda tabela z małą liczbą kolumn jest automatycznie poprawnie znormalizowana?
Nie. Liczba kolumn nie decyduje o normalizacji. Ważne jest to, czy kolumny przechowują pojedyncze, logiczne wartości i czy między danymi nie występują niepoprawne zależności.
Dlaczego osobna kolumna z miastem jest praktyczna w bazie danych?
Pozwala łatwo wyszukiwać, filtrować i grupować rekordy według miasta. Gdy miasto jest ukryte w długim tekście adresu, takie operacje są trudniejsze i mniej niezawodne.