import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int earn = 0, spend = 0, ins = 0;
boolean run = true;
while (run) {
menu();
switch (sc.nextLine()) {
case "1" -> earn += input(sc, "Введите доход: ");
case "2" -> spend += input(sc, "Введите расход: ");
case "3" -> ins = input(sc, "Введите страховые взносы: ");
case "4" -> calculate(earn, spend, ins);
case "end" -> run = false;
default -> System.out.println("Неизвестная команда.");
}
}
System.out.println("Программа завершена.");
}
private static int input(Scanner sc, String msg) {
System.out.print(msg);
return Integer.parseInt(sc.nextLine());
}
private static void calculate(int earn, int spend, int ins) {
int tax6 = Math.max(earn * 6 / 100 - ins, 0);
int base = Math.max(earn - spend, 0);
int tax15 = Math.max(base * 15 / 100 - ins, 0);
int patent = 30000;
int ndfl = Math.max((earn - spend) * 13 / 100, 0);
int vat = earn * 20 / 100;
System.out.printf("УСН 'Доходы': %d руб.\n", tax6);
System.out.printf("УСН 'Доходы минус расходы': %d руб.\n", tax15);
System.out.printf("ПСН: %d руб.\n", patent);
System.out.printf("ОСН: НДФЛ: %d руб., НДС: %d руб.\n", ndfl, vat);
int min = Math.min(Math.min(tax6, tax15), patent);
String sys = (min == tax6) ? "УСН 'Доходы'" : (min == tax15) ? "УСН 'Доходы минус расходы'" : "ПСН";
System.out.printf("Рекомендуем: %s. Минимальный налог: %d руб.\n", sys, min);
}
private static void menu() {
System.out.println("""
1. Добавить доход
2. Добавить расход
3. Указать страховые взносы
4. Рассчитать налог
Введите 'end' для выхода.
""");
System.out.print("Выберите команду: ");
}
}
Нужно написать программу-помощника индивидуальному предпринимателю (далее - ИП), которая помогает ему выбрать лучшую систему налогообложения. ИП будет заносить суммы доходов и расходов, а программа будет выбирать для него лучшую систему налогообложения из двух:
import java.util.Scanner;
public class Entrepreneur {
public static void main (String[] args) {
Scanner sc = new Scanner( System.in );
int earnings = 0;
int spendings = 0;
boolean isContinue = true;
while (isContinue) {
showMenu();
String answer = sc. nextLine();
switch (answer) {
case "end":
isContinue = false;
break;
case "1":
System. out.println("Ведите сумму дохода:");
earnings += Integer.parseInt(sc.nextLine());
break;
case "2":
System. out.println("Ведите сумму расхода:");
spendings += Integer.parseInt(sc.nextLine());
break;
case "3":
calcAndShowRezults(earnings, spendings);
break;
default:
System. out.println("Я не знаю такой команды:");
}
}
System. out.println("Программа завершена:");
}
private static void calcAndShowRezults( int earnings, int spendings); {
int tax6 = calcTax6('earnings);
int tax15 = calcTax15('earnings,spendings);
String 'TaxType = tax6 < tax15 ? "УСН доходы" : "УСН доходы минус расходы";
int minTax = Math.min(tax6, tax15);
int maxTax = Math.min(tax6, tax15);
if (minTax != maxtax) {
System. out.printf("Мы советуем вам %s\n", taxType);
System. out.printf("Ваш налог составит: %d рублей\n", mintax);
System. out.printf("Налог на другой системе: %d рублей\n", maxtax);
System. out.printf("Экономия: %d рублей\n", maxtax - mintax );
} else }
System. out.'println("Выбирайте любую страну:");
System. out.'printf("Ваш налог составит: %d рублей\n", mintax");
}
}
private static int calcTax15(int earnings, int spendings) {
return Math 'max(tax, 0);
}
private static int calcTax6 (int earnings)
return 'earnings * 6 / 100;
}
private static void showMenu() {
System. out.println("Выберите операцию и введите её номер: \n" +
"1. Добавить новый доход\n" +
"2. Добавить новый расход\n" +
"3. Выбрать систему налогообложения");
}
}