Списки

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
import random
hum=0
j=0
a=[0]
a= a*10
for j in range(10):
a[j]=random.randint(0,100)
print(a)
hin = a[0]
hax = a[0]
for j in range(10):
if a[j]<hin:
hin=a[j]
if a[j]>hax:
hax=a[j]
print(hin)
print(hax)
while a[j]<hin:
hum+=a[j]
print(hum)
Не могу найти сумму элементов массива, расположенных к минимальному элементу?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
971
219
43
20
Москва
Python:
from random import randint
lst = [randint(-100, 100) for _ in range(10)]
# last - индекс последнего найденного положительного элемента
# previous - индекс предпоследнего найденного положительного элемента
last, previous = 0, 0
print(lst)
for i in range(len(lst)):
    if lst[i] > 0:
        previous = last
        last = i
print(previous)
 
  • Мне нравится
Реакции: Виктор28

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
971
219
43
20
Москва
Ну найди минимальный элемент например через min(a) и потом в цикле for перебирая элементы массива суммируй их в переменную счетчик. Как только попадется минимальный элемент - выходи из цикла
 
  • Мне нравится
Реакции: Виктор28

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
971
219
43
20
Москва
Вставь пожалуйста код как код
1647162378032-png.1702


не забудь отступы
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Python:
import random
hum=0
j=0
a=[0]
a= a*10
for j in range(10):
  a[j]=random.randint(0,100)
print(a)
hin = a[0]
hax = a[0]
for j in range(10):
    if a[j]<hin:
      hin=a[j]
    if a[j]>hax:
      hax=a[j]
print(hin)
print(hax)
while a[j]<hin:
    hum+=a[j]
print(hum)
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
971
219
43
20
Москва
Что значит расположенных к минимальному элементу?

Вот твой код:
Python:
import random
_sum = 0
j = 0
a = [0]
a = a*10
for j in range(10):
    a[j] = random.randint(0, 100)
print(a)
_min = a[0]
_max = a[0]
for j in range(10):
    if a[j] < _min:
        _min = a[j]
    if a[j] > _max:
        _max = a[j]
print(_min)
print(_max)
while a[j] < _min:
    _sum += a[j]
print(_sum)

Вот твой упрощенный код:
Python:
import random
_sum = 0
a = [random.randint(0, 100) for _ in range(10)]
j = 0
_min = min(a)
_max = max(a)
while a[j] < _min:
    _sum += a[j]

print(a)
print(_min)
print(_max)
print(_sum)

Как видно, j всегда равна 0, по этому цикл while может оказаться бесконечным
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Сумма элементов массива которые находятся до минимального элемента.
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Ну как теперь понятно?
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Спасибо,очень помогли.
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Python:
import random
a = [random.randint(-100,100) for _ in range(10)]
print("Massiv=",a)
print("min=",min(a))
print("max=",max(a))
for j in a:
    if j>0:
     break   
  
print(j)
Вывести номер предпоследнего положительного элемента.Как это сделать?
 

Vershitel_sudeb

Vershitel sudeb
Команда форума
Модератор
Мар 17, 2021
971
219
43
20
Москва
Python:
import random
a = [random.randint(-100,100) for _ in range(10)]
print("Massiv=",a)
print("min=",min(a))
print("max=",max(a))
for j in a:
    if j>0:
     break  
 
print(j)
Вывести номер предпоследнего положительного элемента.Как это сделать?
Хранить номера 2-х последних найденных положительных элементов в переменных, пройдя по всему списку в переменных будет номер последнего и предпоследнего положительного числа, выведи предпоследнее
 

Виктор28

Новичок
Пользователь
Мар 15, 2022
13
0
1
Python:
from random import randint
lst = [randint(-100,100) for _ in range(10)]
first = None
last = None
pepl = None
for i, v in enumerate(lst):
    if v>0:
        first = i
        break
for i, v in enumerate(reversed(lst)):
    if v>0:
        last = len(lst) -1 -i
        break
for i, v in enumerate(reversed(lst)):
    if v>0:
        pepl = last -1
        break
print("pepl",pepl)
print("first",first)
print("last",last)
print("lst=",lst)
Вывести номер предпоследнего положительного элемента.Как это сделать?
Если чесно не понял то что вы написали.Не могли б вы мне обьяснить.Написал еще один код в теории он должен работать но на практике выходит что я отталкиваюсь от максимального числа списка чтобы найти предпоследний положительний элемент списка.И я не знаю как это исправить?
 

Форум IT Специалистов