Написать программу на языке Python и прикрепить текст программы, а также результат работы программы в виде скриншота. Условие: Задать массив из 10 элементов. Заполнить его случайными величинами в интервале [20, 40]. Определить количество элементов, больших суммы всех элементов массива, и напечатать их номера. Вывести полученные данные на экран
Var
S:longint;
i:integer;
A:byte;
Begin
S:=0;
Repeat
Read(A);
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A;
Until A = 0;
WriteLn('S = ',S);
End.
Теперь объяснение каждой строки:
Var
S:longint;
i:integer;
A:byte; // В эту переменную будет вводится число с клавиатуры. Тип Byte может принимать значения от 0 до 255. Поэтому его как раз хватит.
Begin
S:=0; // Тут будет храниться сумма, поэтому переменную следует сперва обнулить.
Repeat // далее начинается цикл
Read(A); // эта команда каждый раз считывает с клавы число, и записывает его в переменную A.
if (A mod 2 <> 0)and(A mod 7 = 0) then S:=S+A; //тут проверяется 2 условия, и если они выполняются - к переменной S прибавляется значение переменной А
1 условие: число нечётно, то есть остаток от деления его на 2 не равен нулю (A mod 2 <>0)
2 условие: Число кратно 7, то есть делится без остатка на 7, то есть остаток от деления равен нулю (A mod 7 = 0)
Until A = 0; // Цикл повторяется до тех пор, пока введённое с клавы число не будет равно нулю (A = 0)
WriteLn('S = ',S); // Тут выводится искомая сумма
End.
// Внимание! Если программа не работает, обновите версию!
begin
var s:=ReadlnString('Вводите:');
if s=s.Where(s->s in ['0'..'7']).JoinIntoString then begin
var n:BigInteger=0;
var p:Biginteger:=1;
for var i:=s.Length downto 1 do begin
n:=n+(s[i].ToDigit)*p;
p*=8
end;
if n mod 5=0 then
Writeln('Текст является записью восьмеричного числа, кратного 5')
else Writeln('Текст является записью восьмеричного числа, не кратного 5')
end
else Writeln('Текст не является записью восьмеричного числа')
end.
Пример
Вводите: 26343553
Текст является записью восьмеричного числа, кратного 5