Det här repositoriet innehåller min lösning för Assignment 3 i kursen Computer Programming. Uppgiften var att implementera en databas för att hantera information om drakar. Den innefattar dynamisk minneshantering, filhantering och modulär programmering i C.
Denna uppgift innebar att skapa en program som hanterar en drakdatabas med följande funktionaliteter:
- Lägga till en Drake: Användaren kan lägga till nya drakar med detaljerad information.
- Uppdatera en Drake: Möjlighet att uppdatera information om en specifik drake.
- Ta bort en Drake: Ta bort en drake från databasen.
- Lista Drakar: Visa alla drakar i databasen, antingen i ett kortformat eller med fullständig information.
- Visa detaljer för en specifik Drake: Möjlighet att söka efter och visa detaljerad information om en specifik drake.
- Databasstatistik: Visa statistik om databasen, såsom antal drakar och deras egenskaper.
- Sortera Databasen: Sortera drakarna efter ID eller namn.
- Dynamisk Minneshantering: Användning av dynamiskt allokerade arrays för att hantera ett växande antal drakar.
- Filhantering: Ladda och spara drakinformation till och från en textfil.
- Modulär Design: Programmet är uppdelat i flera moduler för att hantera olika delar av funktionaliteten, såsom UI, databashantering och filhantering.
- Korrekt användning av strukturer, filhantering, pekare, arrays och strängar.
- Kod måste vara välorganiserad, med tydlig separation av interface och implementation.
- Adekvat dokumentation och namngivning enligt kursens standarder.
- Programmet måste kompilera och köra utan fel.
Uppgiften bedömdes som godkänd eller underkänd baserat på om all funktionalitet var implementerad och om koden var väl utformad och korrekt dokumenterad.