Informatyka - Podstawy Programowania w Języku C++

Kierownik przedmiotu: Sławomir Czarnecki

prow. Rafał Michalczyk / Zbigniew Trybocki

Zadania na laboratorium nr. 4 dla grupy 4

0. Napisz kod programu obliczającego dla x = , 1 ,

2 ..., n , gdzie n – dowolna liczba naturalna wczytywana z klawiatury, wartość funkcji f ( x) = 2 ⋅ x . Dla kaŜdej kolejnej wartości x na ekranie konsoli ma być wyświetlany napis:

„Dla x=… wartość funkcji f(x) wynosi: …”

Zamiast znaku „…” w tekście ma się ukazywać wartość liczby x oraz funkcji f(x).

1. Zdefiniuj i wczytaj z klawiatury dwie róŜne liczby naturalne m > 0, n > 0 tak aby m < n.

n

n

Oblicz sumę ∑ i = m + ( m + )

1 + ... + ( n − )

1 + n oraz iloczyn

i

∏ = m( m+ )1...( n− )1 n.

i= m

i= m

n 1

= 0

n ( n + )

1

n 1

= 0

Sprawdź wynik np. dla m = 1, n = 10 : ∑ i =

= 55 ,

i

∏ = n!= 3628800.

i=

2

1

i 1

=

2. Zdefiniuj i wczytaj z klawiatury pierwszy wyraz a ∈ R , iloraz q ≠ 1 oraz całkowitą liczbę 1

n ≥ 1 wyrazów ciągu geometrycznego ( a

. Kolejne wyrazy a tego ciągu dla i = 2,3,…

i ) i 1

= ,2,...

i

obliczamy według rekurencyjnego lub iteracyjnego wzoru: a = a q (rekurencja) lub

i

i 1

−

i 1

a

a q −

=

(iteracja). Wyświetl wszystkie wyrazy tego ciągu od 1 do n na ekranie oraz oblicz i

1

n

n

n

q −1

(w pętli) sumę: ∑ a . Sprawdź wynik korzystając ze wzoru: ∑ a = a (prawdziwego

i

i

1

=

q −

i

1

i 1

=

1

dla q ≠ 1).

3. Znajdź NWD( m , n) – Największy Wspólnik Dzielnik dwóch liczb naturalnych m > 0, n > 0

implementując dwa poniŜsze algorytmy iteracyjne (algorytmy Euklidesa): Algorytm iteracyjny I:

• Krok 1. Dopóty dopóki m ≠ n wykonaj następujące podstawienie jeśli m > n, to m = m – n

w przeciwnym przypadku: n = n – m

• Krok 2. NWD( m , n) = m

Algorytm iteracyjny II:

• Krok 1. Dopóty dopóki n > 0 wykonaj jednocześnie następujące podstawienie (



m 

,

m n) =  n , reszta z dzielenia





n 

• Krok 2. NWD( m , n) = m

Przed implementacją zapoznaj się z dowodem twierdzenia matematycznego uzasadniającego poprawność pierwszego z powyŜej zaproponowanych algorytmów.