Stránka: 1 z 1
| [ Príspevkov: 3 ] | |
Autor | Správa |
---|
Registrovaný: 03.02.17 Prihlásený: 02.04.17 Príspevky: 3 Témy: 3 | 3 |
Zdravím , dostal som zadanie na semestrálnu prácu , z ktorej ani netuším ako sa pohnúť keďže moje kodenie v c++ je horšie ako hrozne ... ak by ste s tym vedeli niekto pohnúť a pomôcť mi , tak by som bol neskutočne vďačný Semestrálna práca 1 – špedičná spoločnosť Distribučná spoločnosť FRI („Fast and Reliable Import“) bola vytvorená ako expresná kuriérska firma s cieľom poskytovať služby v oblasti prepravy tovaru. Spoločnosť má centrálny sklad, z ktorého rozváža tovar do regiónov (viď obrázok), pričom na túto činnosť využíva niekoľko menších úžitkových vozidiel. Výrobcovia tovaru dodávajú svoje produkty do centrálneho skladu na kamiónoch naložených paletami. Každá paleta má jednoznačne určeného adresáta - región. Kamióny sú po príchode do centrálneho skladu vyložené, t.j. jednotlivé palety sa roztriedia podľa miesta svojho určenia. Následne sú palety naložené do menších vozidiel, ktoré zabezpečia ich transport k zákazníkom v regiónoch. Kamióny naložené paletami Centrálny sklad Úžitkové vozidlá smerujúce do regiónov Činnosť spoločnosti FRI je možné popísať nasledovne. Distribúcia tovaru z centrálneho skladu je zabezpečená úžitkovými vozidlami, pričom spoločnosť môže dopĺňať svoj vozový park o nové vozidlá. Vozidlo je jednoznačne identifikovateľné na základe evidenčného čísla (ŠPZ) a každé vozidlo má určitú nosnosť a opotrebovanie. Palety, ktoré prichádzajú do centrálneho skladu v kamiónoch, pochádzajú od dodávateľov (výrobcov tovaru). Každý dodávateľ je charakterizovaný obchodným názvom a adresou sídla. Ak chce dodávateľ zabezpečiť distribúciu svojho tovaru cez špedičnú firmu FRI, musí jej nahlásiť dátum príchodu kamiónu a jeho obsah. Firma FRI následne zaeviduje kamión do svojho systému. Po príchode kamiónu do centrálneho skladu špedičnej firmy FRI, sa vyloží jeho obsah. Obsah kamiónu predstavuje niekoľko paliet, ktoré musí špedičná firma rozviesť. Každá paleta má nasledujúce atribúty: región, do ktorého má byť doručená, hmotnosť a dátum doručenia v prípade, že sa jedná o zásielku 1. triedy. Spracovanie paliet v centrálnom sklade spočíva v tom, že sa roztriedia podľa miesta svojho určenia a následne sa naložia do úžitkových vozidiel, ktorými disponuje špedičná spoločnosť. Palety sa musia naložiť do vozidiel tak, aby nebola prekročená nosnosť jednotlivých vozidiel. Okrem toho sa uprednostňujú vozidlá s menším opotrebením, pričom dané vozidlo môže rozvážať v daný deň palety len v jednom regióne. Každé vozidlo, ktoré je naložené, vyráža do regiónu, aby zabezpečilo doručenie paliet. Zákazník môže odmietnuť prevziať paletu. Takáto paleta sa označí ako neprevzatá. Po doručení všetkých paliet sa vozidlo vracia späť do centrálneho skladu. Tu sa z neho vyberú všetky neprevzaté palety a tieto sa následne vrátia dodávateľovi. Okrem toho sa vyhodnotí opotrebenie vozidla. Ak je väčšie ako hraničná hodnota, vozidlo sa zaradí do frontu na odpis a nemôže sa ďalej používať. Vozidlá, ktoré sú zaradené vo fronte na odpis sa vo vhodnom čase vyradia z vozového parku. Spoločnosť FRI potrebuje mať pre plánovanie svojej činnosti informáciu o všetkých paletách, ktoré sú aktuálne v centrálnom sklade. Okrem toho musí mať pre zlepšovanie svojej činnosti informácie o tom, koľko paliet jednotlivých dodávateľov nebolo v danom časovom období prevzatých. Tieto informácie sa využívajú v systéme pre podporu rozhodovania, ktorý umožňuje firme optimalizovať náklady a tržby. Na základe vyššie popísaného modelu spoločnosti FRI, navrhnite a implementujte informačný systém, ktorý bude mať nasledujúce funkcionality: 1. Pridanie nového vozidla do vozového parku špedičnej firmy. Vozidlo je jednoznačne identifikovateľné na základe ŠPZ. Každé vozidlo má nasledujúce atribúty: nosnosť a opotrebovanie. Opotrebovanie je celé číslo z intervalu <0, 100>, pričom hodnota 0 znamená, že vozidlo nemá žiadne opotrebenie (jedná sa o nové vozidlo), a hodnota 100 indikuje, že vozidlo je úplne opotrebované a nemôže byť ďalej používané. 2. Vypísanie zoznamu vozidiel podľa dátumu zaradenia do evidencie (vypíše sa ŠPZ, nosnosť a opotrebenie). 3. Pridanie nového dodávateľa. Dodávateľ je charakterizovaný obchodným názvom a adresou sídla. Obchodný názov je unikátny. 4. Vypísanie zoznamu dodávateľov v abecednom poradí podľa názvu (vypíše sa obchodný názov a sídlo). 5. Ohlásenie kamióna s paletami. Dodávateľ pošle špedičnej firme informáciu o dátume príchodu kamiónu a jeho obsahu. Obsahom kamiónu je zoznam paliet, ktoré musí špedičná firma rozviesť. Každá paleta má nasledujúce atribúty: región, do ktorého má byť doručená, hmotnosť a dátum doručenia v prípade, že sa jedná o zásielku 1. triedy. Ak sa nejedná o zásielku 1. triedy, dátum doručenia je ľubovoľný. 6. Zaevidovanie príchodu kamiónu dodávateľa. Palety sa vyložia do centrálneho skladu, roztriedia sa podľa regiónov, do ktorých majú byť doručené, a zaevidujú sa do informačného systému. V prípade, že kamión dovezie paletu, ktorej hmotnosť je väčšia ako nosnosť vozidla s maximálnou nosnosťou alebo ktorej dátum doručenia je menší alebo rovný aktuálnemu dátumu, paleta nie je zaevidovaná a je automaticky vrátená dodávateľovi. 7. Naplnenie vozidiel paletami. Počas tejto operácie sa palety v centrálnom sklade naložia do jednotlivých vozidiel podľa nasledujúcich pravidiel: v daný deň rozváža dané vozidlo palety len v jednom regióne; pri nakladaní nesmie byť prekročená nosnosť vozidla; prioritne sa nakladajú vozidlá s najmenším opotrebením; v prípade, že v daný deň nie je možné rozviesť všetky palety, tak sa najskôr naložia palety 1. triedy, ktoré musia byť doručené v daný deň (prioritne sa nakladajú palety s menšími hmotnosťami). Ak ostanú vozidlá s voľnými kapacitami, tak sa následne naložia palety s najskorším dátumom príchodu do centrálneho skladu; ak nie je možné naložiť paletu 1. triedy, ktorá má byť doručená v daný deň, tak sa táto označí ako nezrealizovaná a vráti sa dodávateľovi. 8. Prevzatie paliet zákazníkmi. Dané vozidlo odovzdá všetky svoje palety jednotlivým zákazníkom. Pri odovzdávaní môže zákazník odmietnuť prevziať paletu. Takáto paleta sa označí ako neprevzatá a ostane vo vozidle. Pravdepodobnosť, že zákazník odmietne prebrať paletu je 0,05. 9. Návrat vozidla do centrálneho skladu – z vozidla sa vyberú všetky neprevzaté palety a tieto sa následne vrátia dodávateľovi. Aktualizuje sa opotrebenie vozidla tak, že sa k aktuálnemu opotrebeniu pripočíta hodnota i označujúca číslo regiónu, v ktorom vozidlo aktuálne rozvážalo palety. Ak je opotrebenie vozidla viac ako 90, vozidlo sa zaradí do frontu na odpis, v opačnom prípade sa zaradí medzi vozidlá, ktoré môžu rozvážať palety. 10. Vyradenie vozidiel – z evidencie sa vyradia všetky vozidlá, ktoré sú vo fronte na odpis. 11. Vypísanie všetkých paliet, ktoré sú aktuálne v centrálnom sklade a nie sú naložené v nejakom vozidle (vypíše sa dátum príchodu do centrálneho skladu, požadovaný dátum doručenia (ak sa jedná o paletu 1. triedy), hmotnosť a dodávateľ). 12. Vyhľadanie dodávateľa, ktorému bolo za dané časové obdobie vrátené najväčšie množstvo neprevzatých paliet. 13. Vypísanie všetkých paliet 1. triedy, ktoré sa v danom časovom období nepodarilo zrealizovať (vypíše sa dátum príchodu do centrálneho skladu, požadovaný dátum doručenia, hmotnosť a dodávateľ). Pre uľahčenie testovania informačného systému je nutné implementovať nasledujúce funkcie: a. Vypísanie aktuálneho dňa – vypíše aktuálny dátum v informačnom systéme. b. Prechod na ďalší deň – posunie aktuálny deň v informačnom systéme o 1 deň vpred. c. Uloženie a načítanie aktuálneho stavu evidencie do/zo súboru. Bodovanie semestrálnej práce: Počet bodov za semestrálnu prácu Požadovaná funkcionalita 5 1. – 4. a. – c. 10 1. – 6. 20 1. – 7. 40 1. – 13. 45 1. – 13. + grafické rozhranie Poznámky k vypracovaniu semestrálnej práce: Dbajte na správne použitie údajových štruktúr a algoritmov. Údajové štruktúry musia byť Vami naprogramované, správne objektovo navrhnuté, univerzálne, a efektívne implementované z pohľadu výpočtovej zložitosti. Používajte algoritmy, ktoré sú najvhodnejšie pre konkrétne uplatnenie. Pracujte každý samostatne! K semestrálnej práci vypracujte dokumentáciu, ktorá obsahuje: návrh Vašej aplikácie (rozbor použitia údajových štruktúr a ich vhodnosť z pohľadu výpočtovej zložitosti), popis implementácie Vami použitých údajových štruktúr, zložitosti všetkých operácií zo zoznamu 1. – 13., ktoré ste implementovali – je nutné uviesť skutočnú zložitosť, ktorá vyplýva z použitia údajových štruktúr v rámci konkrétnej operácie; napr. ak máte v informačnom systéme zoznam všetkých vozidiel a front vozidiel na odpis, tak do dokumentácie napíšete, že „operácia 10 (vyradenie vozidiel) má zložitosť O(pn), kde p je počet vozidiel vo fronte na odpis a n je celkový počet vozidiel evidovaných v informačnom systéme, pretože postupne musíme odstrániť všetky vozidlá zaradené do frontu na odpis a každé odstraňované vozidlo musíme odstrániť zo zoznamu vozidiel evidovaných v informačnom systéme“, diagram tried, používateľskú príručku. Aplikácia musí byť naprogramovaná v jazyku s manuálnou správou pamäte (t.j. bez garbage collector-u) a musí obsahovať intuitívne používateľské rozhranie (konzola alebo grafické rozhranie), pomocou ktorého bude možné otestovať požadované funkcionality. K obhajobe semestrálnej práce je nutné pripraviť si súbor s testovacími dátami, ktorými naplníte svoju aplikáciu. Po ukončení behu aplikácie musí byť pamäť preukázateľne čistá (nevznikli „memory leak-y“).
|
|
Registrovaný: 01.05.05 Príspevky: 13437 Témy: 1495 | 1495 Bydlisko: Bratislava |
_________________ Streacom DA2 | SilverStone Titanium SX800-LTI 800W | ASRock X299E-ITX/ac | Intel Core i9-9980XE & be quiet! Dark Rock TF | Kingston HyperX Impact 64 GB DDR4 2666 MHz | NVIDIA Titan RTX 24 GB | Intel SSD Optane 905P 480 GB NVMe U.2 & Intel SSD 750 1,2 TB NVMe U.2 & Intel SSD 660p 2 TB NVMe M.2 & Seagate BackUp Plus Portable 56 TB USB | 55" 4K OLED Dell Alienware AW5520QF | Ergotron LX Wall Mount Keyboard Arm | Logitech Craft | Logitech G603 | Logitech F710 | Harman Kardon Sabre SB 35 & Sennheiser RS 175 | Microsoft Windows 11 Enterprise | APC Back-UPS BE-850 VA | Lenovo ThinkPad X250 & Microsoft Windows 11 Professional | iPhone 15 Pro 256 GB & Pitaka Aramid | SilverStone ML05B Milo | Corsair SF600 SFX 600W | ASRock X99E-ITX/ac | Intel Xeon E5-2683 v4 & NOCTUA NH-L12S | Kingston HyperX Savage 32 GB DDR4 2400 MHz | NVIDIA GeForce GT 710 1 GB | Intel SSD Optane Memory 32 GB NVMe M.2 & Intel SSD 730 240 GB SATA | Ubuntu 24.04.1 LTS |
|
Registrovaný: 19.03.07 Prihlásený: 11.01.25 Príspevky: 7076 Témy: 85 | 85 Bydlisko: BA |
Moja rada bude vseobecnejsia.
Zisti si co chces, nikto tu nie je nadseny z citania tolkeho (relativne stupidneho) textu a teda to nikto citat nebude. Spis si postupne co ma appka robit. Krok. Za. Krokom. Zacni po krokoch odburavat problematiku. Google ti pomoze "C++ pointers,..." Ak nebudes vediet nieco konkretne spytaj sa. Nikto ti nebude vypracovavat zadanie do skoly, ked nieco chces, mozes z toho spravit pracovnu ponuku. (ale pri obhajobe nebudes aj tak vediet co to robi, kym sa to nenaucis a nepochopis co sa tam deje)
Najdi si skolu co ta bavi... alebo pracu co ta bavi. Toto nie je pisane v zlom. Stracas cas, ked ta to nezaujima a sposobujes si zbytocne problemy. (Ja o tom viem velmi vela)
_________________ Desktop: CPU AMD R7 1700x @ 3.85GHz | Cooling be quiet! Dark Rock Pro 4 | MB ASRock X470 Taichi Ult. | RAM 4x8GB DDR4 G-SKILL TridentZ RGB 3000 CL16-16-16-36 | VGA Powercolor VEGA56 + Raijintek Morpheus II | SSD Crucial MX300 525GB | HDD Seagate Ironwolf 3TB 5900rpm | PSU CORSAIR RM750X | MONITOR AOC Q3279VWFD8 | MOUSE HyperX Pulsefire FPS + Razer eXactMat | HyperX Alloy FPS Brown | HyperX Cloud | ARCH x64 & Notebook: DELL inspiron 7537 i7 4500U, 16GB RAM, nv750, FHD IPS,Crucial M4 128GB | ARCH x64 & Surface Go 8/128 & Mobil: LG v40 ThinQ (2018) & SBC: Raspberry pi 0 | 3B+ & Headphones: Senheiser HD58X | AKG K551 + detachable cable mod | Linsoul TIN T2 | KZ SZN |
|
Stránka: 1 z 1
| [ Príspevkov: 3 ] | |
Podobné témy | Témy | Odpovede | Zobrazenia | Posledný príspevok |
---|
| v Assembler, C, C++, Pascal, Java | 4 | 1048 | 06.06.2008 18:25 pccom | | v Kôš | 0 | 22 | 05.12.2021 12:10 meechal | | v Assembler, C, C++, Pascal, Java | 4 | 1464 | 14.06.2007 15:38 juho | | v Smartfóny a tablety | 2 | 531 | 06.11.2011 11:06 cyypo | | v Assembler, C, C++, Pascal, Java | 4 | 1634 | 09.06.2006 14:40 Harlequin | | v Operačné systémy Unix a Linux | 2 | 540 | 09.05.2009 18:59 ac.milan | | v Assembler, C, C++, Pascal, Java | 4 | 745 | 09.05.2009 21:14 tlacitko Enter | | v Krčma | 9 | 1822 | 25.12.2012 18:12 Vikinger | | v Assembler, C, C++, Pascal, Java | 8 | 2149 | 12.12.2017 11:58 Skippy | | v Assembler, C, C++, Pascal, Java | 2 | 395 | 04.11.2017 16:56 camarovk19 | | v Assembler, C, C++, Pascal, Java | 1 | 1045 | 09.03.2010 20:27 ac.milan | | v Siete | 4 | 3418 | 14.02.2018 10:09 mr.johnsik007 | | v Assembler, C, C++, Pascal, Java | 15 | 1530 | 04.10.2008 17:40 dsljohn | | v Assembler, C, C++, Pascal, Java | 2 | 822 | 17.11.2017 11:13 Vetrolam | | v Databázy | 1 | 527 | 17.03.2016 17:09 Kraliček | | v Assembler, C, C++, Pascal, Java | 0 | 447 | 03.11.2012 12:56 csabika001 |
|