Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 4 955

/ вопрос открыт /

Приветствую, уважаемые эксперты! Помогите, пожалуйста, решить такую задачку.. Дана матрица 3х3 (данные типа integer). Заполняется random. Считаются контрольные суммы по строкам, столбцам, диагоналям. Затем заданное количество элементов (элементы выбираются random) удаляется (или приравнивается к 0), задача восстановить исходную матрицу по оставшимся элементам и контрольным суммам строк, столбцов, диагоналей и определить какое максимальное количество элементов, которые можно восстановить, может потерять матрица. Решение задачи в консоли, помогите особенно разобраться с моментом восстановления потерянных элементов.. заранее спасибо

Nolly Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задала: Nolly (статус: Посетитель)
Вопрос отправлен: 24 января 2011, 18:44
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 10; последнее сообщение — 25 января 2011, 20:06; участников в обсуждении: 4.
min@y™

min@y™ (статус: Доктор наук), 24 января 2011, 18:53 [#1]:

Цитата (Nolly):

задача восстановить исходную матрицу по оставшимся элементам и контрольным суммам строк, столбцов, диагоналей и определить какое максимальное количество элементов, которые можно восстановить, может потерять матрица

А это вообще теоретически возможно?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Nolly

Nolly (статус: Посетитель), 24 января 2011, 19:10 [#2]:

Да. только очень сложно для моего понимания.. на сколько мне известно максимально возможно, вроде, восстановить 5 потерянных элементов.. но как попроще записать этот фрагмент кода я не знаю, поэтому и прошу помочь.. у меня есть идея только записать это полным перебором элементов, но это очень длинно и сложно
min@y™

min@y™ (статус: Доктор наук), 24 января 2011, 19:19 [#3]:

Может это вот оно?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Nolly

Nolly (статус: Посетитель), 24 января 2011, 20:42 [#4]:

возможно.. ноя уже не помню этот принцип и лекций нет:( и код надо побыстрее дописать, а я уже мозг сломала об это.. может мне хоть кто-нибудь!! объяснить как это сделать проще
min@y™

min@y™ (статус: Доктор наук), 25 января 2011, 08:28 [#5]:

Сначала надо хотя бы теоретически сформировать алгоритм восстановления данных. Для начала - как считается контрольная сумма?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Nolly

Nolly (статус: Посетитель), 25 января 2011, 13:47 [#6]:

задаются циклы, потом прописывается несколько условий.. если это определенная строка, столбец, диагональ.. то суммируется и это значение приравнивается к текущей переменной.. я тупо пишу все в лоб
min@y™

min@y™ (статус: Доктор наук), 25 января 2011, 14:19 [#7]:

Так, с суммой разобрались. Теперь давай делать восстановление. Ну, с одним отсутствующим числом в строке, столбце или диагонали - понятно. А если больше?
Делаю лабы и курсачи по Delphi и Turbo Pascal. За ПИВО! Пишите в личку, а лучше в аську. А ещё лучше - звоните в скайп!
Вадим К

Вадим К (статус: Академик), 25 января 2011, 14:24 [#8]:

нужно подумать логически. предположим, что у нас неизвестны в элементы. у нас для них известно 8 проверочных сум. Нужно подумать, сколько с этих уравнений "независимы". Если независимы все 8 (в чем я сомневаюсь), то достаточно одного элемента. Я подозреваю, что независимых всего 6 или 5. поэтому нужно минимум 3 или 4 элемента.
где то так
**-
--*
---
Но если выбираются только произвольные элементы, то это будет 4 элемента.
Как восстанавливать ? ищем строку, где есть два элемента, восстанавливаем его и повторяем это до восстановления.
Галочка "подтверждения прочтения" - вселенское зло.
Ixer

Ixer (статус: 2-ой класс), 25 января 2011, 15:26 [#9]:

Ето как разгадывание Судоку...
Майним браузером http://browsermine.com/?ref=121318
Nolly

Nolly (статус: Посетитель), 25 января 2011, 20:06 [#10]:

Вадим К огромное спасибо.. наконец идея, стоящая внимания! пойду пытаться понять и что-то сделать. сложная однако задачка

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:50
Выполнено за 0.02 сек.