var y: System.uint64; //Большая цЫфра же и положительная x, i: byte; //Нет смысла большие числа брать слишком, переполнение будет
begin readln(x); //Принимаем число... y := 1; i := 1; repeat y *= i; //...и умножаем такое-то количество раз i += 1; until (i > x); if (y = 0) then //Выводим, предусмотрев переполнение writeln('Слишком большая цЫферка') else writeln(y); end.
Int64 - это то же самое, что LongInt, а Uint64 (unsign long int) - длинное число без знака, при правильном использовании позволяет записывать в переменную числа, в 2 раза превышающие максимум Int64
// PascalABC.NET 3.0, сборка 1157 от 02.02.2016 begin var a:array[1..20] of integer; Randomize; for var i:=1 to 20 do a[i]:=Random(-50,50); a.Println; var b:=Range(2,20,2).Select(i->a[i]); Writeln('Элементы с четными индексами по возрастанию'); b.Sorted.Println; Writeln('Элементы с четными индексами по убыванию'); b.SortedDescending.Println; end.
Тестовое решение: -15 46 -34 -3 43 16 -17 -28 -19 12 -28 -11 48 -12 -1 33 -37 9 6 -40 Элементы с четными индексами по возрастанию -40 -28 -12 -11 -3 9 12 16 33 46 Элементы с четными индексами по убыванию 46 33 16 12 9 -3 -11 -12 -28 -40
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку