Podstawy Programowania - Zajęcia III (17 października
Transkrypt
Podstawy Programowania - Zajęcia III (17 października
Podstawy Programowania - Zajęcia III (17 października 2013 roku) losowanie liczb, operatory bitowe Agnieszka Polak, [email protected] Zadanie 1. Napisz program w C++ obliczający n-tą liczbę Fibonacciego. Liczby Fibonacciego definiujemy w nastepujący sposób: jeśli n = 0 0, f (n) = 1, jeśli n = 1 f (n − 2) + f (n − 1) jeśli n > 1. Zadanie 2. Napisz program w C++ losujący liczbę całkowitą z przedziału 50..149 i wypisują ją na ekranie. Zadanie 3. Napisz program w C++, który wczytuje z klawiatury jeden ze znaków +, -, *, / (wymusić, by podał jeden z tych znaków), a następnie dwie liczby całkowite a, b. W zależności od tego, jaki znak poda, należy wykonać jedną z operacji przypisania a+ = b, a− = b, a∗ = b, a/ = b i wypisać a. Zadanie 4. Wylosuj dwie liczby całkowite dodatnie, a następnie wypisz ich koniunkcję bitową, alterantywę bitową, bitową różnicę symetryczną (xor), bitowe dopełnienie jedynkowe dla jednej z nich. Użyj operatorów bitowych dwuargumentowych: &, |, ˆ, jednoargumentowego: ˜. Zadanie 5. Napisz program w C++ sprawdzający przy użyciu operacji bitowej, czy wczytana liczba jest parzysta. Zadanie 6. Napisz program w C++ zliczający liczbę bitów ustawionych na 1 w wylosowanej liczbie całkowitej. Zadanie 7. Napisz program w C++ obliczający (nierekurencyjnie) nwd z dwóch wylosowanych liczb dodatnich 1 ≤ x, y ≤ 500 w nastepujący sposób: y, jeśli x = 0 x y 2 · nwd( 2 , 2 ), jeśli x, y − parzyste nwd(x, y) = nwd( x2 , y), jeśli x − parzysta, y − nieparzysta y nwd(x, 2 ), jeśli x − nieparzysta, y − parzysta nwd(y − x, x), jeśli x, y − nieparzyste. Zadanie domowe. Napisz program w C++ rozwiązujący równanie kwadratowe a · x2 + b · x + c = 0, dla wylosowanych liczb całkowitych a, b, c ∈ [−5, 5]. Wyrażam zgodę na drukowanie przez studentów i pracowników WMiI UMK treści zawartej w niniejszym pliku.