У меня есть 12 учетных сумм, связанных с двумя разными счетами, представленными в этом порядке: -18.91, -8.48, -3654.47, -3379.07, - 648,91, -2025,30, -1121,27, -1132,26, -22,68, -324,45, -861.50 и -24,31; из них, комбинация которых составляет сумму счета -8574,87; остальные суммы должны быть равны другой сумме счета-фактуры -4646.74. Существует ли математическая формула, которая может быть записана в COBOL для определения этого результата.Кто-нибудь знает, как написать этот алгоритм в COBOL: суммарные значения массива с суммой, равной X
01 Табличные значения таблицы Acct. 05 acct-entry встречается 50 раз 10 acct-amt PIC S9 (12) V99
01 номер таблицы счетов-фактур. 05 inv-entry происходит 50 раз 10 inv-amt PIC S9 (12) V99
Код прост. Где ваш алгоритм? Сядьте с карандашом и спиной старого листинга, и придумайте, как это сделать «вручную». Затем подумайте о том, как реализовать это с кодом COBOL. Предположительно, вы находитесь на курсе, поэтому для реализации вы должны использовать методы, которые вы изучили до сих пор. Но сначала выясните, как это сделать. Код приходит позже. Я бы пошел на сумму -4646.74, возможностей будет меньше, поэтому он будет работать быстрее. Удобно сортировать данные, это просто перестановки с пределом. –
Да, я смог понять это на бумаге. Мне нужна процедура в COBOL, которую моя программа может использовать для этой ситуации, которая возникает довольно часто. Это только один пример суммы денег, с которыми я сталкиваюсь, в разном порядке. -18,91 -3654,47 -648,91 -324,45 = -4646,74. – Christine
Хорошая работа. Итак, вам нужно обновить свой вопрос тем, что вы придумали в псевдокоде, и показать, как вы пытались реализовать это в COBOL и где вы застряли с ним. –