Petrovich
?>

Заполнить одномерный массив из n элементов случайными числами из промежутка от -20 до 20 и определить количество положительных элементов массива.

Информатика

Ответы

purbuevat56524

Program Task;

Const N = 10;

Var a: Array [1..N] of Integer;

i: Integer;

Begin

Randomize;

For i := 1 To N Do

a[i] := Random(25 + 20 + 1) - 20;

WriteLn('Результат №1: ');

For i := 1 To N Do

Write(a[i], ' ');

WriteLn;

For i := 1 To N Do

If a[i] > 0 Then

a[i] := 1

Else If

a[i] < 0 Then

a[i] := 0;

WriteLn('Результат №2:');

For i := 1 To N Do

Write(a[i], ' ');

ReadLn;

End.

Подробнее - на -

Объяснение:

Наталья_Васищев

В задаче нам гарантируется, что на ввод подаются исключительно числа. При чем даже заданы ограничения с которыми они подаются, так что мы можем избавить себя от их валидации и сразу приступить к обработке.

Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (1 строка кода).

Затем, нам надо получить все элементы последовательности. Но нам не обязательно работать с ними, как с числами, так как с нас не требуют математических операций. Так что просто оставляем их в виде строк (2 строка кода).

Далее, необходимо убрать все лишние значения (не оканчивающиеся на 3) и оставить только нужные. Для этого используем стандартную функцию filter, в которой проверяем последние символы строк на соответствие "3" (строка кода 3).

Осталось только посчитать количество оставшихся строк и вывести результат (строка кода 4).

Код:

N = int(input())

sequence = [input() for _ in range(N)]  # Вводим числа

sequence = list(filter(lambda x: x[-1] == "3", sequence))   # Отсеиваем лишние

print(len(sequence))  # Сколько осталось?

Если ответ устроил, не забудь отметить его как "Лучший".

elozinskaya

В задаче нам гарантируется, что на ввод подаются исключительно числа. При чем даже заданы ограничения с которыми они подаются, так что мы можем избавить себя от их валидации и сразу приступить к обработке.

Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (1 строка кода).

Затем, нам надо получить все элементы последовательности. Но нам не обязательно работать с ними, как с числами, так как с нас не требуют математических операций. Так что просто оставляем их в виде строк (2 строка кода).

Далее, необходимо убрать все лишние значения (не оканчивающиеся на 3) и оставить только нужные. Для этого используем стандартную функцию filter, в которой проверяем последние символы строк на соответствие "3" (строка кода 3).

Осталось только посчитать количество оставшихся строк и вывести результат (строка кода 4).

Код:

N = int(input())

sequence = [input() for _ in range(N)]  # Вводим числа

sequence = list(filter(lambda x: x[-1] == "3", sequence))   # Отсеиваем лишние

print(len(sequence))  # Сколько осталось?

Если ответ устроил, не забудь отметить его как "Лучший".

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Заполнить одномерный массив из n элементов случайными числами из промежутка от -20 до 20 и определить количество положительных элементов массива.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

ИП-Сысоев1628
rusplatok
Марина1101
seleznev1980
Natalya1895
Ионов202
Кочугурова
Pilotmi247074
Александровна
natalia-shelkovich
ovdei71
Ushakova Sakhno
Elen-ti81459
vladburakoff5
margarita25061961