All about flooble | fun stuff | Get a free chatterbox | Free JavaScript | Avatars    
perplexus dot info

Home > Numbers
Teller (Posted on 2024-02-11) Difficulty: 3 of 5
Mr. Zngg cashed a check for D dollars and C cents at the Bank of Dinkydonk. The teller accidentally reversed the figures and gave him C dollars and D cents. Suppose he got more than N times the original amount, but not more than N+1 times.

(1) For what check value can Mr. Zngg spend the least money and end up with exactly N times the original amount?

(2) For what check value must Mr. Zngg spend the most money in order to end up with exactly N times the original amount?

(3) For what check value can Mr. Zngg spend an amount of money closest to his original check and end up with exactly N times the right amount? [The amount of the check will determine the value of N, which must be a positive integer. D and C are both 2-digit numbers.]

See The Solution Submitted by K Sengupta    
Rating: 5.0000 (1 votes)

Comments: ( Back to comment list | You must be logged in to post comments.)
Solution Computer solution Comment 1 of 1
(1):  If the original check was $12.37, he received $37.12 which is 3.0008084074373484 the amount of the check.
If he were to spend 1 penny, the ratio would be 37.11 / 12.37 = 3 = N

(2):  If the original check was for $49.99, he received $99.49 which is 1.9901980396079213 the amount of the check.
If he were to spend $49.50, the ratio would be 49.99 / 49.99 = 1 = N

(3):  If the original check was for $33.67, he received $67.33 which is 1.9997029997029998 the amount of the check.
If he were to spend $33.66, the ratio would be 33.67 / 33.67 = 1 = N

program output:
0.00999999999999801 [12, 37]
49.49999999999999 [49, 99]
0.010000000000005116 [33, 67]
"""
least = 10000
most = 0
closest = 10000
check_least = [10,10]
check_most = [10,10]
check_closest = [10,10]
for D in range(10,100):
    for C in range(D,100):
        if C == D:
            continue
        actual = D + C/100
        received = C + D/100
        ratio = received/actual
        N = int(ratio)
        spend = received - actual * N
        if spend < least:
            least = spend
            check_least = [D,C]
        if spend > most:
            most = spend
            check_most = [D,C]
        if abs(spend - actual) <  closest:
            closest = abs(spend - actual)
            check_closest = [D,C]
            
            
    
print(least, check_least)
print(most, check_most)
print(closest, check_closest)

  Posted by Larry on 2024-02-11 14:38:37
Please log in:
Login:
Password:
Remember me:
Sign up! | Forgot password


Search:
Search body:
Forums (2)
Newest Problems
Random Problem
FAQ | About This Site
Site Statistics
New Comments (12)
Unsolved Problems
Top Rated Problems
This month's top
Most Commented On

Chatterbox:
Copyright © 2002 - 2024 by Animus Pactum Consulting. All rights reserved. Privacy Information