fevereiro 6, 2026

Quadrado Mágico em Código

Por admin

Sobre a Matemática

Quadrado mágico é uma tabela de números dispostos em forma de quadrado, de maneira que a soma dos números de cada linha, coluna ou diagonal seja sempre a mesma.

Sobre o Código

Na linguagem de programação Python,

def – é a palavra-chave usada para definir uma função.

sum() – é a função que soma todos os elementos de uma lista, tupla ou outro iterável numérico.

[0] – é o índice que acessa o primeiro elemento de uma lista, tupla ou sequência (índices começam em 0).

for...in... – é a estrutura de repetição que percorre elementos de uma sequência.

if – é a estrutura condicional que executa um bloco de código se a condição for verdadeira.

!= – é o operador de diferença; verifica se dois valores são diferentes.

return – encerra a função e retorna um valor para quem a chamou.

range() – gera uma sequência de números inteiros, muito usada em laços for.

+= – é o operador de atribuição com soma, adiciona um valor à variável existente.

[0][0] – acessa o elemento da linha 0 e coluna 0 em uma matriz (lista de listas).

or – é o operador lógico OU, retorna verdadeiro se pelo menos uma condição for verdadeira.

print() – é a função usada para exibir informações na tela.

# – é usado para criar comentários ao código, que são notas para se entender melhor o que o código faz.

Vamos ao código…

# Quadrado Mágico 3×3
def eh_quadrado_magico(quadrado):
    soma_referencia = sum(quadrado[0])

    for linha in quadrado:
        if sum(linha) != soma_referencia:
            return False

    for coluna in range(3):
        soma_coluna = 0
        for linha in range(3):
            soma_coluna += quadrado[linha][coluna]
        if soma_coluna != soma_referencia:
            return False

    diagonal_principal = quadrado[0][0] + quadrado[1][1] + quadrado[2][2]
    diagonal_secundaria = quadrado[0][2] + quadrado[1][1] + quadrado[2][0]

    if diagonal_principal != soma_referencia or diagonal_secundaria != soma_referencia:
        return False

    return True


quadrado = [
    [8, 1, 6],
    [3, 5, 7],
    [4, 9, 2]
]

print("É quadrado mágico?", eh_quadrado_magico(quadrado))
Código Python (.py)O que faz
def eh_quadrado_magico(quadrado):Define uma função que recebe uma matriz (lista de listas).
soma_referencia = sum(quadrado[0])Calcula a soma da primeira linha, que será usada como referência.
for linha in quadrado:Percorre cada linha do quadrado.
if sum(linha) != soma_referencia:Verifica se a soma da linha é diferente da soma de referência.
return FalseEncerra a função indicando que não é quadrado mágico.
for coluna in range(3):Percorre os índices das colunas (0, 1, 2).
soma_coluna = 0Inicializa a soma da coluna.
for linha in range(3):Percorre as linhas para somar a coluna atual.
soma_coluna += quadrado[linha][coluna]Soma os valores da coluna.
if soma_coluna != soma_referencia:Compara a soma da coluna com a soma de referência.
diagonal_principal = …Soma os elementos da diagonal principal.
diagonal_secundaria = …Soma os elementos da diagonal secundária.
if diagonal_principal != soma_referencia or diagonal_secundaria != soma_referencia:Verifica se alguma diagonal não bate com a soma.
return TrueRetorna verdadeiro se todas as somas forem iguais.
quadrado = […]Define o quadrado mágico 3×3.
print(…)Mostra o resultado da verificação.

Saída do código (valor de retorno)…

É quadrado mágico? True

Fonte:
– Editora Didática Paulista. Ensino Didático 2000: Ensino Fundamental e Ensino Médio. Sorocaba: Editora Didática Paulista, [s.d.].
– Códigos e comentários gerados por ChatGPT com revisão nossa.
– https://docs.python.org/pt-br/3/ [Documentação Oficial do Python]