Уведомления

Группа в Telegram: @pythonsu

#1 Май 4, 2017 00:31:58

Manu
Зарегистрирован: 2017-05-04
Сообщения: 2
Репутация: +  0  -
Профиль  

Работа цикла

 Почему в данном примере (в функции "minus_last(m)")  j лежит от (0, l), а не (0, l - 1)?
# -*- coding: utf-8 -*-
import random
def make_matrix(m,n):
	for i in range(0,n):
		a = []
		for j in range(0,n):
			a.append(int(random.random() * 100))
		m.append(a) 
 
def minus_last(m):
	l = len(m)
	for i in range(0,l-1):
		for j in range(0,l):
			m[i][j] = m[i][j] - m[l-1][j]
 
def print_matrix(m):
	for i in m:
		print(i)
	print()
 
arr = []
 
make_matrix(arr,4)	
print_matrix(arr)
 
minus_last(arr)
print_matrix(arr)

Отредактировано Manu (Май 4, 2017 00:35:28)

Офлайн

#2 Май 4, 2017 16:52:17

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

Работа цикла

Manu
Почему в данном примере (в функции “minus_last(m)”) j лежит от (0, l), а не (0, l - 1)?
Насколько я понимаю оно создает “матрицу” 4х4 заполняет ее случайными числами от 0 до 100 и потом от каждого элемента отнимает значение элемна стоящего в том же столбце последней строки.
i - строки, j - столбцы
Последняя строку не обрабатываем поэтому i in range(0,l-1)
range(0,4) вернет 0,1,2,3 Если бы j было от (0, l - 1) то оно бы принимало значения 0,1,2 и последний столбец не обрабатывался бы.



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Отредактировано PEHDOM (Май 4, 2017 16:54:36)

Офлайн

#3 Май 5, 2017 09:35:16

Manu
Зарегистрирован: 2017-05-04
Сообщения: 2
Репутация: +  0  -
Профиль  

Работа цикла

PEHDOM
Понял) Спасибо за ответ)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version