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

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

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

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

Должен быть класс 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
напишите пожалуйста программу. Создать приложение для задачи определения стоимости разговора по...

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

6
228 / 169 / 71
Регистрация: 14.06.2024
Сообщений: 458
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
133 / 57 / 2
Регистрация: 23.11.2024
Сообщений: 686
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 / 538 / 67
Регистрация: 22.12.2013
Сообщений: 2,497
Записей в блоге: 26
16.10.2025, 20:26
Цитата Сообщение от hatshess Посмотреть сообщение
нет, только с целыми числами.
Вас не смущает, то что вы используете int для работы с финансами?

Добавлено через 18 минут
BigDecimal для этих целей был бы неплохой выбор.
1
Нарушитель
170 / 286 / 26
Регистрация: 11.08.2022
Сообщений: 3,615
01.11.2025, 19:31
Про план счетов слыхали или это упрощённая модель?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.11.2025, 19:31
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru