Уведомления

Группа в Telegram: @pythonsu

#1 Май 4, 2020 11:32:01

jeyzihno
Зарегистрирован: 2020-05-04
Сообщения: 6
Репутация: +  0  -
Профиль   Отправить e-mail  

Функции в питоне

Здравствуйте! У меня проблема с передачей переменных из функций в функции.

Я хочу передать 3 переменных из функции findmax в функцию s и 3 переменных из функции findmin в функцию s. Мне выдает ошибку, подскажите как мне передать переменные?
Ошибка:s() s() missing 5 required positional arguments: ‘c’, ‘d’, ‘b’, ‘f’, and ‘g’
Не понимаю почему переменные не передаются((
(У меня снизу arg, потому-что у я пытался другим способом передать и не исправил еще)

 import random
array = []
def main():#Заполняет массив.
    for i in range(0, 10):
        array.append([])
        for j in range(1, 11):
            array[i].append(random.randint(0, 11))
def pr():# Печатает массив.
    for i in array:
        print(i)
    print()
def findmax():#Находит максимальное число.
    a = 0
    for i in array:
        for j in i:
            if j > a:
                a = j
                c = array[array.index(i)].index(j)  # Индекс максимального числа
                d = array.index(i)  # Индекс максимального число
    return(a, c, d)
def findmin():#Находит минимальное число.
    b = 11
    for i in array:
        for j in i:
            if j < b:
                b = j
                f = array[array.index(i)].index(j)  # Индекс минимального числа
                g = array.index(i)  # Индекс минимального числа
    return(b, f, g)
def s(a, c, d, b, f, g):# Складывает элементы.
	z = 0
	if g < arg[2]:
		for i in range(f, 10):
			z += array[g][i]
		for i in range(0, arg[1]+1):
			z += array[arg[2]][i]
		for i in array:
			for j in i:
				if array.index(i) in range(g+1, arg[2]):
					z += j
	if g > arg[2]:
		for i in range(arg[1], 10):
			z += array[arg[2]][i]
		for i in range(0, f+1):
			z += array[g][i]
		for i in array:
			for j in i:
				if array.index(i) in range(arg[2]+1, g):
					z += j
	if (g == arg[2]) and (arg[1] > f):
		for i in range(f, arg[1]+1):
			z += array[arg[2]][i]
	if (g == arg[2]) and (arg[1] < f):
		for i in range(arg[1], f+1):
			z += array[arg[2]][i]
main()
pr()
findmax()
findmin()
s(findmax())

Отредактировано jeyzihno (Май 4, 2020 11:33:48)

Офлайн

#2 Май 4, 2020 14:08:57

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10026
Репутация: +  857  -
Профиль   Отправить e-mail  

Функции в питоне

jeyzihno
 s(findmax())
  
s(*findmax())



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version