aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--challenge-134/adam-russell/cxx/ch-1.cxx114
-rw-r--r--challenge-134/adam-russell/cxx/ch-2.cxx111
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;
+}
+