From 5c727824c4597c38fb4248ad20d3c9789201f0d3 Mon Sep 17 00:00:00 2001 From: Angeld55 Date: Sun, 27 Dec 2020 16:25:51 +0200 Subject: added sem 12 --- Sem. 12/task1.cpp | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 Sem. 12/task1.cpp (limited to 'Sem. 12/task1.cpp') diff --git a/Sem. 12/task1.cpp b/Sem. 12/task1.cpp new file mode 100644 index 0000000..1698c33 --- /dev/null +++ b/Sem. 12/task1.cpp @@ -0,0 +1,54 @@ +#include +using namespace std; + +bool isDigit(char ch) +{ + return ch >= '0' && ch <= '9'; +} +int countDigits(const char* str) +{ + //int len = strlen(str); + //int count = 0; + //for (int i = 0; i < len; i++) + //{ + // if (isDigit(str[i])) + // count++; + //} + + int count = 0; + while (*str != '\0') + { + if (isDigit(*str)) + count++; + str++; + } + return count; +} + +void removeDigits(const char* str, char* resultStr) +{ + while (*str != '\0') + { + if (!isDigit(*str)) + { + *resultStr = *str; + resultStr++; + } + str++; + } + *resultStr = '\0'; +} +int main() +{ + const char* str = "hello friends 123 , how are you? 343. Fine!"; + + int len = strlen(str) - countDigits(str); + + char* resultStr = new char[len + 1]; + + removeDigits(str, resultStr); + + cout << resultStr << endl; + + delete[] resultStr; +} \ No newline at end of file -- cgit v1.3.1-23-gd82d