Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.05.2008, 17:29   #11
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

хм спасиб, народ а вы бы не могли дать полный код такой проги?
ДЖО вне форума Ответить с цитированием
Старый 23.05.2008, 17:37   #12
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,645
По умолчанию

Проблема в том, что даже на самых быстрых ЭВМ расчёты для такой задачи будут длится не одну сотню лет
eoln вне форума Ответить с цитированием
Старый 23.05.2008, 17:38   #13
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

люди пожалуйста, немогли бы вы дать четкий код проги, умоляю...очень надо, пожалуйста
ДЖО вне форума Ответить с цитированием
Старый 23.05.2008, 17:44   #14
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

люди, ну пожалуйста...дайте кто нибудь полный код этой проги...
умоляю...очень надо
ДЖО вне форума Ответить с цитированием
Старый 23.05.2008, 19:28   #15
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Предлагаю вот такой вариант.
Может несколько усложнено, но оптимизировать уже не хочется.
Суть метода.

Получаем все возможные варианты строк, сумма чисел в которых = 20
Таких строк всего около 5000.

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

Но даже в этом случае прямой перебор всех вариантов это слишком долго. Вместо этого делаем следующее:
берем пустую матрицу. Записываем в нее один из вариантов для первой строки. Записываем вариант первой колонки. Дальше - вторая строка и вторая колонка и так далее. Процесс записи оформляем как рекурсию. В этом случае неправильные варианты отсеиваются быстрее, чем при прямом переборе.

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

07229
00389
66152
64550
83900

Код во вложении.
Вложения
Тип файла: txt code.txt (4.5 Кб, 167 просмотров)
alexBlack вне форума Ответить с цитированием
Старый 27.05.2008, 17:16   #16
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

Код:
procedure getVariants(S, N:integer; L:TStringList);
var 
L1:TStringList;
    i, j:integer;
    S1:integer;
begin
вот в этой строке(выделенно красным) выдает ошибку Undeclared identifier: 'TStringList'
ДЖО вне форума Ответить с цитированием
Старый 27.05.2008, 18:24   #17
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Ни разу не увидел упоминания языка на котором Вы пишете.

Код, который я привел - на Delphi. TStringList - список строк. Если Вы пишете на Паскале, рекомендую заменить его на динамически размещаемый массив строк:

type
StringList = array [0..6000] of String[5];
TStringList = ^StringList;

или используйте другой походящий вариант. Описание метода я привел, рабочий код тоже. Разбираться Вам.
alexBlack вне форума Ответить с цитированием
Старый 01.06.2008, 16:13   #18
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

я пишу тоже на Delphi, но все равно есть ошибка с TStringList
ДЖО вне форума Ответить с цитированием
Старый 01.06.2008, 16:19   #19
alexBlack
Участник клуба
 
Регистрация: 12.10.2007
Сообщений: 1,204
По умолчанию

Цитата:
Сообщение от ДЖО Посмотреть сообщение
я пишу тоже на Delphi, но все равно есть ошибка с TStringList
uses Classes
alexBlack вне форума Ответить с цитированием
Старый 02.06.2008, 00:59   #20
ДЖО
Пользователь
 
Регистрация: 22.05.2008
Сообщений: 13
По умолчанию

alexBlack
ничего не получается, ты не мог бы дать скомпилированный код
ДЖО вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Исходник игры "судоку" На языке С++ FAk Общие вопросы C/C++ 2 15.05.2008 18:47
помогите с задачей "методы решения уравнений" kano Паскаль, Turbo Pascal, PascalABC.NET 3 22.02.2008 20:52
"Транспортная задача", "Поиск решения" Perroman Microsoft Office Excel 3 12.12.2007 17:12