Zadania
instrukcje warunkowe
1.1. Określ, jakie wartości zwracają poniższe algorytmy dla argumentu x=-2 a jakie dla x=4. Napisz odpowiednie pseudokody.
a) . b) . c) .
1.2. Poniżej przedstawione są 3 algorytmy analizy wskaźnika BMI. Narysuj schematy blokowe. Przeanalizuj, który z algorytmów jest optymalniejszy i dlaczego. Czy można jeszcze skrócid algorytm?
a) function bmiA(masaWkg, wzrostWm) begin
bmi := masaWkg / (wzrostWm)2 if (bmi<18,5)
{
wynik:=“niedowaga”
}
if (bmi≥18,5 and bmi<25)
{
wynik:=“norma”
}
if (bmi≥25 and bmi<40)
{
wynik:=“nadwaga”
}
if (bmi≥40)
{
wynik:=“otyłośd”
}
return wynik end
b) function bmiB(masaWkg, wzrostWm) begin
bmi := masaWkg / (wzrostWm)2 if (bmi<18,5)
{ wynik:=“niedowaga”
} else
{ if (bmi<25)
{ wynik:=“norma”
}
else
{ if (bmi<40)
{ wynik:=“nadwaga”
}
else
{ wynik:=“otyłośd”
}
} }
return wynik end
c) function bmiC(masaWkg, wzrostWm) begin
bmi := masaWkg / (wzrostWm)2 if (bmi<18,5)
{
wynik:=“niedowaga”
}
elif (bmi<25) {
wynik:=“norma”
}
elif (bmi<40) {
wynik:=“nadwaga”
} else {
wynik:=“otyłośd”
}
return wynik end
1.3. Napisz algorytm:
a) obliczający - w zależności od wyboru użytkownika - pole powierzchni lub objętośd kuli o promieniu podanym przez użytkownika.
b) pobierający od użytkownika temperaturę w skali Celsjusza i zwracający jej wartośd w skali Kelvina lub w skali Fahrenheita (w zależności od wyboru użytkownika).
c) rozwiązujący równanie postaci ax+b=0 (o podanych przez użytkownika współczynnikach rzeczywistych).
d) rozwiązujący równanie kwadratowe (postaci ax2+bx+c=0) o podanych przez użytkownika współczynnikach rzeczywistych.
e) pobierający od użytkownika wysokośd rocznego dochodu, a następnie obliczający należny podatek. W przypadku gdy dochód jest mniejszy niż 37 tys. zł podatek to 19% dochodu minus 0,5 tys. zł, w przypadku gdy dochód wynosi co najmniej 37 tys. zł ale mniej niż 74 tys. zł podatek to 6,5 tys. zł + 30% nadwyżki ponad 37 tys. zł, dla dochodu wynoszącego co najmniej 74 tys. zł podatek to 17,5 tys. zł + 40% nadwyżki ponad 74 tys. zł.
f) pobierający od użytkownika cztery kolejne liczby rzeczywiste dodatnie a, b, c, d oznaczające długości odcinków. Jeśli z podanych odcinków można zbudowad czworokąt, to algorytm określa, czy jest to deltoid (zakładamy, że kolejne boki czworokąta to a, b, c, d).
g) określający, ile dni jest w danym roku (rok podaje użytkownik, jako liczbę naturalną większą niż 1582 – rok wprowadzenia kalendarza gregoriaoskiego, w którym określono, że rok przestępny *liczbowo+ spełnia następujący warunek: jest podzielny przez 4 ale nie jest podzielny przez 100, chyba że jest podzielny przez 400).
h) wczytujący trzy liczby oraz zwracający, w zależności od wyboru użytkownika: średnią arytmetyczną lub geometryczną lub harmoniczną.
T N
START
STOP x>0 w := 0 wej (x)
w := x2
wyj(w) w := w+1
T N
START
STOP x>0 w := 0 wej (x)
w := x2
w := w+1 wyj(w)
T N
START
STOP x>0 w := 0 wej (x)
w := x2
wyj(w)
w := w+1