Ошибка метода списка добавления в Python? - PullRequest
0 голосов
/ 24 сентября 2019

Итак, в области компьютерных наук я убил некоторое время и занялся этой простой проблемой .Короче говоря, вам нужно создать список размером n ^ 2 , в который необходимо ввести n * n чисел.Затем вы должны найти диагональные (поскольку наш список является своего рода квадратом) числа и добавить их (для первой и второй диагонали).Лучше просмотрите ссылку для лучшего объяснения и включенных примеров.

Итак, моя проблема ПОЧЕМУ МОЙ КОД НЕ РАБОТАЕТ почему мой код не хочет добавлять 4 числа, когда у меня n равно 2. Вот мой код для правильного объяснения:

n = int(input(''))
d = []

i = 0

while i < n * n: # a loop to input all the digits
    b = int(input(''))
    d.append(b) # here's where an error happens, even though I've input 4 times, PyCharm debug shows two integers in the list
    i += 1

sum1 = d.pop(0) # our first diagonal sum (undone)
sum2 = d.pop(n * n - n) # second diagonal sum (undone)

g = 1
x = n + 1 # addon for the .pop method
while g < n:
    sum1 += d.pop(x) # the trigger. code breaks because my list has only 2 integers inside, while x = 3 (when n = 2)
    x += 1 + n
    g += 1

# the other code is no-special
g = 1
p = n*n - 1
while g < n:
    sum2 += d.pop(p)
    p += n*n - 1
    g += 1

print(sum1, sum2)

Я действительно с нетерпением жду, чтобы решить эту проблему.Меня это так беспокоит, что я даже написал об этом в стеке, ха-ха!Пожалуйста, не возражайте против этого детского объяснения в начале, я новичок в stackoverflow.

...