import java.util.Scanner; public class Main { private static Scanner input = new Scanner( System.in ); private static boolean number_of_accounts_entered = false ; private static boolean items_entered = false ; private static int number_of_accounts = 0 ; private static final String EXIT_COMMAND = "ÐавеÑÑиÑÑ"; //static final String EXIT_COMMAND = "777"; private static final String ANSI_RED = "\u001B[31m" ; private static final String ANSI_GREEN = "\u001B[32m" ; private static final String ANSI_YELLOW = "\u001B[33m" ; private static final String ANSI_BLUE = "\u001B[34m" ; private static final String ANSI_PURPLE = "\u001B[35m" ; private static final String ANSI_CYAN = "\u001B[36m" ; public static void main(String[] args) { String s = ""; System.out.println( ANSI_PURPLE+ "------------------------------------------------"); while (!number_of_accounts_entered) { System.out.println(ANSI_YELLOW + "Ðа ÑколÑÐºÐ¸Ñ Ñеловек Ð½ÐµÐ¾Ð±Ñ Ð¾Ð´Ð¸Ð¼Ð¾ ÑазделиÑÑ ÑÑÑÑ?" + ANSI_BLUE); s = input.nextLine(); if (s.matches("\\d{1,9}")) if (Integer.parseInt(s) > 1) { number_of_accounts_entered = true; } if (!number_of_accounts_entered) { System.out.println(ANSI_RED + "ÐÑибка! ÐводиÑе Ñелое ÑиÑло болÑÑе единиÑÑ."); } } number_of_accounts = Integer.parseInt(s); High_Load_Calculator calculator = new High_Load_Calculator(number_of_accounts); while ( !items_entered ) { System.out.println(ANSI_YELLOW + "\nÐведиÑе название ÑоваÑа и его ÑÑоимоÑÑÑ Ð² ÑоÑмаÑе \""+ ANSI_GREEN + "Ð¢Ð¾Ð²Ð°Ñ = СÑоимоÑÑÑ"+ ANSI_YELLOW + "\" или \""+ ANSI_GREEN + EXIT_COMMAND + ANSI_YELLOW + "\" Ð´Ð»Ñ ÑаÑÑÑÑа"); s = input.nextLine(); if (s.equalsIgnoreCase(EXIT_COMMAND)) items_entered = true; else if (s.contains("=")) { String[] array_of_s = s.split("="); if (array_of_s.length == 2) if (array_of_s[0].length() > 0 && array_of_s[1].length() > 0) try { double d = Double.parseDouble(array_of_s[1]); if (d <= 0) System.out.println(ANSI_RED + "ÐÑÑиÑаÑелÑное знаÑение в ÑÑоимоÑÑи ÑоваÑа!"); else { array_of_s[0] = array_of_s[0].trim(); double total_cost = calculator.add_item(array_of_s[0], d); System.out.printf(ANSI_BLUE + "ÑÐ¾Ð²Ð°Ñ \"%s\" добавлен ( иÑого: %.2f ÑÑб.)%n\n", array_of_s[0], total_cost); } } catch (NumberFormatException e) { System.out.println(ANSI_RED + "ÐÑибка в ÑÑоимоÑÑи ÑоваÑа!"); } } } System.out.println( ANSI_CYAN+ "\nÐобавленнÑе ÑоваÑÑ:\n"+ calculator.get_items_string()); System.out.printf( "ÐаждÑй Ñеловек должен заплаÑиÑÑ %.2f ÑÑбл", calculator.get_cost_per_account() ); int n = (int) Math.floor( calculator.get_cost_per_account() ); if( 5 <= n%100 && n%100 <= 20 ) System.out.println("ей"); else if( n%10 == 1 ) System.out.println("Ñ" ); else if( 2 <= n%10 && n%10 <= 4 ) System.out.println("Ñ" ); else System.out.println("ей"); System.out.println( ANSI_PURPLE+ "------------------------------------------------"); } }