Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.84/55: Рейтинг темы: голосов - 55, средняя оценка - 4.84
3 / 3 / 0
Регистрация: 25.04.2020
Сообщений: 131

Магический квадрат

01.01.2021, 15:30. Показов 12460. Ответов 21
Метки нет (Все метки)

Определить является ли массив размерности n × n логическим магическим квадратом, то есть суммы по всем горизонталям, вертикалям и двум диагоналям должны быть равны. Использовать нужно двухмерный массив
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.01.2021, 15:30
Ответы с готовыми решениями:

Магический шар 8
Магический шар 8 - шуточный способ предсказывать будущее. Программа должна просить пользователя задать некий вопрос, чтобы случайным...

Магический матод __add__
Всем привет. Не могу разобраться с данной задачей. Вот она: "Для одной игры необходимо реализовать механику магии, где при соединении...

Класс MagicalGift (Магический дар)
Напишите класс MagicalGift (Магический дар). Экземпляр класса при инициализации принимает аргументы: имя мага; произвольное число...

21
3750 / 1944 / 613
Регистрация: 21.11.2021
Сообщений: 3,706
27.01.2024, 14:26
Еще вариант:
Python
1
2
3
4
5
6
7
8
9
10
11
12
from random import randint
from itertools import chain
 
def is_magic(matr):
    n = len(matr)
    mm = list(chain(*matr))
    return len(set(map(sum, matr + list(zip(*matr)) + [mm[::n+1], mm[n-1:n*n-1:n-1]]))) == 1
 
n = randint(2,4)
while not is_magic( matr := [[randint(1,3) for _ in range(n)] for _ in range(n)] ):
    pass
print(*matr, sep='\n')
1
0 / 0 / 0
Регистрация: 28.01.2024
Сообщений: 2
09.03.2024, 21:57
Еще вариант, но на него не опирайтесь, я нубас 1.5 мес учусь только


Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
def loShu(hello):
 
    y = 0
    for i in range(len(x)):
        for j in range(len(x[i])):
            print(end='')
        
        if x[i][0] + x[i][1] + x[i][2] == 15 \
           and x[0][0] + x[1][0] + x[2][0] == 15 \
           and x[0][1] + x[1][1] + x[2][1] == 15 \
           and x[0][2] + x[1][2] + x[2][2] == 15 \
           and x[0][0] + x[1][1] + x[2][2] == 15 \
           and x[2][0] + x[1][1] + x[0][2] == 15:
            y += 1
    
            
 
    if y == 3:
        print('Это епта блет квадрат Ло-Шу!!!!')
    else:
        print('Это не Ло-Шу')
 
x = [[4, 9, 2],
     [3, 5, 7],
     [8, 1, 6],
    ]
 
loShu(x)
там еще проблемка есть, то что все эти if and во 2-ом цикле for in и 3 раза прокручиваются, слишком сложно для меня было сделать по другому, но я знаю, что конечно же - по-другому можно как-то там
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.03.2024, 21:57

Магический квадрат
Python.Магическим квадратом называют таблицу, в которой записаны числа 1,2,3,… по одному разу, так что сумма чисел в каждой строке и в...

Магический квадрат
Пытаюсь сделать матрицу, которая будет формировать магический квадрат. Почему питон ругается на плюсы в 20,22,30 и 32 строке? Как исправить...

Магический квадрат
Магический квадрат Магическим квадратом называют таблицу, в которой записаны числа 1,2,3,… по одному разу, так что сумма чисел в каждой...

Построить магический квадрат заданного порядка
Магическим квадратом порядка N называется квадратная матрица размера N × N , составленная из чисел 1, 2, ..., N 2 так, что суммы по каждому...

Магический метод класса на C
Доброго времени суток. Есть класс: class MyClass: def __call__(self, X): # вычисления с полями класса и входным...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
22
Ответ Создать тему
Новые блоги и статьи
[golang] Конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов.
alhaos 10.06.2026
Задача Реализовать конкурентный fetcher с ограничением максимального количества одновременных HTTP запросов. Сигнатура func Fetch(urls string, maxConcurrent int) Result Пример urls :=. . .
[golang] Состояние гонки (race condition)
alhaos 10.06.2026
Состояние гонки (race condition) Состояние гонки (Race Condition) — это ошибка, возникающая при одновременном доступе нескольких горутин к одним и тем же данным без должной синхронизации. При этом. . .
Взрослые отношения, и почему они не получаются
kumehtar 09.06.2026
Когда в детстве ребёнок не получает от родителей чего-то важного, он лишается не просто приятных переживаний, а основы для формирования определённых внутренних качеств и навыков. Если ребёнок не. . .
[golang] Worker Pool
alhaos 09.06.2026
Worker Pool Worker Pool — паттерн конкурентной обработки задач в Go. Суть: фиксированное количество горутин-воркеров читают задачи из общего канала и пишут результаты в общий канал результатов. . . .
[golang] Pipeline
alhaos 08.06.2026
Pipeline Pipeline — паттерн конкурентной обработки данных в Go. Суть: данные проходят через цепочку независимых стадий, каждая из которых работает в своей горутине и общается с соседями через. . .
Свет внутри себя
kumehtar 07.06.2026
Пусть это будет здесь lIs4oanZS9Y
Программа для com-порта
Uhbif79 05.06.2026
Всем привет, давно хотел изучить Qt, начинал, бросал, потом снова начинал. И сейчас вот смог написать свою первую программу. До этого имел опыт программирования микроконтроллеров, писал прошивки на. . .
Транскрипция 55-минутного видео через Whisper: WhisperDesktop облажался, спас Google Colab[
anaschu 01.06.2026
Понадобилось получить текст из свежезагруженного видео на YouTube. Казалось бы, задача на пять минут. Заняла полтора часа. Делюсь опытом — может кому пригодится последовательность решений. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru