Skip to content

shadowzer/cafe-v1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cafe-v1

It's algorythmical version of cafe project.

Владелец вашего любимого кафе обратился к вам с просьбой разработать программу для учета заказов. У него есть подозрения, что некоторые из нечистых на руку официантов часть заказов проводят мимо кассы.

В конце каждого дня он готов присылать вам следующую информацию в виде отдельных текстовых файлов:

1.в файле с кассы учитываются заказы с указанием блюд и количества заказанных порций каждым клиентом за день

Пример orders-20160201.txt:

Заказ №1 шарлотка = 1 кофе американо = 2 итого: 310,00

Заказ №2 мороженое = 3 лимон = 1 кофе латте = 2 итого: 460,00

2.В файле от доверенного менеджера с кухни указываются количество блюд, приготовленных за сутки, в том порядке, в котором передавали заказы официанты. Пример kitchen-20160201.txt:

шарлотка = 1 кофе американо = 3 вайли с джемом = 2 мороженое = 5 кофе латте = 1 лимон = 1 кофе латте = 1

3.В отдельном файле задано меню кафе с указанием цен за одну порцию. Пример menu-20160201.txt:

шарлотка = 150,00 вафли с джемом = 120,00 кофе американо = 80,00 кофе латте = 140,00 мороженое = 50,00 лимон = 30,00

Владелец кафе просит, чтобы ваша программа выдавала ему отчет о кражах за сутки со следующей информацией: •перечень блюд и количество порций, которые были проведены мимо кассы; •итоговая стоимость украденных блюд.

Задания: Этап I. Реализация на структурах и функциях 1.Определить структуры данных. 2.Разделить реализацию на ввод/вывод и логику (алгоритмы обработки). Согласовать интерфейсы функций (названия, входные/выходные параметры) и их взаимодействие. 3.Каждый из членов бригады (из 2-х человек) реализует свою часть функций. 4.Интегрировать решения и протестировать на различных входных данных.

Необходимо: •Установить и соблюдать соглашения по именованию и форматированию кода: корректное именование функций, переменных, структур данных. •Грамотно декомпозировать алгоритм на функции: одна функция решает только одну задачу. •Грамотная работа с динамической памятью new/delete (выделение/освобождение, отсутствие утечек) •Обрабатывать некорректные ситуации при работе программы (не найден файл, некорректное содержание входных файлов - ошибки форматирования (пропущено количество или название, символ = и т.д.), ошибки в данных (опечатки в названиях блюд), отсутствие краж и т.д.)

Затем, разбить на модули: один или несколько заголовочных файлов, плюс реализация в одном или нескольких cpp-файлах.

About

It's algorythmical version of cafe project.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages