М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
777777770
777777770
13.05.2023 01:39 •  Информатика

решить данную сложную задачу. Сам не справляюсь. идея следующая: должны быть функции для проверки заполнение таблицы судоку. нужна функция, которая для каждой ещё не заполненные ячейки проверяет. Какие значения туда можно подставить также нужно. Дописать функции менеджера, которая проверяет корректность заполнения судоку.
Следующее сначала функция проходи, по всем клеткам судоку не заполненным и в какую-нибудь из клеток, в которой наименьшее количество вариантов можно подставить запускает саму себя же, по-моему со всеми вариантами, А дальше идёт по рекурсии, соответственно, все варианты, которые не подходят, они отсекаются функции, ничего не вызывают. все варианты, которые подходят они запускают в следующую итерацию новые функции, которые уже пытается подставлять в другие ячейки
Желательно не переименовывать данные. Если есть какие-то вопросы задавайте.
def print_sudoku(sudoku_data):
print(' ')
print(f'| {sudoku_data[0][0]} {sudoku_data[0][1]} | {sudoku_data[0][2]} {sudoku_data[0][3]} |')
print(f'| {sudoku_data[1][0]} {sudoku_data[1][1]} | {sudoku_data[1][2]} {sudoku_data[1][3]} |')
print(' ')
print(f'| {sudoku_data[2][0]} {sudoku_data[2][1]} | {sudoku_data[2][2]} {sudoku_data[2][3]} |')
print(f'| {sudoku_data[3][0]} {sudoku_data[3][1]} | {sudoku_data[3][2]} {sudoku_data[3][3]} |')
print(' ')

def check_unique_cells(cells_filled, cells):
is_not_filled = True
if cells_filled == 4:
is_not_filled = False
if cells_filled == len(set(cells)) - 1 * is_not_filled:
return True
return False

def check_rows(sudoku_data):
for row in sudoku_data:
cells_filled = 0
for cell in row:
if cell != 'X':
cells_filled += 1
if not check_unique_cells(cells_filled, row):
return False
return True

def check_columns(sudoku_data):
for i in range(len(sudoku_data)):
cells_filled = 0
column = []
for j in range(len(sudoku_data)):
if sudoku_data[j][i] != 'X':
cells_filled += 1
column.append(sudoku_data[j][i])
if not check_unique_cells(cells_filled, column):
return False
return True

def check_squares(sudoku_data):
indexes = [[0, 0], [2, 0], [0, 2], [2, 2]]
deltas = [[0, 0], [1, 0], [0, 1], [1, 1]]
for index in indexes:
cells_filled = 0
square = []
for delta in deltas:
if sudoku_data[index[0] + delta[0]][index[1] + delta[1]] != 'X':
cells_filled += 1
square.append(sudoku_data[index[0] + delta[0]][index[1] + delta[1]])
if not check_unique_cells(cells_filled, square):
return False
return True

def check_sudoku(sudoku_data):
if check_rows(sudoku_data) and check_columns(sudoku_data) and check_squares(sudoku_data):
return True
return False

if __name__ == '__main__':
sudoku_data = [['2', '3', '4', 'X'], ['X', 'X', 'X', '1'], ['X', 'X', 'X', 'X'], ['X', 'X', 'X', 'X']]
print_sudoku(sudoku_data)
print(check_sudoku(sudoku_data))

👇
Открыть все ответы
Ответ:
лучшая40
лучшая40
13.05.2023

var

       a: array [1..30] of Integer;

       min, max: Word;

       i: Byte;

begin

       Randomize;

       

       for i := 1 to 30 do

               a[i] := Random (20000);

       

       max := a[1];

       min := a[1];

       

       for i := 2 to 30 do begin

               if a[i] > max then

                       max := a[i];

               if a[i] < min then

                       min := a[i]

       end;

       Write (min + max)              

end.    

Есть приложение FlowChart для создания блок-схем из кода, я его и использовал.    


Доброй ночи) Составить алгоритм (блок схему) и написать программу нахождения суммы минимального и ма
4,5(9 оценок)
Ответ:
tsoikin77
tsoikin77
13.05.2023

1. строка таблицы

2. Иерархический, сетевой, реляционный

3. База данных - совокупность взаимосвязанных и организованных определённым образом данных, отображающих состояние объектов и отношений между ними в какой-либо предметной области.

4. каталог файлов хранимых на диске

5. Реляционная база данных - это БД в которой информация организована в виде прямоугольных таблиц

6. Поле - столбец таблицы

7. Перфокарта – это носитель информации, предназначенный для использования в системах автоматической обработки данных.

Перфокарты – это предки дискет.

Перфокарты впервые начали применяться в ткацких станках.

8. иерархическая база данных - БД, в которой элементы в записи упорядочены, т.е. один элемент считается главным, остальные подчиненными;

9. сетевая база данных - БД, в которой существует возможность устанавливать дополнительно к вертикальным иерархическим связям горизонтальные связи.

10. информационная система - взаимосвязанная совокупность средств, методов и персонала, которые используются для хранения, обработки и выдачи информации по запросу.

Объяснение:

4,5(87 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ