﻿begin
  //1 вариант
  var Sum1 := 0.0;
  var i := 1.0;
  while i <= 30 do
  begin
    Sum1 += i;
    i += 0.5
  end;
  Print(Sum1);Println;
  
  //2 вариант
  var Sum2 := 0;
  foreach var x in Range(10, 300, 5) do
    Sum2 += x;
  Print(Sum2 / 10);Println;
  
  //3 вариант
  Range(10, 300, 5).Select(x -> x / 10).Sum.Println;
  
  //4 вариант
  SeqGen(59, 1.0, x -> x + 0.5).Sum.Println;
  
  //5 вариант
  SeqWhile(1.0, x -> x + 0.5, x -> x <= 30).Sum.Println;
end.