background image

P

ROGRAMOWANIE I JĘZYK 

C++

  

/

  

L

ABORATORIUM NR 

 

 

Zadanie 
Wykonać analizę poniższych programów. Nie używając komputera obliczyć wartości zmiennych określonych 
jako OUTPUT przy danych wejściowych INPUT. Sprawdzić wyniki uruchamiając odpowiedni kod programu 
na komputerze.  
 

1.

   

 

// INPUT : u = 5 

 

// OUTPUT: suma 

 

int

 k; 

 

double

 suma,u; 

 

cout << 

"Podaj u = "

; cin >> u; 

 

suma = 0.0; 

 

for

 (k=-2; k<=1; k++) 

 

 

suma = suma + u*k; 

 

2. 

 

// INPUT  : u = 2 

 

// OUTPUT : wynik 

 

int

 i,wynik,u; 

 

cout << 

"Podaj u = "

; cin >> u; 

 

wynik = -3; 

 

for

 (i=-1; i<=2; i++) 

 

 

wynik = wynik + u*i; 

 

wynik = wynik / 2; 

 

3. 

 

// INPUT  : a = 5, b = 3 

 

// OUTPUT : d, c 

 

double

 a,b,c,d; 

 

cout << 

"Podaj a = "

; cin >> a; 

 

cout << 

"Podaj b = "

; cin >> b; 

 

d = b*b - a*a; 

 

if

 (d > 0) 

 

 

c = d/b; 

 

else 

 

 

c = d/a; 

 

4. 

 

// INPUT  : a = 1, b = 3 

 

// OUTPUT : c 

 
 

// INPUT  : a = 1, b = 2 

 

// OUTPUT : c 

 

double

 a,b,c; 

 

cout << 

"Podaj a = "

; cin >> a; 

 

cout << 

"Podaj b = "

; cin >> b; 

 

c = b*b - 4*a; 

 

if

 (c) 

 

 

c = b/c; 

 

else 

 

 

c = b/a; 

 

background image

5. 

 

// INPUT  : liczba = 8 

 

// OUTPUT : j, a[1], a[3] 

 

int

 liczba,j; 

 

int

 a[10]; 

 

cout << 

"Podaj liczbe = "

; cin >> liczba; 

 

j = 0; 

 

while

 (liczba > 0) 

 

 

 

j++; 

 

 

a[j] = liczba; 

 

 

liczba = liczba - 2; 

 

 

6. 

 

// INPUT  : liczba = 8 

 

// OUTPUT : j, a[1], a[3], a[8] 

 

 

int

 liczba,j; 

 

int

 a[10] = {0,2,4,6,8,10}; 

 

cout << 

"Podaj liczbe = "

; cin >> liczba; 

 

j = 0; 

 

while

 (liczba > 0) 

 

 

 

a[j] = a[j] + liczba; 

 

 

liczba = liczba - 3; 

 

 

j++; 

 

 

7. 

 

// INPUT  : n = 3 

 

// OUTPUT : b[0], b[n-1], wynik 

 

 

int

 n,i,wynik; 

 

int

 a[20], b[20]; 

 

cout << 

"Podaj n = "

; cin >> n; 

 

for

 (i=0; i<=n-1; i++) 

 

 

a[i] = i*i+1; 

 

for

 (i=0; i<=n-1; i++) 

 

 

b[i] = a[i] + 2; 

 

wynik = (b[2] + b[n-1]) % 3; 

 

8. 

 

// INPUT  : - 

 

// OUTPUT : a[0],...,a[9], wynik 

 

 

int

 n,i,wynik; 

 

int

 a[10] = {10,20,30,40,50,60,70,80,90,100}; 

 

n = 7; 

 

 

 

i = 2; 

 

do

  

 

 

 

i = i + 1; 

 

 

a[i] = a[i] - 2*i; 

 

 

if

 (i >= n)  

 

 

 

break

 

while

 (

true

); 

 
 

wynik = ((a[4] - a[n]) > 7) ? 1 : -1; 

background image

9. 

 

// INPUT  : -  

 

// OUTPUT : a[0], a[3], wynik 

 

 

int

 n,i; 

 

double

 wynik; 

 

int

 a[10] = {0,1,2,3,4,5,6,7,8,9}; 

 

n = 3; 

 

for

 (i=0; i<=n; i++) 

 

 

 

if

 (i <= 2) 

 

 

 

a[i] = a[i] + 1; 

 

 

else 

 

 

 

a[i] = a[i] - 1; 

 

 

wynik = (a[0] + a[3]) * 2.5; 

 

10. 

 

// INPUT  : a = 2, b = 3, h = 4, wybor = 1 

 

// OUTPUT : pole 

 

 

// INPUT  : a = 2, b = 3, h = 4, wybor = 2 

 

// OUTPUT : pole 

 

 

// INPUT  : a = 2, b = 3, h = 4, wybor = 3 

 

// OUTPUT : pole 

 

 

int

 wybor; 

 

double

 a,b,h,pole; 

 
 

cout << 

"Podaj a = "

; cin >> a; 

 

cout << 

"Podaj b = "

; cin >> b; 

 

cout << 

"Podaj h = "

; cin >> h; 

 
 

cout << 

"Podaj wybor (wybor = 1, 2 lub 3) = "

; cin >> wybor; 

 

switch

 (wybor) 

 

 

  

case

 1: 

// Pole trojkata 

 

 

 

   pole = 0.5*a*h; 

 
 

  

case

 2: 

// Pole kwadratu 

 

 

 

   pole = a*a; 

 

 

     

break

 
 

  

case

 3: 

// Pole prostokata 

 

 

 

   pole = a*b; 

 
 

  

default

 

 

 

   pole = -1; 

 

background image

 

11. 

 

// INPUT  : z = 'u' 

 

// OUTPUT : z (jako znak), z (kod znaku), w (jako znak), w (kod znaku) 

 

 

// INPUT  : z = 'U' 

 

// OUTPUT : z (jako znak), z (kod znaku), w (jako znak), w (kod znaku) 

 

 

// INPUT  : z = 'A' 

 

// OUTPUT : z (jako znak), z (kod znaku), w (jako znak), w (kod znaku) 

 

 

// INPUT  : z = 'T' 

 

// OUTPUT : z (jako znak), z (kod znaku), w (jako znak), w (kod znaku) 

 

 

char

 z,w; 

 

int

  kod; 

 
 

cout << 

"Podaj znak = "

; cin >> z; 

 

switch

 (z) 

 

 

  

case

 

'u'

 

  

case

 

'U'

 

 

 

   w = z + 2; 

 

 

     

break

 
 

  

case

 

'a'

 

 

 

   w = z + 4; 

 

 

     

break

 
 

  

case

 

'A'

 

 

 

   w = z + 5; 

 

 

     

break

 
 

  

default

 

 

 

   w = 

'C'