Отладка (PascalABC.NET): различия между версиями

Материал из Информационная безопасностя
Перейти к навигации Перейти к поиску
 
(не показана 1 промежуточная версия этого же участника)
Строка 4: Строка 4:
  
 
== Примеры ==
 
== Примеры ==
 +
=== Простое число ===
 +
<syntaxhighlight lang="pascal" line>
 +
function IsSimple(num: integer): boolean;
 +
Begin
 +
  var res := true;
 +
  for var i := 2 to trunc(sqrt(num)) do
 +
  begin
 +
    if (num mod i = 0) then
 +
    begin
 +
      res := false;
 +
      break;
 +
    end;
 +
  end;
 +
 
 +
  result := res;
 +
end;
 +
 +
Begin
 +
  var n:= ReadInteger('Введите n:');
 +
  var simple := IsSimple(n);
 +
 
 +
  Writeln($'Число {n} ', simple ? 'простое': 'составное');
 +
end.
 +
</syntaxhighlight>
 +
 
=== Числа Фибоначчи ===
 
=== Числа Фибоначчи ===
 
<syntaxhighlight lang="pascal" line>
 
<syntaxhighlight lang="pascal" line>
Строка 31: Строка 56:
 
   var n := 'Иван';
 
   var n := 'Иван';
 
   var t := 'мистер';
 
   var t := 'мистер';
   Writeln(n);
+
   Writeln(GoodMorning(n,t));
end.
+
end.</syntaxhighlight>
</syntaxhighlight>
 
  
 
=== Факториал ===
 
=== Факториал ===

Текущая версия на 09:18, 15 июня 2021

Отладка

Примеры

Простое число

 1 function IsSimple(num: integer): boolean;
 2 Begin
 3   var res := true;
 4   for var i := 2 to trunc(sqrt(num)) do
 5   begin
 6     if (num mod i = 0) then
 7     begin
 8       res := false;
 9       break;
10     end;
11   end;
12   
13   result := res;
14 end;
15 
16 Begin
17   var n:= ReadInteger('Введите n:');
18   var simple := IsSimple(n);
19   
20   Writeln($'Число {n} ', simple ? 'простое': 'составное');
21 end.

Числа Фибоначчи

 1 // 0 1 1 2 3 5 8 13 21 34 55 89 144
 2 Begin
 3   var n := ReadInteger('Введите n:');
 4   var a := 0;
 5   var b := 1;
 6   
 7   while(b < n) do
 8   begin
 9     (a,b) := (b, a+b);
10   end;
11   
12   Writeln((b = n) ? 'Да' : 'Нет');
13 end.

Доброе утро мистер Иван

 1 function GoodMorning(name, title: string): string;
 2 Begin
 3   var res := 'Доброе утро ' + title + ' ' + name + '!';
 4   result := res;
 5 end;
 6 Begin
 7   var n := 'Иван';
 8   var t := 'мистер';
 9   Writeln(GoodMorning(n,t));
10 end.

Факториал

 1 // 5! = 1*2*3*4*5
 2 // 5! = 5*4*3*2*1
 3 // 4! =   4*3*2*1
 4 // 3! =     3*2*1
 5 // 2! =       2*1
 6 // 1! =         1
 7 // 5! = 5*4!
 8 // 4! = 4*3!
 9 // 3! = 3*2!
10 // 2! = 2*1!
11 // 1! = 1
12 function factorial(num: BigInteger): BigInteger;
13 begin
14   result := (num = 1) ? 1 : num * factorial(num-1);
15 end;
16 Begin
17   var n := ReadInteger('Введите n:');
18   Writeln($'{n}! = {factorial(n)}');
19 end.