64 lines
1.3 KiB
C++
64 lines
1.3 KiB
C++
#include "app.hpp"
|
|
#include <sstream>
|
|
#include <numeric>
|
|
|
|
SimpleApp::SimpleApp(const std::string& name) : appName(name) {
|
|
}
|
|
|
|
std::string SimpleApp::getName() const {
|
|
return appName;
|
|
}
|
|
|
|
void SimpleApp::setName(const std::string& name) {
|
|
appName = name;
|
|
}
|
|
|
|
void SimpleApp::addNumber(int number) {
|
|
numbers.push_back(number);
|
|
}
|
|
|
|
int SimpleApp::getSum() const {
|
|
if (numbers.empty()) {
|
|
return 0;
|
|
}
|
|
return std::accumulate(numbers.begin(), numbers.end(), 0);
|
|
}
|
|
|
|
const std::vector<int>& SimpleApp::getNumbers() const {
|
|
return numbers;
|
|
}
|
|
|
|
void SimpleApp::clearNumbers() {
|
|
numbers.clear();
|
|
}
|
|
|
|
std::string SimpleApp::getInfo() const {
|
|
std::ostringstream oss;
|
|
oss << "Application: " << appName << "\n";
|
|
oss << "Numbers count: " << numbers.size() << "\n";
|
|
oss << "Sum of numbers: " << getSum() << "\n";
|
|
|
|
if (!numbers.empty()) {
|
|
oss << "Numbers: ";
|
|
for (size_t i = 0; i < numbers.size(); ++i) {
|
|
if (i > 0) {
|
|
oss << ", ";
|
|
}
|
|
oss << numbers[i];
|
|
}
|
|
}
|
|
|
|
return oss.str();
|
|
}
|
|
|
|
int add(int a, int b) {
|
|
return a + b;
|
|
}
|
|
|
|
int multiply(int a, int b) {
|
|
return a * b;
|
|
}
|
|
|
|
std::string generateWelcomeMessage(const std::string& name) {
|
|
return "Welcome, " + name + "! This is a simple C++ application.";
|
|
} |