ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
description
Transcript of ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
ALGORITMIZACE A ZÁKLADY PROGRAMOVÁNÍ
CYKLUS S PŘEDEM DANÝM POČTEM OPAKOVÁNÍ – FAKTORIÁL
Vytvořila: RNDr. Ivanka Dvořáčková Gymnázium K. V. Raise, Hlinsko, Adámkova 55 březen 2013
N-FAKTORIÁL
a) Vytvořte algoritmus pro výpočet n-faktoriálu, tj. součinu přirozených čísel menších nebo rovných N (kde n ∈N). Využijte cyklus s předem daným opakováním 1. se snižující se řídící proměnnou I, 2. se zvyšující se řídící proměnnou I.
b) Přepište algoritmus do programovacího jazyka Pascal.c) Spusťte program Free Pascal a přepište program do počítače,
odlaďte.d) Vyzkoušejte na počítači, pro které největší číslo N s proměnnou
FAKT datového typu integer bude program faktoriál počítat. Změňte datový typ u proměnné na longint a opět zjistěte největší možné číslo N, pro které získáte výsledek.
LONGINT – typ celých čísel (větší rozsah celých čísel)Doplňující úkol (pro rychlejší studenty)Upravte první verzi programu i pro n = 0
1! = 1 definujeme 0! = 1
Dále budeme pro zjednodušení uvažovat jen n N∊
Doplňující úkol
program FAKTORIAL;uses CRT;var N, I, FAKT: integer; {lépe longint pro FAKT}begin
clrscr;writeln (’ * * * N-FAKTORIÁL * * * ’);write (’Zadej nezáporné celé číslo N: ’);readln (N);if N = 0 then FAKT := 1 else begin FAKT := 1; for I := N downto 1 do FAKT := FAKT * I end;writeln (N,’-faktoriál je ’, FAKT : 1, ’. ’);readkey
end.
ifthenelse
B
E
Použité zdroje
HUBKA, J. a L. SILVERIO. Sbírka příkladů ze základů programování. Krajský pedagogický ústav Hradec Králové: Sdružení uživatelů počítačů JSEP a SMEP Hradec Králové, 1988.
Všechny grafické prvky a obrázky algoritmů jsem vytvořila sama s využitím volně šiřitelného programu Open Office.