METODY OBLICZENIOWE
Wstęp do Maple’a: podstawy programowania
INSTRUKCJE WARUNKOWE
if
wyrażenie logiczne 1 then
blok instrukcji 1
elif
wyrażenie logiczne 2 then
blok instrukcji 2
else
blok instrukcji 3
end if
;
OBLICZENIA CYKLICZNE
Pętle
for
i from n to m by krok while wyrażenie logiczne do
instrukcje
end do;
for
i in dane while wyrażenie logiczne do
instrukcje
end do;
while
wyrażenie logiczne do
instrukcje
end do;
Wybrane komendy realizujące obliczenia cykliczne
add
(wyrażenie, i = n .. m /dane ) – dodawanie
mul
(wyrażenie, i = n .. m /dane ) – mnożenie
map
(f, dane, arg)
zip
(f, L
1
, L
2
) – spinanie
select
(f, wyrażenie/dane, arg) – wybór elementów
Oznaczenia:
n
, m – liczby oznaczające zakres zmian zmiennej i
dane
, L
1
, L
2
– struktury danych np. listy, wektory, macierze
f
– komenda lub nazwa funkcji (procedury) definiowanej przez użytkownika
arg
– dodatkowe parametry (argumenty potrzebne do działania komendy f )
FUNKCJE I PROCEDURY DEFINIOWANE PRZEZ UŻYTKOWNIKA
Funkcja (->)
nazwa
:= ( argumenty ) -> wzór funkcji
unapply
(wyrażenie, argumenty) – zamiana wyrażenia na funkcję
Procedura (proc)
nazwa
:= proc ( argumenty )
instrukcje
end proc
;
Zadania
1. Do zmiennych x, y przypisać dowolne liczby, a następnie w jednej instrukcji warunkowej
zapisać następujące działanie:
Jeśli x < y, dokonaj zamiany wartości zmiennych (wartość ze zmiennej x przechodzi do y i
odwrotnie), jeśli x = y przypisz obu zmiennym wartość zero, w przeciwnym wypadku (x > y)
wydrukuj tekst: ”x jest większe od y”.
2. Obliczyć sumę liczb nieparzystych od 1 do 49.
Odp. 625
3. Ile spośród liczb
1000
..
1
),
cos(
=
i
i
zawiera się w przedziale <-0.5, 0.5>?
Wskazówka: Do rozwiązania zadania wykorzystać pętlę for i instrukcję if.
Odp. 333
4. Zapisać zadanie nr 3 w formie procedury, której argumentami będą: zakres zmiennej i oraz granice
przedziału.
5. Zdefiniować funkcję, która parze liczb przyporządkowuje iloczyn ich części ułamkowych (frac –
część ułamkowa liczby).
6. Zapisać procedurę, która wyznacza sekwencję n kolejnych liczb pierwszych począwszy od
dowolnie wybranej wartości początkowej. Argumentami procedury będą: liczba n, oraz wartość
początkowa. Uwaga: Jeśli wartość początkowa nie jest liczbą pierwszą, pierwszym elementem
sekwencji jest najbliższa liczba pierwsza większa od zadanej wartości początkowej.
Wskazówka: skorzystaj z komend isprime, nextprime.