From d3ca38be90bd3def29e5bd0afedbd3f6b5dc7e3f Mon Sep 17 00:00:00 2001 From: Michael Abed Date: Sun, 12 Feb 2012 14:59:45 -0500 Subject: solve problem3 --- Makefile | 7 +++++-- problem3.cpp | 32 ++++++++++++++++++++++++++++++++ 2 files changed, 37 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index fd70bc0..69b5a6e 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ -all: problem1 problem2 +all: problem1 problem2 problem3 problem1: problem1.cpp g++ -o problem1 problem1.cpp @@ -7,5 +7,8 @@ problem1: problem1.cpp problem2: problem2.cpp g++ -o problem2 problem2.cpp +problem3: problem3.cpp + g++ -o problem3 problem3.cpp + clean: - rm problem1 problem2 + rm problem1 problem2 problem3 diff --git a/problem3.cpp b/problem3.cpp index e69de29..518ec0f 100644 --- a/problem3.cpp +++ b/problem3.cpp @@ -0,0 +1,32 @@ + +#include + +using namespace std; + +int main() +{ + unsigned int n1, n2; + bool good; + do { + cout << "Enter two integers between 0 and 999999: "; + cin >> n1 >> n2; + good = n1 <= 999999 && n1 >= 0 && n2 <= 999999 && n2 >= 0; + if (!good) + cout << "The numbers must be between 0 and 999999" << endl; + } while (!good); + + int distance = 0; + int d1, d2; + int no1 = n1; //original + int no2 = n2; + while (n1 != 0 || n2 != 0) { + d1 = n1 % 10; + d2 = n2 % 10; + if (d1 != d2) + distance++; + n1 /= 10; + n2 /= 10; + } + cout << "Hamming distance between " << no1 << " and " << no2 << " is " << distance << endl; + return 0; +} -- cgit v1.2.3