You are here

Summe berechnen

Artikel: 

Iterative:

package SummenberechungIterative is

function Summenberechnung (StartwertExtern : in Integer; EndwertExtern : in Integer) return Integer;

private

Startwert : Integer;

Endwert : Integer;

Summe : Integer;

end SummenberechungIterative;

 

package body SummenberechnungIterative is

function Summenberechnung (StartwertExtern : in Integer; EndwertExtern : in Integer) return Integer

is begin

if StartwertExtern > EndwertExtern then

Startwert := EndwertExtern;

Endwert := StartwertExtern;

else

Startwert := StartwertExtern;

Endwert := EndwertExtern;

end if;

Summe := 0;

SummeSchleife:

for SummeSchleifenwert in Startwert .. Endwert loop

Summe := Summe + SummeSchleifenwert;

end loop SummeSchleife;

return Summe;

end Summenberechnung;

end SummenberechnungIterative;

 

Rekursiv:

package SummenberechnungRekursiv is

function Summenberechnung (WertExtern : in Natural) return Natural;

end Summenberechung;

 

package body SummenberechnungRekursiv is

function Summenberechnung (WertExtern : in Natural) return Natural

is begin

case WertExtern is

when 0 .. 1 =>

return WertExtern;

when others =>

return WertExtern + Summenberechnung (WertExtern => (WertExtern - 1));

end case;

end Summenberechnung;

end SummenberechnungRekursiv;