Найти - Пользователи
Полная версия: Отобрать числа из одного массива в другой, по определенным условиям.
Начало » Центр помощи » Отобрать числа из одного массива в другой, по определенным условиям.
1
morgan6206
На основе исходного массива B сформировать новый массив C. В массив C отобрать те элементы, которые больше среднего арифметического массива B и стоят на местах с четными индексами.

Столкнулся с рядом проблем:
  • Выдает ошибку в предпоследней строчке “invalid sintaxis”

  • Как на Питоне отобрать элементы из одного массива в другой. На Паскале это выглядит приблизительно так:
    b[bN] := a[i];
Как мне разобраться с этими проблемами

n = 10
z = 10.0
print('Введите массив:')
a = [int(input('a[' + str(x) + '] = ')) for x in range(n)]
sred_arifm = sum(a)/z
if x%2=0:
    if a>sred_arifm:
morgan6206
Все сделал
FishHook
# -*- coding:utf-8 -*-
print 'Введите массив (нечисловое значение для окончания ввода):'
array = []
while 1:
    x = raw_input("Число:")
    if x.isnumeric():
        array.append(int(x))
    else:
        break
avg = float(sum(array))/len(array)
result = [x for index, x in enumerate(array) if x > avg and not index % 2]

ЗЫ. Не проверял. Лень.
morgan6206
FishHook
Если не трудно, объясните каждую строку. Только начал изучать и не могу понять, что за что отвечает. Заранее благодарен!
Еще я не понял как в вашей программе ввести массив, ввожу “1”, выдает ошибку:

Traceback (most recent call last):
File "C:/Python26/lab", line 5, in <module>
if x.isnumeric():
AttributeError: 'str' object has no attribute 'isnumeric'

Мне нужен ввод массива от 1 до 10
Budulianin
morgan6206
AttributeError: ‘str’ object has no attribute ‘isnumeric’
У тебя Python 2.x, такой метод есть в Python 3.x
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB