Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 02.07.2025
Сообщений: 4

Задача создать систему бух учета

27.07.2025, 11:43. Показов 3395. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Я только начинаю. Нужно написать систему бух учета. Логика контроля расходов и доходов должны быть в одном классе, а логика системы налогообложения в других.

Должен быть класс Company который помнит о себе title(название), debit(доходы), credit(расходы) и taxSystem (систему налогообложения).

При этом в классе Company должен быть только 1 конструктор который задает title и taxSystem.

Есть метод shiftMoney(int amount), который работает следующим образом:
если amount больше 0, то значение debit увеличивается на amount;
если amount меньше 0, то значение credit увеличивается на Math.abs(amount);
если amount равно 0, то ничего не происходит.

Систему налогообложения наследуются от класса taxSystem налог УСН Доходы 6% и налог УСН Доходы минус расходы 15%

Еще в классе Company должен быть сеттер, который меняет систему налогообложения.

И метод метод payTaxes(), который:
рассчитает размер налогов с помощью выбранной компанией системы налогообложения;
выведет на экран сообщение вида: Компания <название> уплатила налог в размере: <сумма> руб.;
обнулит счётчики debit и credit.

Добавлено через 1 минуту
Предварительно написала это

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
import taxes.TaxSystem;
 
public class Main {
    public static void main(String[] args) {
 
 
        int debit = 0;
        int credit = 0;
        TaxSystem calcTaxFor = new TaxSystem();
        Company company = new Company(" Окно ", calcTaxFor);
        company.shiftMoney(1000);
        company.shiftMoney(-60);
        company.payTaxes();
        company.setTaxSystemCalcTaxFor(calcTaxFor);
    }
 
}
 
 
import taxes.TaxSystem;
 
 
public class Company {
 
    public String title;
    public int debit ;
    public int credit;
    public TaxSystem calcTaxFor;
 
 
    public Company(String title,TaxSystem taxSystem){
        this.title = title;
        this.calcTaxFor = taxSystem;
 
    }
 
    public void shiftMoney(int amount){
        if (amount > 0){
            int debit = this.debit + amount;
            System.out.println(debit);
        } else if(amount < 0){
            int credit = this.credit + Math.abs(amount);
 
            System.out.println(credit);
        }else if (amount == 0){
            System.out.println("0");
        }
    }
 
    public void setTaxSystemCalcTaxFor(TaxSystem taxSystemCalcTaxFor) {
        this.calcTaxFor = taxSystemCalcTaxFor;
    }
 
    public void payTaxes() {
        System.out.println("Компания "+ title +" уплатила налог в размере: "+ this.calcTaxFor +" руб.");
 
    }
 
 
 
 
}
 
package taxes;
 
public class TaxSystem {
 
    public int calcTaxFor(int debit, int credit) {
 
        return 0;
    }
 
}
 
package taxes;
 
public class income extends TaxSystem{
 
    @Override
    public int calcTaxFor(int debit, int credit){
        int tax6 = (debit * 6)/100;
        if (tax6 > 0){
            return tax6;
        }else return 0;
    }
 
}
 
package taxes;
 
public class income_minus_expenses extends TaxSystem{
 
 
    @Override
    public int calcTaxFor(int debit, int credit){
        int tax15 = (debit - credit) * 15 / 100;
        if(tax15 > 0){
            return tax15;
        }else return 0;
    }
}
Добавлено через 56 секунд
Код компилируется, но выдаёт неверное значение почему не могу понять, ломаю голову не первый день. Подскажите если поняли в чём причина
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
27.07.2025, 11:43
Ответы с готовыми решениями:

Создание системы бухгалтерского учёта
Добрый день! Есть домашнее задание. Никак не выходит Надо написать систему бухгалтерского учёта....

Создать приложение для задачи определения стоимости разговора по телефону с учетом скидки, c использованием оператора if
напишите пожалуйста программу. Создать приложение для задачи определения стоимости разговора по...

Разработка системы управления учетом рабочего времени сотрудников.
Разработка системы управления учетом рабочего времени сотрудников. Система должна включать учет...

8
231 / 172 / 71
Регистрация: 14.06.2024
Сообщений: 468
27.07.2025, 12:56
Цитата Сообщение от hatshess Посмотреть сообщение
int debit = 0;
int credit = 0;
Цитата Сообщение от hatshess Посмотреть сообщение
int tax6 = (debit * 6)/100;
Цитата Сообщение от hatshess Посмотреть сообщение
int tax15 = (debit - credit) * 15 / 100;
с копейками/центами ваша Company не работает?

Java
1
System.out.printf("6/100=%f  15/100=%f\n",(double)(6/100),(double)(15/100));
0
0 / 0 / 0
Регистрация: 02.07.2025
Сообщений: 4
27.07.2025, 12:59  [ТС]
нет, только с целыми числами.

Нашла в чём ошибка, все работает
0
-74 / 61 / 2
Регистрация: 23.11.2024
Сообщений: 769
27.07.2025, 19:43
Цитата Сообщение от hatshess Посмотреть сообщение
Нашла в чём ошибка
А нам, читателям, почему бы не рассказать?

Java
1
2
3
4
5
6
7
8
9
10
11
12
public void shiftMoney(int amount){
        if (amount > 0){
            int debit = this.debit + amount;
            System.out.println(debit);
        } else if(amount < 0){
            int credit = this.credit + Math.abs(amount);
 
            System.out.println(credit);
        }else if (amount == 0){
            System.out.println("0");
        }
    }
Вот тут считывается значение переменной класса, вычисляется новое, и кладётся в стек.
Обратно в переменную класса вычисленное значение не помещается.
0
1 / 1 / 0
Регистрация: 26.11.2019
Сообщений: 14
29.07.2025, 10:09
даёшь 1Ску на Java-e
0
 Аватар для vvm28
771 / 539 / 67
Регистрация: 22.12.2013
Сообщений: 2,498
Записей в блоге: 26
16.10.2025, 20:26
Цитата Сообщение от hatshess Посмотреть сообщение
нет, только с целыми числами.
Вас не смущает, то что вы используете int для работы с финансами?

Добавлено через 18 минут
BigDecimal для этих целей был бы неплохой выбор.
1
Valechka-Думай о Высоком
 Аватар для Ludwig Valentin
171 / 290 / 26
Регистрация: 11.08.2022
Сообщений: 3,713
01.11.2025, 19:31
Про план счетов слыхали или это упрощённая модель?
0
0 / 0 / 0
Регистрация: 23.12.2025
Сообщений: 2
23.12.2025, 17:20
Цитата Сообщение от vvm28 Посмотреть сообщение
Вас не смущает, то что вы используете int для работы с финансами?

Добавлено через 18 минут
BigDecimal для этих целей был бы неплохой выбор.
Почему бы и не int? BigDecimal/BigInteger это все же объекты, и они потяжелее примитивов)
Сумма в интах может представлять из себя копейки например. Фронт пусть сам выполняет целочисленное и деление по модулю для отображения суммы в формате руб/коп.
В инте правда можно представить не более 21.5 млн. руб. Для домашней бухгалтерии хватит) Ну и за потокобезопасностью нужно тщательней следить, тогда как BigDecimal/BigInteger избавляют от лишней мороки
0
Эксперт .NET
 Аватар для Usaga
14314 / 9398 / 1355
Регистрация: 21.01.2016
Сообщений: 35,431
11.02.2026, 16:37
Цитата Сообщение от vvm28 Посмотреть сообщение
Вас не смущает, то что вы используете int для работы с финансами?
В int могут держать копейки. Или число с фиксированной запятой. Внезапно, да?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
11.02.2026, 16:37
Помогаю со студенческими работами здесь

Система учета товаров на складе
Помогите, пожалуйста, сделать программу на тему &quot;Система учета товаров на складе&quot; Буду чрезмерно...

Написать программу для учета статистики продвижения web-сайта в поисковых системах
Нужно написать программу для Учета статистики продвижения web-сайта в поисковых системах. О чем:...

Clojure Экспертная система по учету сотрудников на Lisp
Добрый день. Имеется экспертная система, написанная на Prolog мною в учебных целях в универе....

Ваша задача - рассчитать заработную плату для сотрудников с учетом следующих условий: Сотрудникам платят почасово
Ваша задача - рассчитать заработную плату для сотрудников с учетом следующих условий: Сотрудникам...

Ваша задача - рассчитать заработную плату для сотрудников с учетом следующих условий: Сотрудникам платят почасово
Ваша задача - рассчитать заработную плату для сотрудников с учетом следующих условий: Сотрудникам...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Вывод данных через динамический список в справочнике
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Функция заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
К слову об оптимизации
kumehtar 01.04.2026
Вспоминаю начало 2000-х, университет, когда я писал на Delphi. Тогда среди программистов на форумах активно обсуждали аккуратную работу с памятью: нужно было следить за переменными, вовремя. . .
Идея фильтра интернета (сервер = слой+фильтр).
Hrethgir 31.03.2026
Суть идеи заключается в том, чтобы запустить свой сервер, о чём я если честно мечтал давно и давно приобрёл книгу как это сделать. Но не было причин его запускать. Очумелые учёные напечатали на. . .
Модель здравосоХранения 6. ESG-повестка и устойчивое развитие; углублённый анализ кадрового бренда
anaschu 31.03.2026
В прикрепленном документе раздумья о том, как можно поменять модель в будущем
10 пpимет, которые всегда сбываются
Maks 31.03.2026
1. Чтобы, наконец, пришла маршрутка, надо закурить. Если сигарета последняя, маршрутка придет еще до второй затяжки даже вопреки расписанию. 2. Нaдоели зима и снег? Не надо переезжать. Достаточно. . .
Перемещение выделенных строк ТЧ из одного документа в другой
Maks 31.03.2026
Реализация из решения ниже выполнена на примере нетипового документа "ВыдачаОборудованияНаСпецтехнику" с единственной табличной частью "ОборудованиеИКомплектующие" разработанного в конфигурации КА2. . . .
Functional First Web Framework Suave
DevAlt 30.03.2026
Sauve. IO Апнулись до NET10. Из зависимостей один пакет, работает одинаково хорошо как в режиме проекта так и в интерактивном режиме. из сложностей - чисто функциональный подход. Решил. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru