Pytania pomocnicze - INF.04
Projektowanie, programowanie i testowanie aplikacji
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: 1207.
Strona 11 z 11.
Co robi metoda push_back() w kontenerze vector w C++?
Metoda push_back() dodaje nowy element na końcu wektora. Po każdym wywołaniu rozmiar vectora zwiększa się o 1.
Co robi metoda `push_back()` w kontenerze `vector`?
Metoda `push_back()` dodaje nowy element na końcu wektora. Nie usuwa żadnych istniejących elementów.
Jakie wartości zostaną zapisane w wektorze liczby po wykonaniu tej pętli?
Do wektora trafią kolejne liczby parzyste: 0, 2, 4, 6, 8, 10, 12, 14, 16, 18. Pętla wykona się dla i od 0 do 9.
Ile razy wykona się pętla `for(int i = 0; i < 10; i++)`?
Pętla wykona się 10 razy, dla wartości `i` od 0 do 9 włącznie.
Dlaczego elementy są dodawane na końcu, a nie na początku wektora?
Ponieważ użyto metody push_back(), która zawsze dopisuje element na końcu kontenera. Dodawanie na początku wymagałoby innej operacji, np. insert().
Jakie wartości zostaną dodane do wektora w kodzie `liczby.push_back(2 * i)`?
Zostaną dodane kolejne parzyste wartości: 0, 2, 4, 6, 8, 10, 12, 14, 16 i 18.
Ile razy wykona się pętla for w podanym kodzie?
Pętla wykona się 10 razy, ponieważ zmienna i przyjmuje wartości od 0 do 9. Warunek i < 10 przestaje być spełniony dla i = 10.
Czym różni się `vector` od zwykłej tablicy w C++?
`vector` może dynamicznie zmieniać rozmiar podczas działania programu. Zwykła tablica ma najczęściej ustalony rozmiar.
Jaką rolę pełni wyrażenie 2*i w instrukcji push_back(2*i)?
Oblicza wartość dodawaną do wektora w każdej iteracji. Dzięki temu do vectora trafiają kolejne wielokrotności liczby 2.
Która metoda usuwa element z końca wektora?
Do usuwania ostatniego elementu służy metoda `pop_back()`. W odróżnieniu od `push_back()` nie dodaje ona danych, tylko je usuwa.
Czym różni się vector od zwykłej tablicy w C++ w kontekście dodawania elementów?
Vector może dynamicznie zmieniać swój rozmiar i wygodnie dodawać elementy metodą push_back(). Zwykła tablica ma stały rozmiar ustalony przy tworzeniu.
Jaki będzie rozmiar wektora po wykonaniu podanej pętli?
Rozmiar wektora będzie równy 10, ponieważ w każdej z 10 iteracji dodawany jest jeden element.
Jak policzyć, ile razy w schemacie blokowym sprawdzany jest warunek pętli?
Trzeba prześledzić kolejne wartości zmiennej sterującej i zliczyć każde wejście do bloku decyzyjnego. Liczy się także ostatnie sprawdzenie, które kończy pętlę.
Jak ustalić, ile razy sprawdzany jest warunek w schemacie blokowym?
Należy prześledzić kolejne wartości zmiennych dochodzących do bloku warunkowego. Liczy się każde sprawdzenie warunku, także to ostatnie, które daje wynik fałsz.
Dlaczego w tym algorytmie warunek n<7 jest sprawdzany 6 razy, a nie 7?
Zmienne startują od n=1, ale warunek jest sprawdzany dopiero po wykonaniu instrukcji s+=n i n++. Do bloku warunku trafiają więc kolejno wartości n: 2, 3, 4, 5, 6, 7, czyli 6 sprawdzeń.
Dlaczego w tym algorytmie warunek n < 7 jest sprawdzany 6 razy?
Po każdej instrukcji `n++` sprawdzane są kolejno wartości `n`: 2, 3, 4, 5, 6 i 7. Ostatnie sprawdzenie `7 < 7` jest fałszywe, ale nadal jest weryfikacją warunku.
Jaki typ pętli odpowiada schematowi, w którym najpierw wykonuje się instrukcje, a dopiero potem sprawdza warunek?
To pętla z warunkiem na końcu, czyli odpowiednik do...while. Jej cechą jest to, że ciało pętli wykona się co najmniej raz.
Jaka jest różnica między wykonaniem pętli a sprawdzeniem warunku?
Wykonanie pętli oznacza realizację instrukcji w jej ciele. Sprawdzenie warunku to osobny krok decyzyjny, który może wystąpić również wtedy, gdy pętla już się nie wykona.
Jaką rolę w tym schemacie pełni instrukcja n++?
Zwiększa wartość zmiennej sterującej o 1 po każdej iteracji. Dzięki temu algorytm zbliża się do momentu, w którym warunek n<7 przestanie być spełniony.
Co oznacza zapis n++ w algorytmie?
Zapis `n++` oznacza zwiększenie wartości zmiennej `n` o 1. Jest równoważny instrukcji `n = n + 1`.
Czy zmienna s ma wpływ na liczbę sprawdzeń warunku w tym zadaniu?
Nie, bo warunek zależy tylko od zmiennej n. Zmienna s jest tu obliczana pomocniczo, ale nie steruje zakończeniem pętli.
Co oznacza zapis s += n?
Zapis `s += n` oznacza dodanie wartości zmiennej `n` do zmiennej `s`. Jest równoważny instrukcji `s = s + n`.
Jak rozpisać kolejne iteracje tego algorytmu, aby uniknąć błędu na egzaminie?
Najlepiej zrobić tabelę z kolumnami: numer iteracji, n przed wykonaniem, n po n++, wynik warunku. Taki zapis pozwala łatwo zobaczyć, ile razy nastąpiło sprawdzenie.
Dlaczego kolejność instrukcji przed warunkiem ma znaczenie?
Ponieważ warunek jest sprawdzany dopiero po wykonaniu wcześniejszych instrukcji. W tym przykładzie `n` zostaje najpierw zwiększone, a dopiero potem porównane z liczbą 7.
Jaką konstrukcję pętli przypomina ten schemat blokowy?
Schemat przypomina pętlę z warunkiem sprawdzanym po wykonaniu instrukcji, podobną do konstrukcji `do...while`. Najpierw wykonywany jest blok instrukcji, a dopiero potem następuje decyzja o powtórzeniu.
Czym różni się kompilator od interpretera?
Kompilator tłumaczy cały program przed uruchomieniem na kod wynikowy, natomiast interpreter wykonuje kod na bieżąco, instrukcja po instrukcji. Kompilator zwykle tworzy plik wykonywalny lub kod pośredni.
Dlaczego w tym pytaniu poprawną odpowiedzią jest kompilator?
Opis wskazuje na narzędzie, które sprawdza kod pod kątem błędów i generuje moduł do wykonania. To typowe zadanie kompilatora, a nie interpretera czy debuggera.
Jakie błędy może wykryć kompilator?
Kompilator wykrywa głównie błędy składniowe, np. brak średnika, oraz niektóre błędy semantyczne, np. niezgodność typów. Nie wykryje wszystkich błędów logicznych programu.
Jaką rolę pełni debugger w procesie tworzenia programu?
Debugger służy do śledzenia działania programu i znajdowania błędów podczas wykonania. Nie tłumaczy kodu źródłowego na postać zrozumiałą dla maszyny.
Co oznacza kod źródłowy?
Kod źródłowy to program zapisany przez programistę w języku programowania, np. C++, Java lub C#. Jest czytelny dla człowieka, ale zwykle wymaga przetłumaczenia, aby mógł zostać wykonany przez maszynę.
Czym zajmuje się dekompilator?
Dekompilator próbuje odtworzyć kod wyższego poziomu z pliku wykonywalnego lub kodu pośredniego. Nie służy do tworzenia programu wykonywalnego z kodu źródłowego.
Co to jest moduł wykonywalny?
Moduł wykonywalny to wynik kompilacji, który może zostać uruchomiony przez system operacyjny albo środowisko wykonawcze. Przykładem może być plik `.exe` w systemie Windows.
Do czego służy debugger?
Debugger służy do śledzenia działania programu i znajdowania błędów podczas jego wykonywania. Nie jest narzędziem odpowiedzialnym za tłumaczenie kodu źródłowego na kod maszynowy.
Co oznacza, że kompilator generuje moduł do wykonania?
Oznacza to utworzenie pliku wynikowego, np. programu wykonywalnego albo kodu obiektowego, który może zostać uruchomiony bez ponownego tłumaczenia całego źródła.
Czym jest dekompilator?
Dekompilator wykonuje proces odwrotny do kompilacji: próbuje odtworzyć kod źródłowy lub jego przybliżoną postać na podstawie kodu wynikowego. Nie służy do tworzenia programu wykonywalnego z kodu źródłowego.
Po czym rozpoznać sortowanie bąbelkowe w opisie słownym?
Kluczowe cechy to porównywanie sąsiednich elementów, zamiana miejscami, gdy są w złej kolejności, oraz wielokrotne przechodzenie przez zbiór aż do braku zmian.
Po czym rozpoznać sortowanie bąbelkowe w opisie algorytmu?
Charakterystyczne jest cykliczne porównywanie par sąsiadujących elementów i zamiana ich miejscami, jeśli są w złej kolejności. Proces trwa do momentu, gdy w całym przebiegu nie wystąpi żadna zamiana.
Dlaczego w tym zadaniu nie chodzi o sortowanie przez wybór?
Sortowanie przez wybór polega na wyszukiwaniu najmniejszego lub największego elementu w nieposortowanej części i wstawianiu go na właściwe miejsce, a nie na zamianie sąsiadów.
Dlaczego sortowanie bąbelkowe nazywa się bąbelkowym?
Ponieważ największe elementy stopniowo „wypływają” na koniec tablicy, podobnie jak bąbelki unoszące się ku górze. Przy sortowaniu rosnącym po każdej pełnej iteracji jeden z największych elementów trafia na właściwe miejsce.
Czym różni się sortowanie bąbelkowe od sortowania przez wstawianie?
W bąbelkowym zamienia się sąsiednie elementy wielokrotnie w kolejnych przebiegach. W sortowaniu przez wstawianie bierze się element i wstawia go w odpowiednie miejsce w już uporządkowanej części tablicy.
Czym sortowanie bąbelkowe różni się od sortowania przez wybór?
Sortowanie bąbelkowe porównuje i ewentualnie zamienia elementy sąsiadujące. Sortowanie przez wybór wyszukuje najmniejszy lub największy element w nieposortowanej części i zamienia go z elementem na aktualnej pozycji.
Dlaczego sortowanie szybkie nie pasuje do podanego opisu?
Quicksort działa według zasady dziel i zwyciężaj, wybiera element osiowy i dzieli zbiór na części. Nie opiera się na cyklicznym porównywaniu par sąsiadujących elementów.
Czym sortowanie bąbelkowe różni się od sortowania przez wstawianie?
Sortowanie przez wstawianie bierze kolejny element i wstawia go w odpowiednie miejsce w uporządkowanej części tablicy. Sortowanie bąbelkowe działa przez wielokrotne zamiany sąsiadujących elementów.
Co oznacza w sortowaniu bąbelkowym warunek „dopóki występują zmiany”?
Oznacza to, że algorytm wykonuje kolejne przebiegi tak długo, jak długo w którymś przebiegu nastąpiła choć jedna zamiana. Brak zamian oznacza, że zbiór jest już posortowany.
Jaka jest złożoność czasowa sortowania bąbelkowego?
W typowej wersji złożoność czasowa wynosi O(n²). W wersji zoptymalizowanej, gdy tablica jest już posortowana i algorytm wykrywa brak zamian, najlepszy przypadek może mieć złożoność O(n).
Jaką złożoność ma sortowanie bąbelkowe i co to oznacza w praktyce?
Najczęściej podaje się złożoność czasową O(n²), więc dla dużych zbiorów działa wolno. Nadaje się głównie do nauki lub bardzo małych danych.
Kiedy sortowanie bąbelkowe kończy działanie?
Algorytm kończy działanie, gdy podczas pełnego przejścia przez zbiór nie zostanie wykonana żadna zamiana. Oznacza to, że wszystkie elementy są już ustawione zgodnie z kryterium sortowania.
Czy sortowanie bąbelkowe jest stabilne?
Tak, w standardowej wersji jest stabilne, ponieważ elementy o równych wartościach nie muszą zmieniać wzajemnej kolejności.
Czy sortowanie bąbelkowe jest dobrym wyborem dla dużych zbiorów danych?
Nie, ponieważ ma złożoność O(n²), więc dla dużej liczby elementów działa wolno. W praktyce dla większych danych częściej stosuje się algorytmy wydajniejsze, np. quicksort lub mergesort.
Dlaczego skupianie się wyłącznie na własnych korzyściach szkodzi pracy zespołowej?
Bo osłabia zaufanie, utrudnia współpracę i powoduje, że cele indywidualne zaczynają być ważniejsze niż cel całego zespołu. W efekcie spada efektywność pracy.
Dlaczego skupianie się wyłącznie na własnych korzyściach szkodzi pracy zespołu?
Osłabia zaufanie, utrudnia współpracę i może prowadzić do konfliktów. Zespół działa skutecznie wtedy, gdy jego członkowie dbają o wspólny cel.
Jakie zachowania wspierają efektywne funkcjonowanie zespołu?
Przede wszystkim wzajemne wsparcie, terminowa realizacja zadań, dobra komunikacja i branie odpowiedzialności za własne decyzje. Takie postawy budują zaufanie i porządek pracy.
Jakie zachowania świadczą o odpowiedzialności w zespole?
Odpowiedzialność oznacza terminowe wykonywanie zadań, przyznawanie się do błędów, informowanie o problemach i ponoszenie konsekwencji własnych decyzji.
Na czym polega odpowiedzialność za własne decyzje w pracy zespołowej?
To gotowość do ponoszenia skutków swoich działań, przyznawania się do błędów i reagowania na problemy. Odpowiedzialna osoba nie unika konsekwencji i nie przerzuca winy na innych.
Dlaczego wzajemne wsparcie jest ważne w zespole projektowym?
Wzajemne wsparcie pozwala szybciej rozwiązywać problemy i zmniejsza ryzyko opóźnień. Pomaga też budować dobrą atmosferę pracy.
Dlaczego terminowa realizacja zadań jest ważna w zespole projektowym?
Ponieważ zadania członków zespołu są często ze sobą powiązane. Opóźnienie jednej osoby może zablokować pracę pozostałych i zagrozić realizacji całego projektu.
Jak terminowość wpływa na realizację projektu informatycznego?
Opóźnienie jednego zadania może zablokować pracę innych osób, np. testerów lub programistów zależnych od danego modułu. Terminowość ułatwia utrzymanie harmonogramu projektu.
W jaki sposób wzajemne wsparcie wpływa na jakość pracy zespołu?
Pomaga szybciej rozwiązywać problemy, zmniejsza liczbę błędów i poprawia atmosferę współpracy. Dzięki temu zespół działa sprawniej i skuteczniej.
Czym różni się praca zespołowa od pracy indywidualnej?
W pracy indywidualnej osoba odpowiada głównie za własny wynik. W pracy zespołowej ważne są komunikacja, koordynacja działań i odpowiedzialność za wspólny rezultat.
Jak rozpoznać, że ktoś działa niezespołowo?
Najczęściej po braku współpracy, ignorowaniu ustaleń, unikaniu odpowiedzialności i koncentrowaniu się tylko na własnym interesie. Takie zachowania utrudniają osiąganie wspólnych celów.
Jak komunikacja wpływa na efektywność zespołu?
Dobra komunikacja ogranicza nieporozumienia, pozwala szybciej wykrywać problemy i ułatwia podział zadań. Brak komunikacji często prowadzi do błędów i opóźnień.
Po czym rozpoznać, że funkcja jest rekurencyjna?
Funkcja jest rekurencyjna, gdy w swoim ciele wywołuje samą siebie. Musi też mieć warunek zakończenia, aby nie wykonywała się w nieskończoność.
Po czym rozpoznać rekurencję w kodzie?
Rekurencję rozpoznaje się po tym, że funkcja wywołuje samą siebie. W przykładzie `fn` rekurencja występuje, gdy wewnątrz funkcji pojawia się wywołanie `fn(a - 1)`.
Dlaczego Blok 1 przedstawia rekurencję?
Ponieważ funkcja fn wywołuje samą siebie w instrukcji return: fn(a-1)+2. To jest bezpośrednie wywołanie rekurencyjne.
Czym jest przypadek bazowy w funkcji rekurencyjnej?
Przypadek bazowy to warunek, który kończy dalsze wywołania funkcji. Bez niego rekurencja mogłaby działać bez końca.
Dlaczego Blok 2 nie jest przykładem rekurencji?
W Bloku 2 nie ma wywołania funkcji fn wewnątrz jej ciała. Wykonywane jest tylko zwykłe obliczenie arytmetyczne.
Dlaczego blok 1 jest przykładem rekurencji?
Ponieważ funkcja `fn` zawiera wywołanie samej siebie: `fn(a - 1)`. Dodatkowo ma warunek zakończenia `if(a == 1) return 1;`.
Dlaczego Blok 3 nie ilustruje rekurencji tej funkcji?
Funkcja fn wywołuje tam fun, a nie samą siebie. Rekurencja zachodzi tylko wtedy, gdy funkcja odwołuje się do własnej nazwy lub uczestniczy w rekurencji pośredniej.
Dlaczego blok 2 nie przedstawia rekurencji?
W bloku 2 funkcja nie wywołuje samej siebie. Wyrażenie `(a - 1) + 2` jest zwykłym obliczeniem arytmetycznym.
Jaką rolę w funkcji rekurencyjnej pełni warunek a==1?
To warunek stopu, czyli przypadek bazowy. Dzięki niemu kolejne wywołania kończą się i funkcja może zwrócić wynik.
Dlaczego blok 3 może być mylący?
W bloku 3 wywoływana jest funkcja `fun(a - 1)`, a nie `fn(a - 1)`. Nie jest to więc bezpośrednie wywołanie tej samej funkcji.
Co mogłoby się stać, gdyby w funkcji rekurencyjnej zabrakło warunku zakończenia?
Funkcja wywoływałaby się bez końca albo do wyczerpania pamięci stosu. W praktyce prowadzi to do błędu przepełnienia stosu.
Co może się stać, jeśli funkcja rekurencyjna nie ma poprawnego warunku zakończenia?
Funkcja będzie wywoływać się coraz dalej, aż może dojść do przepełnienia stosu wywołań. Program może wtedy zakończyć się błędem.
Jak obliczany jest wynik funkcji z Bloku 1 dla argumentu a=3?
fn(3) wywołuje fn(2)+2, a fn(2) wywołuje fn(1)+2. Ponieważ fn(1)=1, otrzymujemy fn(2)=3 i fn(3)=5.
Jaka jest rola stosu w działaniu rekurencji?
Każde wywołanie funkcji rekurencyjnej trafia na stos wywołań. Gdy osiągnięty zostanie przypadek bazowy, kolejne wywołania są zdejmowane ze stosu i zwracają wyniki.
Czym jest Activity w systemie Android?
Activity to podstawowy komponent aplikacji Android odpowiedzialny za pojedynczy ekran i interakcję z użytkownikiem. To właśnie ona najczęściej wyświetla interfejs i obsługuje działania użytkownika.
Jaką rolę pełni Activity w aplikacji Android?
Activity reprezentuje pojedynczy ekran aplikacji i umożliwia użytkownikowi interakcję z programem. Odpowiada za wyświetlanie widoku oraz obsługę zdarzeń.
Dlaczego poprawną odpowiedzią jest Activity, a nie Fragment?
Activity reprezentuje samodzielny ekran aplikacji, natomiast Fragment jest tylko częścią interfejsu osadzaną zwykle wewnątrz Activity. Fragment nie działa jako główny, niezależny ekran bez powiązania z Activity.
Dlaczego poprawną odpowiedzią jest Activity, a nie Windows?
W Androidzie podstawowym pojęciem ekranu aplikacji jest Activity. `Windows` nie jest standardową klasą używaną w Androidzie jako główny element komunikacji z użytkownikiem.
Jaką rolę pełni Fragment w aplikacji Android?
Fragment służy do budowy modularnych części interfejsu, które można wielokrotnie wykorzystywać w różnych ekranach. Ułatwia to organizację kodu i dostosowanie widoku do różnych urządzeń.
Czym różni się Activity od Fragmentu?
Activity oznacza cały ekran aplikacji, natomiast Fragment jest częścią interfejsu działającą zwykle wewnątrz Activity. Fragment nie jest podstawowym samodzielnym ekranem aplikacji.
W jaki sposób Activity komunikuje się z użytkownikiem?
Activity wyświetla układ interfejsu, reaguje na zdarzenia, takie jak kliknięcia, oraz zarządza logiką ekranu. Dzięki temu pośredniczy między użytkownikiem a działaniem aplikacji.
Do czego służy metoda onCreate() w Activity?
`onCreate()` jest wywoływana podczas tworzenia Activity. Najczęściej ustawia się w niej layout ekranu za pomocą `setContentView()` i inicjalizuje elementy interfejsu.
Czy pojęcie Screens jest nazwą klasy w Androidzie?
Nie, screens to jedynie ogólne określenie ekranów aplikacji. W Androidzie klasą odpowiedzialną za ekran jest Activity.
Co oznacza cykl życia Activity?
Cykl życia Activity to zestaw metod wywoływanych w różnych stanach ekranu, np. przy tworzeniu, uruchamianiu, wstrzymaniu i niszczeniu. Pozwala poprawnie zarządzać zasobami aplikacji.
Dlaczego odpowiedź Windows jest błędna w kontekście Androida?
Windows nie jest podstawową klasą aplikacji Android służącą do komunikacji z użytkownikiem. W Androidzie rolę ekranu aplikacji pełni Activity.
Czy jedna aplikacja Android może mieć wiele Activity?
Tak, aplikacja może składać się z wielu Activity, z których każda reprezentuje inny ekran, np. ekran logowania, listę danych lub szczegóły rekordu.
Jakie znaczenie ma cykl życia Activity?
Cykl życia Activity określa, co dzieje się z ekranem podczas uruchamiania, wstrzymywania, zatrzymywania i zamykania. Jest kluczowy dla poprawnego zarządzania zasobami i stanem aplikacji.
Jak Activity komunikuje się z użytkownikiem?
Activity wyświetla interfejs użytkownika i reaguje na zdarzenia, takie jak kliknięcia przycisków, wpisywanie tekstu czy wybór elementów listy.
Na czym polega działanie operatora postinkrementacji a++ w warunku pętli?
Postinkrementacja najpierw zwraca obecną wartość zmiennej do porównania, a dopiero potem zwiększa ją o 1. Dlatego w warunku używana jest stara wartość, ale wewnątrz pętli zmienna ma już wartość większą.
Jak działa postinkrementacja `a++` w warunku pętli?
Najpierw używana jest aktualna wartość zmiennej w wyrażeniu warunkowym, a dopiero potem zmienna jest zwiększana o 1. Dlatego w ciele pętli wartość może być już większa niż ta porównywana w warunku.
Dlaczego w tym programie wypisywanie zaczyna się od liczby 2, a nie od 1?
Ponieważ w warunku użyto a++, więc po sprawdzeniu warunku zmienna a zostaje zwiększona. Gdy program wchodzi do ciała pętli po pierwszym sprawdzeniu, a ma już wartość 2.
Czym różni się `a++` od `++a`?
`a++` zwraca starą wartość i potem zwiększa zmienną. `++a` najpierw zwiększa zmienną, a potem zwraca nową wartość.
Jak krok po kroku prześledzić wykonanie tej pętli while?
Trzeba dla każdej iteracji zapisać wartość a przed sprawdzeniem warunku, wynik porównania oraz wartość a po inkrementacji. To pozwala zobaczyć, jakie liczby są wypisywane i kiedy pętla się kończy.
Dlaczego kod z pytania wypisuje liczby od 2 do 6, a nie od 1 do 5?
Warunek używa `a++`, więc po sprawdzeniu warunku zmienna `a` jest już zwiększona. Pierwszy warunek sprawdza `1 < 6`, ale wypisywana jest już wartość `2`.
Kiedy ta pętla przestaje się wykonywać?
Pętla kończy się, gdy porównanie a++ < 6 zwróci fałsz. Dzieje się to przy sprawdzeniu starej wartości 6, choć po inkrementacji a staje się wtedy równe 7.
Kiedy pętla `while (a++ < 6)` kończy działanie?
Kończy się, gdy porównywana stara wartość `a` nie spełnia warunku `< 6`. Dla `a = 6` warunek `6 < 6` jest fałszywy, więc ciało pętli nie wykona się.
Jaka jest różnica między a++ i ++a w podobnym kodzie?
a++ zwraca starą wartość i potem zwiększa zmienną, a ++a najpierw zwiększa zmienną, a potem zwraca nową wartość. W warunkach pętli ta różnica często zmienia wynik programu.
Jaka jest wartość zmiennej `a` po zakończeniu tej pętli?
Po zakończeniu pętli `a` ma wartość `7`. Ostatnie sprawdzenie warunku używa wartości `6`, ale operator `a++` zwiększa ją jeszcze do `7`.
Jak wyglądałby wynik, gdyby w warunku użyto ++a < 6 zamiast a++ < 6?
Wtedy zmienna byłaby zwiększana przed porównaniem, więc wypisane zostałyby liczby 2 3 4 5. Pętla zakończyłaby się wcześniej niż w wersji z postinkrementacją.
Jak bezpiecznie analizować podobne fragmenty kodu na egzaminie?
Najlepiej rozpisać kolejne iteracje w tabeli: wartość przed warunkiem, wynik warunku, wartość w ciele pętli i wartość po iteracji. To ogranicza pomyłki przy operatorach `++`.
Dlaczego w zadaniach egzaminacyjnych warto rozpisywać kolejne iteracje pętli w tabeli?
Tabela pomaga uniknąć pomyłek przy operatorach inkrementacji, warunkach i zmianach wartości zmiennych. To najprostszy sposób na poprawne ustalenie wyniku działania programu.
Czym jest komunikacja werbalna?
To przekazywanie informacji za pomocą słów, czyli mowy lub pisma. W tym pytaniu przykładem komunikacji werbalnej jest mówienie.
Czym różni się komunikacja werbalna od niewerbalnej?
Komunikacja werbalna wykorzystuje słowa, np. mówienie lub pisanie. Komunikacja niewerbalna przekazuje informacje bez słów, np. przez gesty, mimikę i postawę ciała.
Dlaczego mówienie jest formą komunikacji werbalnej?
Mówienie polega na przekazywaniu informacji za pomocą słów wypowiadanych ustnie. Dlatego jest podstawowym przykładem komunikacji werbalnej.
Dlaczego wyraz twarzy nie jest zaliczany do komunikacji werbalnej?
Wyraz twarzy przekazuje emocje i nastawienie bez użycia słów. Jest więc elementem komunikacji niewerbalnej.
Dlaczego gestykulacja nie jest komunikacją werbalną?
Gestykulacja wykorzystuje ruchy ciała, a nie słowa. Jest więc elementem komunikacji niewerbalnej.
Dlaczego pozycja ciała jest formą komunikacji niewerbalnej?
Postawa ciała może pokazywać pewność siebie, stres, dystans lub zainteresowanie, ale nie wykorzystuje słów. Dlatego należy do komunikacji niewerbalnej.
Jakie znaczenie ma komunikacja werbalna w pracy programisty?
Programista musi jasno omawiać wymagania, zgłaszać problemy, wyjaśniać rozwiązania i współpracować z zespołem. Nieprecyzyjna komunikacja może prowadzić do błędów w projekcie.
Jaką rolę w komunikacji pełni gestykulacja?
Gestykulacja wspiera wypowiedź lub samodzielnie przekazuje znaczenie bez słów. Z tego powodu jest zaliczana do komunikacji niewerbalnej.
Jakie przykłady komunikacji werbalnej mogą wystąpić w zespole projektowym?
Są to rozmowy na spotkaniach, prezentowanie postępów pracy, zadawanie pytań, pisanie wiadomości e-mail oraz tworzenie dokumentacji.
Dlaczego umiejętność rozróżniania komunikacji werbalnej i niewerbalnej jest ważna w pracy zespołowej?
Pomaga lepiej rozumieć intencje rozmówcy i unikać nieporozumień. W zespole liczy się nie tylko to, co ktoś mówi, ale też jak się zachowuje.
Czy pisanie także jest komunikacją werbalną?
Tak. Komunikacja werbalna obejmuje nie tylko mowę, ale też przekaz pisemny, ponieważ w obu przypadkach używane są słowa.
Jak rozpoznać w pytaniu egzaminacyjnym komunikację niewerbalną?
Jeśli odpowiedź dotyczy gestów, mimiki, postawy ciała, kontaktu wzrokowego lub wyglądu, najczęściej chodzi o komunikację niewerbalną.
Jak rozpoznać, że wskazana na formularzu kontrolka jest polem tekstowym?
Pole tekstowe to prostokątne miejsce do wpisywania danych przez użytkownika. W tym zadaniu służy do wprowadzenia liczby, więc w WPF będzie to TextBox, a w Swing JTextField.
Do czego służy kontrolka TextBox w WPF?
TextBox służy do wprowadzania i edycji tekstu przez użytkownika. Może być używany np. do wpisania liczby, loginu lub krótkiej informacji.
Jaka jest różnica między TextBox w WPF a JTextField w Swing?
Obie kontrolki służą do wprowadzania tekstu, ale pochodzą z różnych bibliotek i mają inną składnię użycia. TextBox stosuje się w aplikacjach WPF, a JTextField w aplikacjach Java Swing.
Do czego służy kontrolka JTextField w Swing?
JTextField to jednowierszowe pole tekstowe w bibliotece Swing. Użytkownik może w nim wpisać dane, które program odczytuje metodą getText().
Dlaczego odpowiedzi typu Window, JFrame albo Text nie pasują do tej ilustracji?
Window i JFrame oznaczają całe okno aplikacji, a nie pojedyncze pole do wpisywania danych. Text nie jest standardową kontrolką wejściową do edycji tekstu przez użytkownika.
Jaka jest różnica między TextBox a Label w WPF?
TextBox umożliwia użytkownikowi wpisywanie danych, a Label zwykle służy tylko do wyświetlania opisu lub informacji. Etykieta nie jest typowym polem wejściowym.
Do czego służy kontrolka TextBox w aplikacji okienkowej?
TextBox umożliwia użytkownikowi wpisanie danych, np. liczby, imienia lub hasła. Program może potem odczytać tę wartość i dalej ją przetwarzać.
Jak odczytać tekst wpisany do kontrolki TextBox w WPF?
Tekst odczytuje się z właściwości Text, np. txtLiczba.Text. Wynik jest typu string, nawet jeśli użytkownik wpisał liczbę.
Jak w praktyce połączyć pole tekstowe z przyciskiem Zatwierdź?
Użytkownik wpisuje wartość do pola tekstowego, a po kliknięciu przycisku program odczytuje zawartość kontrolki. Następnie może sprawdzić poprawność danych lub wykonać obliczenia.
Jak odczytać tekst wpisany do kontrolki JTextField w Swing?
Należy użyć metody getText(), np. txtLiczba.getText(). Zwrócona wartość jest tekstem typu String.
Jak wygląda przykładowe utworzenie pola tekstowego w WPF i Swing?
W WPF używa się znacznika TextBox w XAML, np. <TextBox Width="120"/>. W Swing tworzy się obiekt JTextField, np. JTextField pole = new JTextField(10);
Dlaczego wpisana liczba w TextBox lub JTextField jest traktowana jako tekst?
Pole tekstowe przechowuje dane jako ciąg znaków. Jeśli program ma wykonać obliczenia, tekst trzeba przekonwertować na typ liczbowy, np. int lub double.
Jak rozpoznać na ilustracji pole tekstowe w aplikacji okienkowej?
Pole tekstowe zwykle wygląda jak pusty prostokąt przeznaczony do wpisania danych. Często znajduje się obok lub pod etykietą z instrukcją, np. „Wprowadź liczbę”.