Program Maxima

Pętla for wymusza wykonanie pewnego kodu dla wielu wartości pewnej zmiennej nazywanej zmienną sterującą.
W powyższym przykładzie wpierw definiowana jest funkcja $F(n)$ obliczająca tzw. liczby Fermata. Następnie, za pomocą pętli for wypisane zostało siedem liczb Fermata wraz z informacją czy są one pierwsze. Zmienna sterująca oznaczona jest literą $i$, nie jest to przypadek – zdecydowana wiekszość zmiennych sterujących w wykorzystywanych na świecie pętlach for jest oznaczana literą $i$.
Funkcja primep
Funkcja $primep(n)$ jest dość tajemnicza:
  • jeśli $primep(n)=false$, to liczba $n$ jest na pewno złożona,
  • jeśli $primep(n)=true$ oraz $n\lt 341550071728321$, to liczba $n$ jest na pewno pierwsza,
  • jeśli $primep(n)=true$ oraz $n\ge 341550071728321$, to liczba $n$ jest pierwsza z prawdopodobieństwem $1-10^{-15}$.
Ukryj
Ogólna postać pętli for jest następująca:
for zm_ster:wart_pocz [step krok] kontrola do kod_do_wykonania
Fragment step krok jest nieobowiązkowy, liczba krok decyduje o ile zmienia się wartość zmiennej sterującej, liczba ta może być ujemna, może być ułamkowa. Domyślnie $krok=1$.
Fragment kontrola może mieć kilka postaci:
  • thru wart_konc, wartość zmiennej sterującej nie przekroczy wart_konc,
  • while warunek, wykonywanie pętli zakończy się gdy warunek nie będzie spełniony
    for i:1 while(i<=5) do print(i)
    wypisanych zostanie pięć wierszy,
  • unless warunek, wykonywanie pętli zakończy się gdy warunek będzie spełniony
    for i:1 unless(i>5) do print(i)
    wypisanych zostanie pięć wierszy,
Korzystając z pętli for wypisz – w kolejności malejącej wszystkie liczby nieparzyste z przedziału $[100,200]$ i ich kwadraty.
Pokaż
...
Ukryj