From e329a567e6a523737e584da74ec6c4051f724e04 Mon Sep 17 00:00:00 2001 From: Fernando Mota Date: 2020年10月16日 14:56:51 -0300 Subject: [PATCH 1/4] Added Problem4 largest palindrome product in JavaScipt --- Project-Euler/Problem4.js | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 Project-Euler/Problem4.js diff --git a/Project-Euler/Problem4.js b/Project-Euler/Problem4.js new file mode 100644 index 0000000000..5f6c0c4c5e --- /dev/null +++ b/Project-Euler/Problem4.js @@ -0,0 +1,32 @@ +function isPalindrome(number){ + +//just 2 random names for variables! + let look = String(number) + let hear = false + + for(let i = 0; i< look.length; i++){ + if(look[i] === look[(look.length)-(i+1)]){ + hear = true + } + else + return false + } + return hear +} + +function largestPalindromeProduct(n) { + let product = 0 + let largestPalindrome = 11 + +for(let i=10**(n-1) ;i < 10**n;i++){ + for(let j = 10**(n-1);j<10**n;j++){ + product = i*j + if(isPalindrome(product) && product>largestPalindrome) + largestPalindrome = product + } +} + return largestPalindrome +} + +console.log(isPalindrome(9009)) +console.log(largestPalindromeProduct(2)) From 1113ff3ad1ca74649934d1c84b2b70e31c6b2af4 Mon Sep 17 00:00:00 2001 From: Fernando Mota Date: 2020年10月16日 15:00:08 -0300 Subject: [PATCH 2/4] Added Solution for problem 4 in JavaScript --- Project-Euler/Problem4.js | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Project-Euler/Problem4.js b/Project-Euler/Problem4.js index 5f6c0c4c5e..244f38ba30 100644 --- a/Project-Euler/Problem4.js +++ b/Project-Euler/Problem4.js @@ -1,11 +1,11 @@ -function isPalindrome(number){ +function isPalindrome(number) { //just 2 random names for variables! let look = String(number) let hear = false - for(let i = 0; i< look.length; i++){ - if(look[i] === look[(look.length)-(i+1)]){ + for(let i = 0; i< look.length; i++) { + if(look[i] === look[(look.length)-(i+1)]) { hear = true } else @@ -18,8 +18,8 @@ function largestPalindromeProduct(n) { let product = 0 let largestPalindrome = 11 -for(let i=10**(n-1) ;i < 10**n;i++){ - for(let j = 10**(n-1);j<10**n;j++){ +for(let i=10**(n-1) ;i < 10**n;i++) { + for(let j = 10**(n-1);j<10**n;j++) { product = i*j if(isPalindrome(product) && product>largestPalindrome) largestPalindrome = product From 58dc3c00f8134211f116c59cd7bdeb3e09b5ebe0 Mon Sep 17 00:00:00 2001 From: Fernando Mota Date: 2020年10月16日 15:23:48 -0300 Subject: [PATCH 3/4] Added problem 4 in JavaScript --- Project-Euler/Problem4.js | 34 ++++++++++++++++------------------ 1 file changed, 16 insertions(+), 18 deletions(-) diff --git a/Project-Euler/Problem4.js b/Project-Euler/Problem4.js index 244f38ba30..1ae3ef197b 100644 --- a/Project-Euler/Problem4.js +++ b/Project-Euler/Problem4.js @@ -1,30 +1,28 @@ -function isPalindrome(number) { +function isPalindrome (number) { + // just 2 random names for variables! + const look = String(number) + let hear = false -//just 2 random names for variables! - let look = String(number) - let hear = false - - for(let i = 0; i< look.length; i++) { - if(look[i] === look[(look.length)-(i+1)]) { - hear = true - } - else - return false + for (let i = 0; i < look.length; i++) { + if (look[i] === look[(look.length) - (i + 1)]) { + hear = true + } else { + return false } + } return hear } -function largestPalindromeProduct(n) { +function largestPalindromeProduct (n) { let product = 0 let largestPalindrome = 11 -for(let i=10**(n-1) ;i < 10**n;i++) { - for(let j = 10**(n-1);j<10**n;j++) { - product = i*j - if(isPalindrome(product) && product>largestPalindrome) - largestPalindrome = product + for (let i = 10 ** (n - 1); i < 10 ** n; i++) { + for (let j = 10 ** (n - 1); j < 10 ** n; j++) { + product = i * j + if (isPalindrome(product) && product> largestPalindrome) { largestPalindrome = product } } -} + } return largestPalindrome } From a5eb7baa02938d35b6c35ec2598b3b95d9b177a1 Mon Sep 17 00:00:00 2001 From: Fernando Mota Freitas Date: Wed, 6 Oct 2021 17:37:33 -0300 Subject: [PATCH 4/4] fix syntax errors on Problem4 --- Project-Euler/Problem4.js | 49 --------------------------------------- 1 file changed, 49 deletions(-) diff --git a/Project-Euler/Problem4.js b/Project-Euler/Problem4.js index 0df78ab3c3..1ae3ef197b 100644 --- a/Project-Euler/Problem4.js +++ b/Project-Euler/Problem4.js @@ -1,4 +1,3 @@ -<<<<<<< HEAD function isPalindrome (number) { // just 2 random names for variables! const look = String(number) @@ -29,51 +28,3 @@ function largestPalindromeProduct (n) { console.log(isPalindrome(9009)) console.log(largestPalindromeProduct(2)) -======= -// https://projecteuler.net/problem=4 -/* A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 ×ばつ 99. - Find the largest palindrome made from the product of two 3-digit numbers. -*/ -const largestPalindromic = (digits) => { - let i - let n - let m - let d - let limit - let number = 0 - - for (i = 1; i < digits; i++) { - number = 10 * number + 9 - } - const inf = number // highest (digits - 1) number, in this example highest 2 digit number - const sup = 10 * number + 9 // highest (digits) number, in this example highest 3 digit number - - const isPalindromic = (n) => { - let p = 0 - const q = n - let r - while (n> 0) { - r = n % 10 - p = 10 * p + r - n = Math.floor(n / 10) - } - return p === q // returning whether the number is palindromic or not - } - - for (n = sup * sup, m = inf * inf; n> m; n--) { - if (isPalindromic(n)) { - limit = Math.ceil(Math.sqrt(n)) - d = sup - while (d>= limit) { - if (n % d === 0 && n / d> inf) { - return n - } - d -= 1 - } - } - } - return NaN // returning not a number, if any such case arise -} - -console.log(largestPalindromic(3)) ->>>>>>> 6eeb9899307cc6eacb52592d91e9caa0e7615cf0

AltStyle によって変換されたページ (->オリジナル) /