From 8b451ff04596f44945a3fc2c1c46862332955afe Mon Sep 17 00:00:00 2001 From: JamesFlare Date: Mon, 20 Jan 2025 02:18:25 -0500 Subject: [PATCH] add solution of lab01 --- labs/classes/Animal.h | 28 +++++++++++++++++++ labs/classes/fileio.cpp | 30 ++++++++++++++++++++ labs/classes/main.cpp | 13 ++------- labs/classes/time.cpp | 61 +++++++++++++++++++++++++++++++++++++++++ labs/classes/time.h | 20 ++++++++++++++ 5 files changed, 141 insertions(+), 11 deletions(-) create mode 100644 labs/classes/Animal.h create mode 100644 labs/classes/fileio.cpp create mode 100644 labs/classes/time.cpp create mode 100644 labs/classes/time.h diff --git a/labs/classes/Animal.h b/labs/classes/Animal.h new file mode 100644 index 0000000..a1a9575 --- /dev/null +++ b/labs/classes/Animal.h @@ -0,0 +1,28 @@ +#include + +class Animal { +public: + Animal(const std::string &name); + std::string getName() const; + void setWeight(double new_weight); + double getWeight() const; + void setCanSurviveOnLand(bool can_land); + bool canSurviveOnLand() const; + void setCanSurviveInWater(bool can_water); + bool canSurviveInWater() const; + void setEatsMeat(bool meat); + + bool eatsMeat() const; + void setEatsPlants(bool plants); + bool eatsPlants() const; + bool isOmnivore() const; + bool isAmphibious() const; + +private: + std::string name_; + double weight_; + bool can_survive_on_land_; + bool can_survive_in_water_; + bool eats_meat_; + bool eats_plants_; +}; diff --git a/labs/classes/fileio.cpp b/labs/classes/fileio.cpp new file mode 100644 index 0000000..42f6793 --- /dev/null +++ b/labs/classes/fileio.cpp @@ -0,0 +1,30 @@ +#include +#include +#include + +int main() { + std::ifstream inputFile("input.txt"); + + if (!inputFile.is_open()) { + std::cerr << "Failed to open the user data file." << std::endl; + exit(1); + } + + std::string name, gender, number, profession, school; + int age; + double latitude, longitude; + while(inputFile >> name + >> age + >> gender + >> number + >> profession + >> school + >> latitude + >> longitude){ + std::ofstream outputFile("output.txt", std::ios::app); + outputFile << name << "," << number << std::endl; + outputFile.close(); + } + inputFile.close(); + return 0; +} \ No newline at end of file diff --git a/labs/classes/main.cpp b/labs/classes/main.cpp index 8655567..b117008 100644 --- a/labs/classes/main.cpp +++ b/labs/classes/main.cpp @@ -23,15 +23,13 @@ int main() { // UNCOMMENT THESE TESTS AS YOU WORK THROUGH CHECKPOINT 3 - /* + std::cout << "testing print" << std::endl; a.PrintAMPM(); b.PrintAMPM(); c.PrintAMPM(); std::cout << std::endl; - */ - - /* + std::cout << "testing modifiers" << std::endl; a.setHour(4); a.setMinute(32); @@ -42,9 +40,7 @@ int main() { assert (a.getSecond() == 1); a.PrintAMPM(); std::cout << std::endl; - */ - /* std::cout << "more testing print" << std::endl; Time noon(12,0,0); Time midnight(0,0,0); @@ -56,10 +52,7 @@ int main() { std::cout << "midnight2 "; midnight2.PrintAMPM(); std::cout << std::endl; - */ - - /* std::vector