mirror of
https://bitbucket.org/Mattrixwv/projecteulercpp.git
synced 2025-12-06 17:13:59 -05:00
Updated comments and made sure style was consistent
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
//ProjectEuler/C++/Source/Problem8.cpp
|
||||
//ProjectEuler/ProjectEulerCPP/Source/Problem8.cpp
|
||||
//Matthew Ellison
|
||||
// Created: 09-28-18
|
||||
//Modified: 07-14-19
|
||||
//Modified: 07-09-20
|
||||
//Find the thirteen adjacent digits in the 1000-digit number that have the greatest product. What is the value of this product?
|
||||
/*
|
||||
73167176531330624919225119674426574742355349194934
|
||||
@@ -27,7 +27,7 @@
|
||||
*/
|
||||
//Unless otherwise listed all non-standard includes are my own creation and available from https://bibucket.org/Mattrixwv/myClasses
|
||||
/*
|
||||
Copyright (C) 2019 Matthew Ellison
|
||||
Copyright (C) 2020 Matthew Ellison
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
@@ -53,11 +53,14 @@
|
||||
#include "../Headers/Problem8.hpp"
|
||||
|
||||
|
||||
//The number that we are working with
|
||||
std::string Problem8::number = "7316717653133062491922511967442657474235534919493496983520312774506326239578318016984801869478851843858615607891129494954595017379583319528532088055111254069874715852386305071569329096329522744304355766896648950445244523161731856403098711121722383113622298934233803081353362766142828064444866452387493035890729629049156044077239071381051585930796086670172427121883998797908792274921901699720888093776657273330010533678812202354218097512545405947522435258490771167055601360483958644670632441572215539753697817977846174064955149290862569321978468622482839722413756570560574902614079729686524145351004748216637048440319989000889524345065854122758866688116427171479924442928230863465674813919123162824586178664583591245665294765456828489128831426076900422421902267105562632111110937054421750694165896040807198403850962455444362981230987879927244284909188845801561660979191338754992005240636899125607176060588611646710940507754100225698315520005593572972571636269561882670428252483600823257530420752963450";
|
||||
|
||||
//Constructor
|
||||
Problem8::Problem8() : Problem("Find the thirteen adjacent digits in the 1000-digit number that have the greatest product. What is the value of this product?"), maxProduct(0){
|
||||
}
|
||||
|
||||
//Solve the problem
|
||||
void Problem8::solve(){
|
||||
//If the problem has already been solved do nothing and end the function
|
||||
if(solved){
|
||||
@@ -85,6 +88,14 @@ void Problem8::solve(){
|
||||
solved = true;
|
||||
}
|
||||
|
||||
//Reset the problem so it can be run
|
||||
void Problem8::reset(){
|
||||
Problem::reset();
|
||||
maxNums = "";
|
||||
maxProduct = 0;
|
||||
}
|
||||
|
||||
//Return a string with the solution to the problem
|
||||
std::string Problem8::getString() const{
|
||||
//If the problem hasn't been solved throw an exception
|
||||
if(!solved){
|
||||
@@ -96,6 +107,7 @@ std::string Problem8::getString() const{
|
||||
return results.str();
|
||||
}
|
||||
|
||||
//Returns the string of numbers that produces the largest product
|
||||
std::string Problem8::getLargestNums() const{
|
||||
//If the problem hasn't been solved throw an exception
|
||||
if(!solved){
|
||||
@@ -104,6 +116,7 @@ std::string Problem8::getLargestNums() const{
|
||||
return maxNums;
|
||||
}
|
||||
|
||||
//Returns the requested product
|
||||
uint64_t Problem8::getLargestProduct() const{
|
||||
//If the problem hasn't been solved throw an exception
|
||||
if(!solved){
|
||||
@@ -111,9 +124,3 @@ uint64_t Problem8::getLargestProduct() const{
|
||||
}
|
||||
return maxProduct;
|
||||
}
|
||||
|
||||
void Problem8::reset(){
|
||||
Problem::reset();
|
||||
maxNums = "";
|
||||
maxProduct = 0;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user