Заполнить текстовый файл числами полученными с датчика случайных чисел найти сумму минимального и максимального элементов этого файла (паскаль, с полным текстом программы)
PascalABC.NET 3.3.5, сборка 1662 от 29.04.2018 Внимание! Если программа не работает, обновите версию!
begin var n:=ReadInteger('n='); WriteAllText('MyFile.txt',SeqRandom(n,-99,99).JoinIntoString); var (mn,mx):=(MaxInt,-MaxInt); foreach var line in ReadLines('MyFile.txt') do begin var a:=line.ToIntegers; (mn,mx):=(Min(a.Min,mn),Max(a.Max,mx)) end; Writeln('Cумма min+max = ',mn,'+',mx,' = ',mn+mx); ReadAllText('MyFile.txt').Println // контрольный вывод файла end.
Алгоритм 1) a x a = a² ⇒ b; b x a = a³ ⇒ результат 2) a x a = a² ⇒ b; b x b = a⁴ ⇒ c; c x c = a⁸ ⇒ c; c x b = a¹⁰ ⇒ результат
Программа на языке PascalABC.Net var a,b,c,y:real; begin Write('Введите число: '); Read(a); b:=a*a; y:=b*a; Writeln('Третья степень числа равна ',y); c:=b*b; c:=c*c; y:=b*c; Writeln('Десятая степень числа равна ',y) end.
Тестовые решения: Введите число: 2 Третья степень числа равна 8 Десятая степень числа равна 1024
Введите число: -13.594 Третья степень числа равна -2512.128188584 Десятая степень числа равна 215512594781.574
1 задание) ответ: 1323141; Двигаемся в обратном порядке 2324142 (идём с конца) ей противоположные 1323141 2 задание) ответ: 2949; мы должны получить 11 и 13 причем минимально . можем только так 9+2 и 9+4 . значит 2949 3 задание) ответ: 3; чтобы добраться до 21 нам нужно выполнить 1 команду 6 раз и 3 раза вторую , нас спрашивают про вторую пишем ответ 3 4 задание) ответ: 1; нам нужно число которое делится на 5 то есть 4 отпадает , и также нам нужно чтобы модуль разности был не более 2 и во втором и в третьем модуль разности больше 2 , остается 1. 5 задание) ответ: 1112221; Я всегда начинаю с обратного 57-56-28-14-7-6-5-4 собираем с конца 1112221
Внимание! Если программа не работает, обновите версию!
begin
var n:=ReadInteger('n=');
WriteAllText('MyFile.txt',SeqRandom(n,-99,99).JoinIntoString);
var (mn,mx):=(MaxInt,-MaxInt);
foreach var line in ReadLines('MyFile.txt') do begin
var a:=line.ToIntegers;
(mn,mx):=(Min(a.Min,mn),Max(a.Max,mx))
end;
Writeln('Cумма min+max = ',mn,'+',mx,' = ',mn+mx);
ReadAllText('MyFile.txt').Println // контрольный вывод файла
end.
Пример
n= 20
Cумма min+max = -99+71 = -28
62 -72 39 -93 -99 -46 -77 71 -12 13 -89 18 -17 19 -35 -62 30 17 -74 37