Hoi!
Stel dat je een getal van 100 tekens lang hebt als:
987654321234567890120987654323456765456787654678987654323456789234567654567654678909876543456789087
Weet iemand of er een methode bestaat om een som samen te stellen die korter is dan 100 tekens maar wel op dit getal uit komt? Ik heb al wat foefjes geprobeerd met worteltrekken / delen / vermenigvuldigen maar ik kom daarmee nooit precies op het oorsponkelijke getal uit (als ik de getallen achter de komma weglaat; als ik die er bij haal lukt het wel maar dan is mijn som veel langer dan het originele getal).
Andere methode die ik heb geprobeerd, is om een getal van 100 tekens te laten genereren, om vanuit daar te vermenigvuldigen met 100,1111111111111111111% of 99,9999999999999999% afhankelijk van het verschil tussen het oorspronkelijke nummer en het berekende getal, om zo een hoger of lager nummer te krijgen. Hierbij noteerde ik een binaire 1 als het hoger was, of een binaire 0 als het lager was en zette dat daarna om in het 10-tallig stelsel. Hierbij liep ik tegen de limieten op van de standaard lengte van Int/Float in veel programmeertalen, maar toen ik BigInt implementaties ging gebruiken bleek dat ook dit veel meer "som" op te leveren dan de oorsponkelijke lengte van het getal.
Heeft iemand anders nog slimme ideeën om zoiets voor elkaar te krijgen?
Stel dat je een getal van 100 tekens lang hebt als:
987654321234567890120987654323456765456787654678987654323456789234567654567654678909876543456789087
Weet iemand of er een methode bestaat om een som samen te stellen die korter is dan 100 tekens maar wel op dit getal uit komt? Ik heb al wat foefjes geprobeerd met worteltrekken / delen / vermenigvuldigen maar ik kom daarmee nooit precies op het oorsponkelijke getal uit (als ik de getallen achter de komma weglaat; als ik die er bij haal lukt het wel maar dan is mijn som veel langer dan het originele getal).
Andere methode die ik heb geprobeerd, is om een getal van 100 tekens te laten genereren, om vanuit daar te vermenigvuldigen met 100,1111111111111111111% of 99,9999999999999999% afhankelijk van het verschil tussen het oorspronkelijke nummer en het berekende getal, om zo een hoger of lager nummer te krijgen. Hierbij noteerde ik een binaire 1 als het hoger was, of een binaire 0 als het lager was en zette dat daarna om in het 10-tallig stelsel. Hierbij liep ik tegen de limieten op van de standaard lengte van Int/Float in veel programmeertalen, maar toen ik BigInt implementaties ging gebruiken bleek dat ook dit veel meer "som" op te leveren dan de oorsponkelijke lengte van het getal.
Heeft iemand anders nog slimme ideeën om zoiets voor elkaar te krijgen?