diff options
| author | Adam Russell <ac.russell@live.com> | 2021-10-17 13:10:46 -0400 |
|---|---|---|
| committer | Adam Russell <ac.russell@live.com> | 2021-10-17 13:10:46 -0400 |
| commit | e9dbf6d87ca9e091612a88bbc72abd6ba3c56831 (patch) | |
| tree | 2413feafbf792862f490c31684e5b5aaa73b6c54 | |
| parent | 68577919721b2af39940da924aee12470866fcba (diff) | |
| download | perlweeklychallenge-club-e9dbf6d87ca9e091612a88bbc72abd6ba3c56831.tar.gz perlweeklychallenge-club-e9dbf6d87ca9e091612a88bbc72abd6ba3c56831.tar.bz2 perlweeklychallenge-club-e9dbf6d87ca9e091612a88bbc72abd6ba3c56831.zip | |
formatted C++ solutions
| -rw-r--r-- | challenge-134/adam-russell/cxx/ch-1.cxx | 114 | ||||
| -rw-r--r-- | challenge-134/adam-russell/cxx/ch-2.cxx | 111 |
2 files changed, 108 insertions, 117 deletions
diff --git a/challenge-134/adam-russell/cxx/ch-1.cxx b/challenge-134/adam-russell/cxx/ch-1.cxx index 99a4857cb3..4a32d8255e 100644 --- a/challenge-134/adam-russell/cxx/ch-1.cxx +++ b/challenge-134/adam-russell/cxx/ch-1.cxx @@ -1,59 +1,57 @@ - - #include<iostream> - #include<vector> - #include<algorithm> - /* - * Write a script to generate first 5 Pandigital Numbers in base 10. - */ - - - class Pandigital{ - public: - std::vector<int> first_n_pandigitals(int); - std::vector<int> first_5_pandigitals(); - }; - - - std::vector<int> Pandigital::first_n_pandigitals(int n){ - std::vector<int> pandigitals; - int x = 1000000000; - do{ - - int test = x; - std::vector<int> test_vector; - do{ - test_vector.push_back(test % 10); - test = test / 10; - }while(test > 0); - if(std::count(test_vector.begin(), test_vector.end(), 0) && - std::count(test_vector.begin(), test_vector.end(), 1) && - std::count(test_vector.begin(), test_vector.end(), 2) && - std::count(test_vector.begin(), test_vector.end(), 3) && - std::count(test_vector.begin(), test_vector.end(), 4) && - std::count(test_vector.begin(), test_vector.end(), 5) && - std::count(test_vector.begin(), test_vector.end(), 6) && - std::count(test_vector.begin(), test_vector.end(), 7) && - std::count(test_vector.begin(), test_vector.end(), 8) && - std::count(test_vector.begin(), test_vector.end(), 9)) - pandigitals.push_back(x); - - x++; - }while(pandigitals.size() < n); - return pandigitals; - } - - - std::vector<int> Pandigital::first_5_pandigitals(){ - return this->first_n_pandigitals(5); - } - - - int main(int argc, char** argv){ - Pandigital p; - std::vector<int> pandigitals = p.first_5_pandigitals(); - for(int i = 0; i < pandigitals.size(); i++){ - std::cout << pandigitals[i] << std::endl; - } - } - + +#include<iostream> +#include<vector> +#include<algorithm> +/* +* Write a script to generate first 5 Pandigital Numbers in base 10. +*/ + + +class Pandigital { + public: + std::vector<int> first_n_pandigitals(int); + std::vector<int> first_5_pandigitals(); +}; + + +std::vector<int> Pandigital::first_n_pandigitals(int n) { + std::vector<int> pandigitals; + int x = 1000000000; + do { + int test = x; + std::vector<int> test_vector; + do { + test_vector.push_back(test % 10); + test = test / 10; + } while(test > 0); + if(std::count(test_vector.begin(), test_vector.end(), 0) && + std::count(test_vector.begin(), test_vector.end(), 1) && + std::count(test_vector.begin(), test_vector.end(), 2) && + std::count(test_vector.begin(), test_vector.end(), 3) && + std::count(test_vector.begin(), test_vector.end(), 4) && + std::count(test_vector.begin(), test_vector.end(), 5) && + std::count(test_vector.begin(), test_vector.end(), 6) && + std::count(test_vector.begin(), test_vector.end(), 7) && + std::count(test_vector.begin(), test_vector.end(), 8) && + std::count(test_vector.begin(), test_vector.end(), 9)) + pandigitals.push_back(x); + x++; + } while(pandigitals.size() < n); + return pandigitals; +} + + +std::vector<int> Pandigital::first_5_pandigitals() { + return this->first_n_pandigitals(5); +} + + +int main(int argc, char** argv) { + Pandigital p; + std::vector<int> pandigitals = p.first_5_pandigitals(); + for(int i = 0; i < pandigitals.size(); i++) { + std::cout << pandigitals[i] << std::endl; + } +} + diff --git a/challenge-134/adam-russell/cxx/ch-2.cxx b/challenge-134/adam-russell/cxx/ch-2.cxx index ed881f6a58..3818621da5 100644 --- a/challenge-134/adam-russell/cxx/ch-2.cxx +++ b/challenge-134/adam-russell/cxx/ch-2.cxx @@ -1,62 +1,55 @@ - - #include<iostream> - #include<vector> - #include<algorithm> - /* - * You are given 2 positive numbers, m and n. - * Write a script to generate multiplcation table and display count of distinct terms. - */ - - - class DistinctTermsCount{ - public: - std::vector<int> compute_print(int, int); - }; - - - std::vector<int> DistinctTermsCount::compute_print(int m, int n){ - std::vector<int> distinct; - - std::cout << " x | "; - for(int k = 1; k <= n; k++){ - std::cout << " " << k; - } - std::cout << std::endl; - std::cout << "---+-"; - for(int k = 1; k <= n * 2; k++){ - std::cout << "-"; - } - std::cout << std::endl; - - for(int i = 1; i <= m; i++){ - - std::cout << " " << i << " | "; - - for(int j = 1; j <= n; j++) - - { - int x = i * j; - std::cout << " " << x; - if(std::count(distinct.begin(), distinct.end(), x) == 0) { - distinct.push_back(x); - } - } - std::cout << std::endl; - - } - return distinct; - } - - - int main(int argc, char** argv){ - DistinctTermsCount dtc; - std::vector<int> distinct = dtc.compute_print(3, 3); - std::cout << "Distinct Terms: "; - for(int i = 0; i < distinct.size() - 1; i++){ - std::cout << distinct[i] << ", "; + +#include<iostream> +#include<vector> +#include<algorithm> +/* +* You are given 2 positive numbers, m and n. +* Write a script to generate multiplcation table and display count of distinct terms. +*/ + + +class DistinctTermsCount { + public: + std::vector<int> compute_print(int, int); +}; + + +std::vector<int> DistinctTermsCount::compute_print(int m, int n) { + std::vector<int> distinct; + std::cout << " x | "; + for(int k = 1; k <= n; k++) { + std::cout << " " << k; + } + std::cout << std::endl; + std::cout << "---+-"; + for(int k = 1; k <= n * 2; k++) { + std::cout << "-"; + } + std::cout << std::endl; + for(int i = 1; i <= m; i++) { + std::cout << " " << i << " | "; + for(int j = 1; j <= n; j++) { + int x = i * j; + std::cout << " " << x; + if(std::count(distinct.begin(), distinct.end(), x) == 0) { + distinct.push_back(x); } - std::cout << distinct[distinct.size() - 1] << std::endl; - std::cout << "Count: " << distinct.size() << std::endl; } - + std::cout << std::endl; + } + return distinct; +} + + +int main(int argc, char** argv) { + DistinctTermsCount dtc; + std::vector<int> distinct = dtc.compute_print(3, 3); + std::cout << "Distinct Terms: "; + for(int i = 0; i < distinct.size() - 1; i++) { + std::cout << distinct[i] << ", "; + } + std::cout << distinct[distinct.size() - 1] << std::endl; + std::cout << "Count: " << distinct.size() << std::endl; +} + |
