На вход в алгоритм подается натуральное число N .Алгоритм строит по нему новое число R следующим образом 1)строит двоичная запись числа N
2)Затем справа дописываются символы 01 ,если число N четноё,и 10 ,если нечётное .
Полученная таким образом запись (в ней два разряда больше,чем в записи исходного числа N) является двоичной записью искомого числа R .Укажите минимальное число N,после обработки которого автомат получает число,больше 73.В ответе это число запишите в десятичной системе
переменные а,с присваивают тип integer, т.е. целые числа; b присваивает тип string, т.е строковый тип
begin - начало программы
readln - оператор ввода, окончание ln осуществляет переход на новую строку
str(a,b) - т.е. преобразовать данные числа в строку
переменная b так же присваивает тип строковый
Val(b,a,c) где: b- строка, а-результат, с-позиция с которой произошла ошибка преобразования или 0
writeln(а) - оператор вывода, окончание ln осуществляет переход на новую строку
end. - конец программы
begin
var n:=ReadInteger('Кол-во элементов:');
var a:=ArrRandomReal(n,-10,20); a.Println;
Writeln('С округлением если |x|<1');
for var i:=0 to n-1 do
if abs(a[i])<1 then a[i]:=Round(a[i]);
a.Println
end.
Тестовое решение:
Кол-во элементов: 10
-0.751956142835299 5.95022566427953 3.58861613254464 7.42331713783709 -4.75036238075717 -9.41228387384316 -0.700975591643235 3.85500546258642 -1.94321916994789 19.3021338336645
С округлением если |x|<1
-1 5.95022566427953 3.58861613254464 7.42331713783709 -4.75036238075717 -9.41228387384316 -1 3.85500546258642 -1.94321916994789 19.3021338336645