|
2 / 1 / 1
Регистрация: 29.03.2022
Сообщений: 22
|
||||||
Вычисляем баланс счетов, сортируем по сумме19.04.2022, 01:30. Показов 2220. Ответов 9
Есть такая задача:
ОТЧЕТ ПО СЧЕТАМ Напишите программу, которая проходит по всем операциям в файле bank.txt, а после выводит все счета и баланс каждого счета. Данные нужно вывести в следующем формате: Счет1 Баланс1;Счет2 Баланс2;Счет N; Баланс N. То есть счета между собой разделены точкой с запятой, а каждый счет по отдельности содержит свой номер и баланс, разделенные пробелом. Счета нужно выводить в порядке увеличения баланса (см. пример отчета ниже). В файле есть счет 000 — это внутренний счет банка, его выводить не надо: 000;123;200 123;456;100 456;789;200 789;123;500 Пример отчета (на основе данных из условия): 789 -300;456 -100;123 600 Код ниже считает сумму по каждому счету и формирует список, который сортируется последним циклом. Отсортировать нужно без использования sort, lambda или функций, только циклами и условиями. Последний цикл находит минимальную сумму и записывает ее в новый список. Затем нужно этот элемент удалить и я не знаю как это сделать. После удаления ищем следующую минимальную сумму и тд. Если удалить его после строки outsort.append(minn) то сортировка не получится. Как удалить элемент правильно, для реализации описанной логики?
0
|
||||||
| 19.04.2022, 01:30 | |
|
Ответы с готовыми решениями:
9
Сортируем по дате, с дополнением Сортируем лист слиянием Дана строка. Посчитать баланс скобок ([{ . Баланс открытых к закрытым |
|
2 / 2 / 0
Регистрация: 17.04.2022
Сообщений: 12
|
|
| 19.04.2022, 09:56 | |
|
Попробуй использовать .pop() эта функция удаляет элемент списка и возвращает его значение (если я правильно понял твою проблему)
Пример: new_list.append(old_list.pop(min_num))
0
|
|
|
2 / 1 / 1
Регистрация: 29.03.2022
Сообщений: 22
|
|
| 19.04.2022, 13:05 [ТС] | |
|
Catstail Со счета 789на счет 123 перевели 500 денежных едениц.
И так по каждой транзакции. Данные нужно вывести в следующем формате: Счет1 Баланс1;Счет2 Баланс2;Счет N; Баланс N. То есть счета между собой разделены точкой с запятой, а каждый счет по отдельности содержит свой номер и баланс, разделенные пробелом. Пример отчета (на основе данных из условия): 789 -300;456 -100;123 600 Добавлено через 1 минуту giguck, в этом проблема и заключается. Ты предлагаешь уменьшить длину списка во время цикла или другим способом, каким? Если во время цикла то при очередной итерации мы пропустим следующий элемент списка. А чтоб найти минимальное значение нужно перебрать все элементы списка out. После завершения цикла записать минимальное значение в новый список outsort. Затем удалить это значение из out и начать цикл заново для поиска очередного минимального значения. Если я вствляю код для удаления после или перед циклом то алгоритм не работает. Я знаю что можно режить другими алгоритмами, например, не создавать новый список outsort, а менять значения местами в out, но мне нужно разобраться как режить описанным в условии алгоритмом.
0
|
|
|
2 / 1 / 1
Регистрация: 29.03.2022
Сообщений: 22
|
|
| 19.04.2022, 15:37 [ТС] | |
|
Добавлено через 3 минуты
Catstail, Суммы на счетах до начала этих операций не должны использоваться в расчетах по условию задания. Ценными есть только транзакции за определенный период. Транзакции в условии. И они правильно считаются кодом что выше. С этим проблем нету.
0
|
|
|
Супер-модератор
|
||||||
| 19.04.2022, 17:56 | ||||||
000;123;200 123;456;100 456;789;200 789;123;500 Вывод: 789 -300;456 -100;123 600
1
|
||||||
|
2 / 1 / 1
Регистрация: 29.03.2022
Сообщений: 22
|
|
| 19.04.2022, 18:10 [ТС] | |
|
Catstail, Спасибо большое!
С помощью функций sort, lambda все работает правильно Но отсортировать нужно без использования sort, lambda или функций, только циклами и условиями.
0
|
|
|
Супер-модератор
|
||||||
| 19.04.2022, 18:19 | ||||||
Сообщение было отмечено Ihor2022 как решение
Решение
1
|
||||||
|
2 / 1 / 1
Регистрация: 29.03.2022
Сообщений: 22
|
||||||
| 19.04.2022, 19:39 [ТС] | ||||||
|
Catstail, Спасибо. Вместо создания нового списка - меняем значения местами в старом - все ок.
Но все-равно мне нужно найти ошибку в моем коде. Отсортировать не меняя алгоритм. А за предложенные иные алгоритмы спасибо, задачу решают. Добавлено через 49 минут Ошибку нашел, переменная minn не менялась, т.к. не заканчивался while после завершения очередного for. Ее нужно было объявить в теле цикла:
0
|
||||||
| 19.04.2022, 19:39 | |
|
Помогаю со студенческими работами здесь
10
Приложение для игры в монополию. Сохраняет имена игроков и их баланс в структуру. Позволяет изменять баланс Вычисляем приближённо интеграл Вычисляем сумму ряда Вычисляем последовательности Фибоначи Вычисляем соседние гексы Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога
SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
|
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
|
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога
SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
|
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога
Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip"
Извлеките архив и вы увидите. . .
|
|
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога
Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д.
Сборка примера
Скачайте. . .
|
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога
Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
|
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net
REST сервисы временно не работают, только через Web.
Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
|
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
|