Uploaded even earlier gdscript implementation.

This commit is contained in:
2026-08-07 13:34:54 +02:00
parent 78a1607789
commit 4177ecf655
29 changed files with 143 additions and 325 deletions

36
Euler.gd Normal file
View File

@@ -0,0 +1,36 @@
class_name EulerCalculator extends Control
func _on_test_button_down() -> void:
var answer:int = calc_biggest_palindromic_number(2)
show_result(answer)
func _on_calculate_button_down() -> void:
var answer:int = calc_biggest_palindromic_number(3)
show_result(answer)
func show_result(answer:int) -> void:
$VBoxContainer/Label.text = str(answer)
func calc_biggest_palindromic_number(digits:int) -> int:
var highest_palindrome:int = -1
var min:int=pow(10,digits-1)
var max:int=pow(10,digits)
for a in range(min, max):
for b in range(min, max):
var p:int = a*b
var arr:Array = [0]
for k in range(1, digits*2+1):
var unit:int = p % (pow(10,k) as int)
unit /= (pow(10,k-1) as int)
arr.append(unit)
arr.remove_at(0)
if arr.size() != digits*2:
continue
var is_palindrome:bool = true
for k in range(0,digits):
is_palindrome = is_palindrome and arr[k] == arr[digits*2-k-1]
if is_palindrome and highest_palindrome<p:
highest_palindrome = p
return highest_palindrome