aboutsummaryrefslogtreecommitdiff
path: root/CPP/BABS
diff options
context:
space:
mode:
authorSyndamia <kamen.d.mladenov@protonmail.com>2020-10-24 15:25:54 +0300
committerSyndamia <kamen.d.mladenov@protonmail.com>2020-10-24 15:25:54 +0300
commitbe891b06d065504be51d094503c654377ebc22d7 (patch)
tree9ab8742b063a19c713a5ba923aa96605b4b752fa /CPP/BABS
parent8f5cbebb028d9f9fba367019de0a45b43ab7ed4d (diff)
downloadSelf-learning-be891b06d065504be51d094503c654377ebc22d7.tar
Self-learning-be891b06d065504be51d094503c654377ebc22d7.tar.gz
Self-learning-be891b06d065504be51d094503c654377ebc22d7.zip
Renamed C++ folder to C++ (from CPP)
Diffstat (limited to 'CPP/BABS')
-rw-r--r--CPP/BABS/BABS.mk126
-rw-r--r--CPP/BABS/BABS.project102
-rw-r--r--CPP/BABS/BankAccount.cpp53
-rw-r--r--CPP/BABS/BankAccount.h23
-rw-r--r--CPP/BABS/BankSystem.cpp109
-rw-r--r--CPP/BABS/BankSystem.h8
-rw-r--r--CPP/BABS/compile_flags.txt9
-rw-r--r--CPP/BABS/main.cpp35
8 files changed, 0 insertions, 465 deletions
diff --git a/CPP/BABS/BABS.mk b/CPP/BABS/BABS.mk
deleted file mode 100644
index 7fcbd32..0000000
--- a/CPP/BABS/BABS.mk
+++ /dev/null
@@ -1,126 +0,0 @@
-##
-## Auto Generated makefile by CodeLite IDE
-## any manual changes will be erased
-##
-## Debug
-ProjectName :=BABS
-ConfigurationName :=Debug
-WorkspaceConfiguration := $(ConfigurationName)
-WorkspacePath :=/home/kamen/Programming/GitHub-repos/Self-learning/CPP
-ProjectPath :=/home/kamen/Programming/GitHub-repos/Self-learning/CPP/BABS
-IntermediateDirectory :=../build-$(ConfigurationName)/BABS
-OutDir :=../build-$(ConfigurationName)/BABS
-CurrentFileName :=
-CurrentFilePath :=
-CurrentFileFullPath :=
-User :=Kamen
-Date :=27/06/20
-CodeLitePath :=/home/kamen/.codelite
-LinkerName :=/usr/bin/g++
-SharedObjectLinkerName :=/usr/bin/g++ -shared -fPIC
-ObjectSuffix :=.o
-DependSuffix :=.o.d
-PreprocessSuffix :=.i
-DebugSwitch :=-g
-IncludeSwitch :=-I
-LibrarySwitch :=-l
-OutputSwitch :=-o
-LibraryPathSwitch :=-L
-PreprocessorSwitch :=-D
-SourceSwitch :=-c
-OutputFile :=../build-$(ConfigurationName)/bin/$(ProjectName)
-Preprocessors :=
-ObjectSwitch :=-o
-ArchiveOutputSwitch :=
-PreprocessOnlySwitch :=-E
-ObjectsFileList :=$(IntermediateDirectory)/ObjectsList.txt
-PCHCompileFlags :=
-LinkOptions :=
-IncludePath := $(IncludeSwitch). $(IncludeSwitch).
-IncludePCH :=
-RcIncludePath :=
-Libs :=
-ArLibs :=
-LibPath := $(LibraryPathSwitch).
-
-##
-## Common variables
-## AR, CXX, CC, AS, CXXFLAGS and CFLAGS can be overriden using an environment variables
-##
-AR := /usr/bin/ar rcu
-CXX := /usr/bin/g++
-CC := /usr/bin/gcc
-CXXFLAGS := -g -O0 -Wall $(Preprocessors)
-CFLAGS := -g -O0 -Wall $(Preprocessors)
-ASFLAGS :=
-AS := /usr/bin/as
-
-
-##
-## User defined environment variables
-##
-CodeLiteDir:=/usr/share/codelite
-Objects0=../build-$(ConfigurationName)/BABS/main.cpp$(ObjectSuffix) ../build-$(ConfigurationName)/BABS/BankSystem.cpp$(ObjectSuffix) ../build-$(ConfigurationName)/BABS/BankAccount.cpp$(ObjectSuffix)
-
-
-
-Objects=$(Objects0)
-
-##
-## Main Build Targets
-##
-.PHONY: all clean PreBuild PrePreBuild PostBuild MakeIntermediateDirs
-all: MakeIntermediateDirs $(OutputFile)
-
-$(OutputFile): ../build-$(ConfigurationName)/BABS/.d $(Objects)
- @mkdir -p "../build-$(ConfigurationName)/BABS"
- @echo "" > $(IntermediateDirectory)/.d
- @echo $(Objects0) > $(ObjectsFileList)
- $(LinkerName) $(OutputSwitch)$(OutputFile) @$(ObjectsFileList) $(LibPath) $(Libs) $(LinkOptions)
-
-MakeIntermediateDirs:
- @mkdir -p "../build-$(ConfigurationName)/BABS"
- @mkdir -p ""../build-$(ConfigurationName)/bin""
-
-../build-$(ConfigurationName)/BABS/.d:
- @mkdir -p "../build-$(ConfigurationName)/BABS"
-
-PreBuild:
-
-
-##
-## Objects
-##
-../build-$(ConfigurationName)/BABS/main.cpp$(ObjectSuffix): main.cpp ../build-$(ConfigurationName)/BABS/main.cpp$(DependSuffix)
- $(CXX) $(IncludePCH) $(SourceSwitch) "/home/kamen/Programming/GitHub-repos/Self-learning/CPP/BABS/main.cpp" $(CXXFLAGS) $(ObjectSwitch)$(IntermediateDirectory)/main.cpp$(ObjectSuffix) $(IncludePath)
-../build-$(ConfigurationName)/BABS/main.cpp$(DependSuffix): main.cpp
- @$(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) -MG -MP -MT../build-$(ConfigurationName)/BABS/main.cpp$(ObjectSuffix) -MF../build-$(ConfigurationName)/BABS/main.cpp$(DependSuffix) -MM main.cpp
-
-../build-$(ConfigurationName)/BABS/main.cpp$(PreprocessSuffix): main.cpp
- $(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) $(PreprocessOnlySwitch) $(OutputSwitch) ../build-$(ConfigurationName)/BABS/main.cpp$(PreprocessSuffix) main.cpp
-
-../build-$(ConfigurationName)/BABS/BankSystem.cpp$(ObjectSuffix): BankSystem.cpp ../build-$(ConfigurationName)/BABS/BankSystem.cpp$(DependSuffix)
- $(CXX) $(IncludePCH) $(SourceSwitch) "/home/kamen/Programming/GitHub-repos/Self-learning/CPP/BABS/BankSystem.cpp" $(CXXFLAGS) $(ObjectSwitch)$(IntermediateDirectory)/BankSystem.cpp$(ObjectSuffix) $(IncludePath)
-../build-$(ConfigurationName)/BABS/BankSystem.cpp$(DependSuffix): BankSystem.cpp
- @$(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) -MG -MP -MT../build-$(ConfigurationName)/BABS/BankSystem.cpp$(ObjectSuffix) -MF../build-$(ConfigurationName)/BABS/BankSystem.cpp$(DependSuffix) -MM BankSystem.cpp
-
-../build-$(ConfigurationName)/BABS/BankSystem.cpp$(PreprocessSuffix): BankSystem.cpp
- $(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) $(PreprocessOnlySwitch) $(OutputSwitch) ../build-$(ConfigurationName)/BABS/BankSystem.cpp$(PreprocessSuffix) BankSystem.cpp
-
-../build-$(ConfigurationName)/BABS/BankAccount.cpp$(ObjectSuffix): BankAccount.cpp ../build-$(ConfigurationName)/BABS/BankAccount.cpp$(DependSuffix)
- $(CXX) $(IncludePCH) $(SourceSwitch) "/home/kamen/Programming/GitHub-repos/Self-learning/CPP/BABS/BankAccount.cpp" $(CXXFLAGS) $(ObjectSwitch)$(IntermediateDirectory)/BankAccount.cpp$(ObjectSuffix) $(IncludePath)
-../build-$(ConfigurationName)/BABS/BankAccount.cpp$(DependSuffix): BankAccount.cpp
- @$(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) -MG -MP -MT../build-$(ConfigurationName)/BABS/BankAccount.cpp$(ObjectSuffix) -MF../build-$(ConfigurationName)/BABS/BankAccount.cpp$(DependSuffix) -MM BankAccount.cpp
-
-../build-$(ConfigurationName)/BABS/BankAccount.cpp$(PreprocessSuffix): BankAccount.cpp
- $(CXX) $(CXXFLAGS) $(IncludePCH) $(IncludePath) $(PreprocessOnlySwitch) $(OutputSwitch) ../build-$(ConfigurationName)/BABS/BankAccount.cpp$(PreprocessSuffix) BankAccount.cpp
-
-
--include ../build-$(ConfigurationName)/BABS//*$(DependSuffix)
-##
-## Clean
-##
-clean:
- $(RM) -r $(IntermediateDirectory)
-
-
diff --git a/CPP/BABS/BABS.project b/CPP/BABS/BABS.project
deleted file mode 100644
index 5ea191d..0000000
--- a/CPP/BABS/BABS.project
+++ /dev/null
@@ -1,102 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<CodeLite_Project Name="BABS" Version="11000" InternalType="Console">
- <Description/>
- <Dependencies/>
- <Settings Type="Executable">
- <GlobalSettings>
- <Compiler Options="" C_Options="" Assembler="">
- <IncludePath Value="."/>
- </Compiler>
- <Linker Options="">
- <LibraryPath Value="."/>
- </Linker>
- <ResourceCompiler Options=""/>
- </GlobalSettings>
- <Configuration Name="Debug" CompilerType="GCC" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
- <Compiler Options="-g;-O0;-Wall" C_Options="-g;-O0;-Wall" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
- <IncludePath Value="."/>
- </Compiler>
- <Linker Options="" Required="yes"/>
- <ResourceCompiler Options="" Required="no"/>
- <General OutputFile="$(ProjectName)" IntermediateDirectory="" Command="$(WorkspacePath)/build-$(WorkspaceConfiguration)/bin/$(OutputFile)" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="$(WorkspacePath)/build-$(WorkspaceConfiguration)/lib" PauseExecWhenProcTerminates="yes" IsGUIProgram="no" IsEnabled="yes"/>
- <BuildSystem Name="CodeLite Make Generator"/>
- <Environment EnvVarSetName="&lt;Use Defaults&gt;" DbgSetName="&lt;Use Defaults&gt;">
- <![CDATA[]]>
- </Environment>
- <Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
- <DebuggerSearchPaths/>
- <PostConnectCommands/>
- <StartupCommands/>
- </Debugger>
- <PreBuild/>
- <PostBuild/>
- <CustomBuild Enabled="no">
- <RebuildCommand/>
- <CleanCommand/>
- <BuildCommand/>
- <PreprocessFileCommand/>
- <SingleFileCommand/>
- <MakefileGenerationCommand/>
- <ThirdPartyToolName>None</ThirdPartyToolName>
- <WorkingDirectory/>
- </CustomBuild>
- <AdditionalRules>
- <CustomPostBuild/>
- <CustomPreBuild/>
- </AdditionalRules>
- <Completion EnableCpp11="no" EnableCpp14="no">
- <ClangCmpFlagsC/>
- <ClangCmpFlags/>
- <ClangPP/>
- <SearchPaths/>
- </Completion>
- </Configuration>
- <Configuration Name="Release" CompilerType="GCC" DebuggerType="GNU gdb debugger" Type="Executable" BuildCmpWithGlobalSettings="append" BuildLnkWithGlobalSettings="append" BuildResWithGlobalSettings="append">
- <Compiler Options="-O2;-Wall" C_Options="-O2;-Wall" Assembler="" Required="yes" PreCompiledHeader="" PCHInCommandLine="no" PCHFlags="" PCHFlagsPolicy="0">
- <IncludePath Value="."/>
- <Preprocessor Value="NDEBUG"/>
- </Compiler>
- <Linker Options="" Required="yes"/>
- <ResourceCompiler Options="" Required="no"/>
- <General OutputFile="$(ProjectName)" IntermediateDirectory="" Command="$(WorkspacePath)/build-$(WorkspaceConfiguration)/bin/$(OutputFile)" CommandArguments="" UseSeparateDebugArgs="no" DebugArguments="" WorkingDirectory="$(WorkspacePath)/build-$(WorkspaceConfiguration)/lib" PauseExecWhenProcTerminates="yes" IsGUIProgram="no" IsEnabled="yes"/>
- <BuildSystem Name="CodeLite Make Generator"/>
- <Environment EnvVarSetName="&lt;Use Defaults&gt;" DbgSetName="&lt;Use Defaults&gt;">
- <![CDATA[]]>
- </Environment>
- <Debugger IsRemote="no" RemoteHostName="" RemoteHostPort="" DebuggerPath="" IsExtended="no">
- <DebuggerSearchPaths/>
- <PostConnectCommands/>
- <StartupCommands/>
- </Debugger>
- <PreBuild/>
- <PostBuild/>
- <CustomBuild Enabled="no">
- <RebuildCommand/>
- <CleanCommand/>
- <BuildCommand/>
- <PreprocessFileCommand/>
- <SingleFileCommand/>
- <MakefileGenerationCommand/>
- <ThirdPartyToolName>None</ThirdPartyToolName>
- <WorkingDirectory/>
- </CustomBuild>
- <AdditionalRules>
- <CustomPostBuild/>
- <CustomPreBuild/>
- </AdditionalRules>
- <Completion EnableCpp11="no" EnableCpp14="no">
- <ClangCmpFlagsC/>
- <ClangCmpFlags/>
- <ClangPP/>
- <SearchPaths/>
- </Completion>
- </Configuration>
- </Settings>
- <VirtualDirectory Name="src">
- <File Name="BankAccount.h"/>
- <File Name="BankSystem.h"/>
- <File Name="BankAccount.cpp"/>
- <File Name="BankSystem.cpp"/>
- <File Name="main.cpp"/>
- </VirtualDirectory>
-</CodeLite_Project>
diff --git a/CPP/BABS/BankAccount.cpp b/CPP/BABS/BankAccount.cpp
deleted file mode 100644
index ea02d87..0000000
--- a/CPP/BABS/BankAccount.cpp
+++ /dev/null
@@ -1,53 +0,0 @@
-#include <string>
-
-#include "BankAccount.h"
-
-int currId = 0;
-
-BankAccount::BankAccount() {
- id = currId++;
- balance = 0;
-}
-
-BankAccount::BankAccount(int initialDeposit) {
- id = currId++;
- balance = initialDeposit;
-}
-
-
-int BankAccount::getId() {
- return id;
-}
-
-int BankAccount::getBalance() {
- return balance;
-}
-
-bool BankAccount::getCloseStatus() {
- return closed;
-}
-
-
-void BankAccount::deposit(int amount) {
- balance += amount;
-}
-
-int BankAccount::withdraw(int amount) {
- if (amount > balance) {
- return -1;
- }
- balance -= amount;
- return amount;
-}
-
-std::string BankAccount::toString() {
- return "ID: " + std::to_string(id) + " Balance: " + std::to_string(balance) + ((closed)?" CLOSED":"");
-}
-
-void BankAccount::close() {
- closed = true;
-}
-
-void BankAccount::reopen() {
- closed = false;
-} \ No newline at end of file
diff --git a/CPP/BABS/BankAccount.h b/CPP/BABS/BankAccount.h
deleted file mode 100644
index fbf808f..0000000
--- a/CPP/BABS/BankAccount.h
+++ /dev/null
@@ -1,23 +0,0 @@
-#ifndef TEST_BANKACCOUNT
-#define TEST_BANKACCOUNT
-#include <string>
-
-class BankAccount {
- int id, balance;
- bool closed;
- public:
- BankAccount();
- BankAccount(int);
-
- int getId();
- int getBalance();
- bool getCloseStatus();
-
- void deposit(int);
- int withdraw(int);
- std::string toString();
- void close();
- void reopen();
-};
-
-#endif \ No newline at end of file
diff --git a/CPP/BABS/BankSystem.cpp b/CPP/BABS/BankSystem.cpp
deleted file mode 100644
index 0b4e726..0000000
--- a/CPP/BABS/BankSystem.cpp
+++ /dev/null
@@ -1,109 +0,0 @@
-#include <iostream>
-#include <vector>
-
-#include "BankSystem.h"
-
-using namespace std;
-
-std::vector<BankAccount> BADatabase;
-
-int getIndexFromID(int id) {
- for(int i = 0; i < BADatabase.size(); i++) {
- if (BADatabase[i].getId() == id) {
- return i;
- }
- }
- return -1;
-}
-
-void listAllAccounts() {
- for(BankAccount ba: BADatabase) {
- cout << ba.toString() << endl;
- }
-}
-
-void openBankAccount() {
- cout << "Initial balance: ";
- int initBalance;
- cin >> initBalance;
-
- BankAccount newBA(initBalance);
- BADatabase.push_back(newBA);
- cout << "Created new bank account with ID: " << newBA.getId() << endl;
-}
-
-void closeBankAccount() {
- cout << "Bank account ID: ";
- int id;
- cin >> id;
-
- cout << "Are you really sure you want to close bank account with ID: " << id << "? [y/n]";
- char answer;
- cin >> answer;
-
- if (answer == 'y' || answer == 'Y') {
- BADatabase[getIndexFromID(id)].close();
- }
-
- cout << "Bank account with ID: " << id << " is closed!" << endl;
-}
-
-void reopenBankAccount() {
- cout << "Bank account ID: ";
- int id;
- cin >> id;
-
- cout << "Are you really sure you want to reopen bank account with ID: " << id << "? [y/n]";
- char answer;
- cin >> answer;
-
- if (answer == 'y' || answer == 'Y') {
- BADatabase[getIndexFromID(id)].reopen();
- }
-
- cout << "Bank account with ID: " << id << " is closed!" << endl;
-}
-
-void bankerMode() {
- while(true) {
- cout << "What do you want to do: [0] Exit, [1] List bank accounts, [2] Open bank account, [3] Close bank account, [4] Reopen bank account" << endl;
-
- int value;
- cin >> value;
-
- switch(value) {
- case 0: return;
- case 1: listAllAccounts(); break;
- case 2: openBankAccount(); break;
- case 3: closeBankAccount(); break;
- case 4: reopenBankAccount(); break;
- }
- }
-}
-
-void atmMode() {
- cout << "Bank accont ID: ";
- int userId;
- cin >> userId;
- cout << endl;
-
- BankAccount ba = BADatabase[userId];
- if (ba.getCloseStatus()) {
- cout << "Bank account is closed!" << endl;
- return;
- }
-
- while(true) {
- cout << "What do you want to do: [0] Exit, [1] View balance, [2] Deposit money, [3] Withdraw money?" << endl;
-
- int value;
- cin >> value;
-
- switch(value) {
- case 0: return;
- case 1: cout << ba.getBalance() << endl; break;
- case 2: cout << "Amount to deposit: "; cin >> value; ba.deposit(value); break;
- case 3: cout << "Amount to withdraw: "; cin >> value; ba.withdraw(value); break;
- }
- }
-} \ No newline at end of file
diff --git a/CPP/BABS/BankSystem.h b/CPP/BABS/BankSystem.h
deleted file mode 100644
index a593a92..0000000
--- a/CPP/BABS/BankSystem.h
+++ /dev/null
@@ -1,8 +0,0 @@
-#ifndef BA-BANK_SYSTEM-BANK_SYSTEM
-#define BA-BANK_SYSTEM-BANK_SYSTEM
-#include "BankAccount.h"
-
-void bankerMode();
-void atmMode();
-
-#endif \ No newline at end of file
diff --git a/CPP/BABS/compile_flags.txt b/CPP/BABS/compile_flags.txt
deleted file mode 100644
index 8ce13f3..0000000
--- a/CPP/BABS/compile_flags.txt
+++ /dev/null
@@ -1,9 +0,0 @@
--I/usr/include/c++/7
--I/usr/include/x86_64-linux-gnu/c++/7
--I/usr/include/c++/7/backward
--I/usr/lib/gcc/x86_64-linux-gnu/7/include
--I/usr/local/include
--I/usr/lib/gcc/x86_64-linux-gnu/7/include-fixed
--I/usr/include/x86_64-linux-gnu
--I/usr/include
--I/home/kamen/Programming/GitHub-repos/Self-learning/CPP/BABS
diff --git a/CPP/BABS/main.cpp b/CPP/BABS/main.cpp
deleted file mode 100644
index 717e0dd..0000000
--- a/CPP/BABS/main.cpp
+++ /dev/null
@@ -1,35 +0,0 @@
-#include <iostream>
-
-#include "BankSystem.h"
-
-#define MODE_SPACER "------------------------------------------------------------"
-
-using namespace std;
-
-int main()
-{
- cout << "Welcome to BA banking system!" << endl << endl;
- while(true) {
- cout << "Mode: Atm/Banker/Exit ";
- char inValue;
- cin >> inValue;
-
- if (inValue == 'e' || inValue == 'E' || inValue == '0') {
- return 0;
- }
-
- if (inValue == 'b' || inValue == 'B') {
- cout << MODE_SPACER << endl;
- bankerMode();
- cout << MODE_SPACER << endl;
- }
- else {
- cout << MODE_SPACER << endl;
- atmMode();
- cout << MODE_SPACER << endl;
- }
- }
- cout << "Goodbye!" << endl << endl;
-
- return 0;
-} \ No newline at end of file