Budget: 350 UAH Deadline: 1 day
Добрый день. Сделаю оба задания до 17:00. Имею большой опыт разработки на C#
https://csbc-edu.github.io/oop/homework/hw03_encapsulation.pdf
Внизу ЕСТЬ ІНДЗ, и там нужно сделать 2 задания до 17:00!
(Два класи) Створіть класи Person (особа) та Product (товар). У кожної особи є ім’я, кошти та корзину товарів. Кожний товар має назву (непорожній рядок) та ціну (невід’ємне число). Розробіть програму, в якій кожна команда відповідає купівлі особою одного товару. Якщо особа може собі дозволити покупку товару, додайте цей товар у її корзину. Якщо грошей недостатньо, виведіть повідомлення ("[Ім’я особи] can't afford [Назва товару]". Перші 2 рядки вводу повинні перелічувати всіх осіб з їх бюджетом та всі товари з їх цінами. Після всіх покупок виведіть для кожної особи в порядку появи всі придбані нею товари. Якщо нічого не придбано, виведіть ім’я особи та повідомлення "Nothing bought". Для від’ємної суми коштів особи слід викинути виняток з текстом "Money cannot be negative", а при порожньому рядку з іменем особи – "Name cannot be empty". Ввід Вивід Pesho=11;Gosho=4 Bread=10;Milk=2; Pesho Bread Gosho Milk Gosho Milk Pesho Milk END Pesho bought Bread Gosho bought Milk Gosho bought Milk Pesho can't afford Milk Pesho - Bread Gosho - Milk, Milk Mimi=0 Kafence=2 Mimi Kafence END Mimi can't afford Kafence Mimi – Nothing bought Jeko=-3 Chushki=1; Jeko Chushki END Money cannot be negative 2. (Калорійність піци) Піца готується з тіста та різних начинок. Змоделюйте клас Pizza, в якому передбачаються поля, що описують назву піци, основу та набір начинок. Кожний інгредієнт повинен мати свій клас з відповідними характеристиками: • тісто може бути білим чи з цільнозернової муки, а також хрустким (crispy), липким (chewy) чи домашнім (homemade) тощо. • начинки можуть включати м’ясні, овочеві, сирні чи соусні добавки. Кожний інгредієнт описується масою в грамах, а також повинен мати метод для обчислення калорійності залежно від типу начинки. Калорійність на грам будемо обчислювати за допомогою спеціальних множників. Наприклад, біле тісто має множник 1.5, липке – 1.1, тобто 100г липкого білого тіста буде мати 100*1.5*1.1 = 330 калорій. Змоделюйте класи таким чином, щоб вони були правильно інкапсульовані та забезпечували публічний метод, який обчислюватиме калорійність кожної піци відповідно до її інгредієнтів. Тісто. Створіть клас, який представлятиме тісто для піци. Він включатиме • тип основи, який може бути білим (множник – 1.5) або цільнозерновим (1.0); • метод приготування, що дає хрустке (0.9), липке (1.1) чи домашнє (1.0) тісто; • масу в грамах. Клас повинен розкривати лише геттер для отримання калорій на грам. Встановіть правильні модифікатори доступу, конструктор, поля та геттери / сеттери. Виконайте валідацію даних в сеттерах: якщо передано некоректне значення основи чи методу приготування, повинен викидатись виняток з повідомленням «Invalid type of dough.». Маса тіста знаходиться в межах від 1 до 200 грамів включно – інакше трапиться виняток з повідомленням "Dough weight should be in the range [1..200].". Протестуйте роботу класу з такими вводом та виводом: Ввід Вивід Dough White Chewy 100 END 330.00 Dough Tip500 Chewy 100 END Invalid type of dough. Dough White Chewy 240 END Dough weight should be in the range [1..200]. Начинки (toppings). Відповідний клас представлятиме 4 типи начинок: м’ясо, овочі, сир та соус. Кожна начинка має масу в грамах та множник для обчислення калорій: • м’ясо – 1.2; • овочі – 0.8; • сир – 1.1; • соус – 0.9. Встановіть правильні модифікатори доступу, конструктор, поля та геттери / сеттери. Валідація дних передбачає передачу коректного типу начинки – інакше буде викинуто виняток з повідомленням "Cannot place [незва некоректного аргументу] on top of your pizza.". Дозволена маса начинки знаходиться в межах від 1 до 50 грам включно. Інакше буде викинуто виняток з повідомленням "[Назва виду начинки] weight should be in the range [1..50].". Протестуйте роботу класів так, щоб зчитувались одне тісто та одна начинка, а виводились їх калорійність: Ввід Вивід Dough White Chewy 100 Topping meat 30 END 330.00 72.00 Dough White chewy 100 Topping Krenvirshi 500 END 330.00 Cannot place Krenvirshi on top of your pizza. Dough White Chewy 100 Topping Meat 500 END 330.00 Meat weight should be in the range [1..50]. Піца. Повинна мати назву піци, набір начинок та тісто. Використайте раніше створені класи, а також додайте відкриті геттери для назви, кількості начинок та загальної кількості калорій (сума калорій окремих інгредієнтів). Розкрийте метод для додавання начинки, відкритий сеттер для тіста і геттер для загальної кількості калорій. Валідація даних передбачає, що назва піци не повинна бути порожнім рядком, але й не довше 15 символів. Інакше повинен викидатись виняток з повідомленням "Pizza name should be between 1 and 15 symbols.". Кількість начинок повинна знаходитись у діапазоні від 1 до 10 включно. Інакше повинен викидатись виняток з повідомленням "Number of toppings should be in range [0..10].". Протестуйте роботу програми на таких випадках: Ввід Вивід Pizza Meatless Dough Wholegrain Crispy 100 Topping Veggies 50 Topping Cheese 50 END Meatless - 370.00 Calories. Pizza Burgas Dough White Homemade 200 Topping Meat 123 END Meat weight should be in the range [1..50]. Pizza Bulgarian Dough White Chewy 100 Number of toppings should be in range [0..10]. Topping Sauce 20 Topping Cheese 50 Topping Cheese 40 Topping Meat 10 Topping Sauce 10 Topping Cheese 30 Topping Cheese 40 Topping Meat 20 Topping Sauce 30 Topping Cheese 25 Topping Cheese 40 Topping Meat 40 END Pizza Bulgarian Dough White Chewy 100 Topping Sirene 50 Topping Cheese 50 Topping Krenvirsh 20 Topping Meat 10 END Cannot place Sirene on top of your pizza.
Budget: 350 UAH Deadline: 1 day
Добрый день. Сделаю оба задания до 17:00. Имею большой опыт разработки на C#
C# / .NET WPF Developer – Completion of Migration of a Large Invoicing Program RAFSOFT.NET Sp. z o.o. is looking for a C# / .NET developer to complete the rewriting of a large, long-standing invoicing program to a new technology. The project involves the migration of an extensive desktop application for companies, used for invoicing, handling sales documents, contractors, records, and accounting-tax functions. The new version of the program is being created in C# / .NET, using DevExpress components. The project is already about 70% rewritten. We are looking for someone who can help bring it to completion, organize the missing elements, perform tests, and ensure the new version operates in accordance with the existing program. Scope of Work: completion of the migration of a large desktop application to C# / .NET, recreation of the functionality of the old program in the new version, maintaining as identical logic of operation, appearance, and handling as possible, working with DevExpress components, analyzing existing code and comparing the operation of the old and new versions of the program, fixing bugs, completing missing functions, and testing the application, collaborating on the final preparation of the program for deployment. Requirements: very good knowledge of C# and .NET, experience in creating desktop applications for Windows, knowledge of WPF or WinForms, experience with DevExpress or similar UI component libraries, ability to analyze a large existing project, accuracy and patience in reproducing existing functionality, ability to test one's own changes, very good ability to use AI tools supporting programming, code analysis, refactoring, and testing. Preferred: experience with legacy projects, knowledge of or previous work with Visual Basic 6.0, experience in migrating applications from older technologies to C# / .NET, knowledge of issues related to invoicing, accounting, JPK, or KSeF, experience working with large business applications. Who We Are Looking For: We are looking for a self-sufficient, precise, and technically experienced person who can enter an existing project, understand its logic, and consistently bring it to completion. In this project, it is very important not only to write new code but also to faithfully reproduce the operation of the old program — both in terms of functionality and appearance as well as handling. We also require proficiency in using AI tools in daily programming work. We are looking for someone who can use AI practically: for code analysis, bug finding, speeding up migration, creating tests, and organizing the project. About the Company: RAFSOFT.NET Sp. z o.o. is a Polish company creating software for entrepreneurs, accounting offices, and small and medium-sized enterprises. Our main product is the VAT Invoice program, supporting the daily handling of invoices, sales documents, contractors, records, and settlements in accordance with Polish regulations. We develop our own desktop applications and tools related to invoicing, accounting, KSeF, JPK, and automation of business processes. Our solutions are designed with stability, ease of use, and practical application in users' daily work in mind. Company website: www.rafsoft.net
Configuration: 1C UT 11 Address warehouse Zebra TC26 TSD Work via RDP Product scanning is performed in receiving, placement, picking documents, and other warehouse operations. Current problem: Warehouse workers operate through the Zebra TSD. When scanning, they do not always notice messages on the screen. It is necessary to implement different sound signals for different scanning results. Required functionality: Successful scanning and processing in 1C short sound signal. Barcode read by the scanner, but the product is not found in 1C another sound signal (different from successful). Error during warehouse operation incorrect cell; incorrect product; other address warehouse control errors. separate sound signal. Sounds should be played on the TSD via RDP. Preferences: use of WAV files or another reliable playback method; ability to add new types of sound messages in the future; minimal impact on the speed of TSD operation. Please specify in your response: Experience with UT 11 and address warehouses. Have you implemented similar tasks for Zebra TSD or other TSDs. Estimated cost and execution time. How the implementation of sound signals is planned.