Информатика, вопрос задал vladvasilev318 , 2 года назад

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

Приложения:

pinguinbird: Влад, очень лениво рисовать блок-схемы. Не люблю их делать. Просто код вам кину.
vladvasilev318: окей

Ответы на вопрос

Ответил pinguinbird
1

Задание 1: Найти произведение элементов массива с чётными номерами

def input_Mas():

 '''

 Данная функция позволяет заполнить одномерный массив длинной n с клавиатуры.

 Возвращает заполненный массив.

 '''

 while True:

   try:

     n = int(input('Введите количество элементов в массиве: '))

     if n > 0: break

     else: print('Количество элементов должно быть целым положительным числом.')

   except ValueError:

     print('Количество элементов должно быть целым положительным числом.')

 a =[0]*n

 i = 0

 while i < len(a):

   try:

     a[i] = float(input('Введите %d элемент списка ' % (i+1)))

     i+=1

   except ValueError:

     print('Вы ввели некорректное значение. Вводите целое число.')

 return a

def multi_Mas(a):

 y = 1

 for i in range(0,len(a),2):

   y *= a[i]

 return y

'''

Основной код программы

'''

print('-= Данная программа вычисляет произведение всех элементов массива с чётными индексами =-')

print()

mas = input_Mas()

print(mas)

print(f'Произведение элементов с чётными индексами: {multi_Mas(mas)}')

Задание 2: Найти сумму элементов массива, расположенных между первым и последним нулевыми элементами

def input_Mas():

 '''

 Данная функция позволяет заполнить одномерный массив длинной n с клавиатуры.

 Возвращает заполненный массив.

 '''

 while True:

   try:

     n = int(input('Введите количество элементов в массиве: '))

     if n > 0: break

     else: print('Количество элементов должно быть целым положительным числом.')

   except ValueError:

     print('Количество элементов должно быть целым положительным числом.')

 a =[0]*n

 i = 0

 while i < len(a):

   try:

     a[i] = float(input('Введите %d элемент списка ' % (i+1)))

     i+=1

   except ValueError:

     print('Вы ввели некорректное значение. Вводите целое число.')

 return a

def getIndexOfElement(a, e, first=True):

 '''

 Данная функция возвращает индекс первого (при first = True) или последнего (при first = False) элемента со значением e

 '''

 index = -1

 if first == True:

   i = 0

   while i < len(a) and index == -1:

     if a[i] == e:

       index = i

     i+=1

 if first == False:

   i = len(a)-1

   while i >= 0 and index == -1:

     if a[i] == e:

       index = i

     i+=-1

 if index >= 0:

   return index

 else: raise ValueError

'''

Основной код программы

'''

print('-= Данная программа вычисляет сумму всех элементов массива, стоящих между первым и последним элементами определённого значения =-')

print()

mas = input_Mas() # заполняем массив

print(mas)

while True:

 try:

   elem = float(input('Значение элемента, между которыми нужно посчитать сумму: '))

   break

 except ValueError:

   print('Значение элемента должно быть числом.')

try:

 print(f'Сумма между первым и последним {elem} равна: {sum(x for x in mas[getIndexOfElement(mas,elem)+1:getIndexOfElement(mas,elem,False)])}')

except:

 print(f'Элемента {elem} в массиве {mas} не существует.')


vladvasilev318: блок-схема всё-таки нужна
pinguinbird: Что я могу сказать... нарисуйте :) И кажется "Спасибо" вас не учили говорить
vladvasilev318: Извиняюсь, что не сказал спасибо, простите мою дерзость не могли бы вы помочь мне ещё один раз, заранее спасибо
vladvasilev318: пожалуйста...
Новые вопросы