{"id":19514595,"url":"https://github.com/jcoderpaul/katacalc","last_synced_at":"2025-08-04T18:15:53.785Z","repository":{"id":229284918,"uuid":"776329265","full_name":"JcoderPaul/KataCalc","owner":"JcoderPaul","description":"A primitive console calculator - converter. Test task Kata Academy.","archived":false,"fork":false,"pushed_at":"2024-04-26T06:14:36.000Z","size":62,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-25T23:32:53.365Z","etag":null,"topics":["java","java-collections","java-io","regex"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/JcoderPaul.png","metadata":{"files":{"readme":"ReadMe.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2024-03-23T07:46:14.000Z","updated_at":"2024-06-11T07:17:43.000Z","dependencies_parsed_at":"2024-04-26T07:29:20.483Z","dependency_job_id":"572ebed5-0aaa-4560-a149-693edce82a0b","html_url":"https://github.com/JcoderPaul/KataCalc","commit_stats":null,"previous_names":["jcoderpaul/katacalc"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/JcoderPaul/KataCalc","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JcoderPaul%2FKataCalc","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JcoderPaul%2FKataCalc/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JcoderPaul%2FKataCalc/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JcoderPaul%2FKataCalc/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/JcoderPaul","download_url":"https://codeload.github.com/JcoderPaul/KataCalc/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/JcoderPaul%2FKataCalc/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":268741196,"owners_count":24300021,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-04T02:00:09.867Z","response_time":79,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","java-collections","java-io","regex"],"created_at":"2024-11-10T23:36:58.943Z","updated_at":"2025-08-04T18:15:53.757Z","avatar_url":"https://github.com/JcoderPaul.png","language":"Java","readme":"## Консольное приложение \"Калькулятор\" (KataAcademy)\n________________________________________________________________________________________________________________________\n### Задание:\nСоздать консольное приложение \"Калькулятор\".\n\nПриложение должно читать из консоли введенную пользователем строку: числа, арифметические операции проводимые между ними\nи выводить в консоль результат их выполнения.\n________________________________________________________________________________________________________________________\n### Ограничения:\n- Реализуй класс Main с методом - public static String calc(String input): метод должен принимать строку с арифметическим \nвыражением между двумя числами и возвращать строку с результатом их выполнения. \n- Разрешено: \n  - Добавлять свои импорты, классы и методы. \n  - Добавленные классы не должны иметь модификаторы доступа (public или другие).\n- Обязательное требование:\n  - Калькулятор умеет выполнять операции сложения, вычитания, умножения и деления с двумя числами: \na + b, a - b, a * b, a / b. \n  - Данные передаются в одну строку (смотри пример выше)! \n  - Решения, в которых каждое число и арифмитеческая операция передаются с новой строки считаются неверными.\n  - Калькулятор умеет работать, как с арабскими (1,2,3,4,5...), так и с римскими (I,II,III,IV,V...) числами.\n  - Калькулятор должен принимать на вход числа от 1 до 10 включительно, но не более. \n  - На выходе числа не ограничиваются по величине и могут быть любыми.\n  - Калькулятор умеет работать только с целыми числами.\n  - Калькулятор умеет работать, или только с арабскими, или только с римскими цифрами одновременно (в одной строке), \nпри вводе пользователем смешанной строки, например: 3 + II или IV - 9, калькулятор должен выбросить исключение и \nпрекратить свою работу. \n  - При вводе римских чисел, ответ должен быть выведен римскими цифрами, соответственно, при вводе арабских чисел - \nответ ожидается (возвращается) арабскими цифрами.\n  - При вводе пользователем неподходящих чисел приложение выбрасывает исключение и завершает свою работу.\n  - При вводе пользователем строки, не соответствующей одной из вышеописанных арифметических операций, приложение \nвыбрасывает исключение и завершает свою работу.\n  - Результатом операции деления является целое число, остаток отбрасывается.\n  - Результатом работы калькулятора с арабскими числами могут быть отрицательные числа и ноль. \n  - Результатом работы калькулятора с римскими числами могут быть только положительные числа, если результат работы \nменьше единицы, выбрасывается исключение.\n________________________________________________________________________________________________________________________\n### Пример работы программы:\n\nInput: 1 + 2\n\nOutput: 3\n________________________________________________________________________________________________________________________\nInput: VI / III\n\nOutput: II\n________________________________________________________________________________________________________________________\nInput: I - II\n\nOutput: throws Exception //т.к. в римской системе нет отрицательных чисел\n________________________________________________________________________________________________________________________\nInput: I + 1\n\nOutput: throws Exception //т.к. используются одновременно разные системы счисления\n________________________________________________________________________________________________________________________\nInput: 1\n\nOutput: throws Exception //т.к. строка не является математической операцией\n________________________________________________________________________________________________________________________\nInput: 1 + 2 + 3\n\nOutput: throws Exception //т.к. формат математической операции не удовлетворяет заданию - три операнда и две операции\n________________________________________________________________________________________________________________________","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcoderpaul%2Fkatacalc","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjcoderpaul%2Fkatacalc","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjcoderpaul%2Fkatacalc/lists"}