Website Summary Files Commits Branches @commit @diff @stats
path: root / Week05 / Exercise20.cpp
diff options
context:
space:
mode:
Commit9242ebc4c69f2c1f550ddcc0e9235f3f409554c7 (patch)
Author
 Syndamia <kamen@syndamia.com>
2025-11-01 20:27:21 +0200
Committer
 Syndamia <kamen@syndamia.com>
2025-11-01 20:27:21 +0200
Files8a49b14236dca88758fa72781ef15144e9cbc214 /Week05/Exercise20.cpp
upp-2025-solutions-9242ebc4c69f2c1f550ddcc0e9235f3f409554c7.tar
upp-2025-solutions-9242ebc4c69f2c1f550ddcc0e9235f3f409554c7.tar.gz
upp-2025-solutions-9242ebc4c69f2c1f550ddcc0e9235f3f409554c7.zip
Parent69de8ecfb2df52a6a4ae9d75f6a018ae380cca05 (diff)
feat(Week05): Add exercises and solutions
1 files changed, 23 insertions, 0 deletions
-rw-r--r--Week05/Exercise20.cpp23
diff --git a/Week05/Exercise20.cpp b/Week05/Exercise20.cpp
new file mode 100644
index 0000000..b44c0b3
--- /dev/null
+++ b/Week05/Exercise20.cpp
@@ -0,0 +1,23 @@
+#include <iostream>
+
+int main() {
+ unsigned int number;
+ std::cin >> number;
+
+ unsigned int check_digit = number % 10;
+ number /= 10;
+
+ unsigned int sum = 0, digit = 0;
+ for (unsigned int multiplier = 2; number != 0; multiplier = multiplier % 2 + 1, number /= 10) {
+ digit = (number % 10) * multiplier;
+ if (digit > 9) digit -= 9;
+ sum += digit;
+ }
+
+ if ((10 - (sum % 10)) % 10 == check_digit)
+ std::cout << "Valid" << std::endl;
+ else
+ std::cout << "Invalid" << std::endl;
+
+ return 0;
+}