Кислинская1055
?>

Pascal Написать программу, которая для заданного при вводе исходных данных целочисленного одномерного массива А из m элементов (m<=200), вычисляет произведение положительных элементов и произведение отрицательных элементов или сообщает, что элементов такого вида нет. ( m задается при вводе исходных данных

Информатика

Ответы

Tarapovskaya
begin var a := ReadArrInteger(ReadInteger('n:')); Println('Положительных:', a.Any(x->x>0)?a.Product(x->x>0?x:1).ToString:'нет'); Println('Отрицательных:', a.Any(x->x<0)?a.Product(x->x<0?x:1).ToString:'нет'); end.

Пример работы:


Pascal Написать программу, которая для заданного при вводе исходных данных целочисленного одномерног
sbn07373

import random

class Passanger:

   def __init__(self, name_pass, bagadge_value, bagadge_quantity):

       """Constructor"""

       self.name_pass = name_pass

       self.bagadge_value = bagadge_value

       self.bagadge_quantity = bagadge_quantity

if __name__ == "__main__":

   list_name_pass = ["Иванов","Иванова","Калдыбег","Мухутдинов","Карелов","Анакондов"]

   list_bagadge_value = [25,1,4,14,29,35,2,4,25,6,25,3]

   list_bagadge_quantity = [1,4,5,1,1,1,1,1,1,4]

   list_passangers = []

   random.shuffle(list_name_pass)

   random.shuffle(list_bagadge_value)

   random.shuffle(list_bagadge_quantity)

   for i in range(len(list_name_pass)):

       list_passangers.append(Passanger(list_name_pass[i],list_bagadge_value[i], list_bagadge_quantity[i]))

   print("Подходят под условие:")

   for i in list_passangers:

       if (i.bagadge_value < 25 and i.bagadge_quantity == 1):

           print(i.name_pass, i.bagadge_value, i.bagadge_quantity)

   print("")

   print("Пассажиры:")

   for i in list_passangers:

       print(i.name_pass, i.bagadge_value, i.bagadge_quantity)

Объяснение:

https://pastebin.com/hNT2m49y

alzheleshikov

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

Перво-наперво, нам необходимо получить количество чисел в последовательности. Для этого просто берем первую строку в стандартном вводе и рассматриваем её как число (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))  # Сколько осталось?

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

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

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

Pascal Написать программу, которая для заданного при вводе исходных данных целочисленного одномерного массива А из m элементов (m<=200), вычисляет произведение положительных элементов и произведение отрицательных элементов или сообщает, что элементов такого вида нет. ( m задается при вводе исходных данных
Ваше имя (никнейм)*
Email*
Комментарий*

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

milanparipovic864
Некрасов Валентина1097
agaloan8
Elen-ti81459
Ионов202
LYuBOV
Марина1101
Lugovoi
annino
bulenbeiser
margarita25061961
serge-lysoff
sryzhova6392
СмыковаДарья1969
Pervosha