using System; public class Test { public static void Main() { string line = Console.ReadLine(); string[] splitLines = line.Split(' '); double withdrawal = double.Parse(splitLines[0]); double balance = double.Parse(splitLines[1]); if(withdrawal % 5 == 0 && balance >= withdrawal + 0.5) { double updatedBalance = balance - withdrawal - 0.5; Console.WriteLine(updatedBalance.ToString("F")); } else { Console.WriteLine(balance.ToString("F")); } } }
Here’s my solution to the ATM problem on CodeChef. The user has to input a withdrawal amount and a balance amount on the same line(Why? IDK). There is an ATM usage fee of $0.50 that must be added to the withdrawal. The withdrawal of course cannot exceed the balance and must be a multiple of 5. Simple may this problem be, I actually felt like I learned few things from doing it.
- Split() is a really nifty method for when you need to split strings.
- Format specifiers, in this case “F”, are really nifty for when you need to specify precision.
- Try not to get big-headed even when doing simple tasks. Next thing you know, you’ll have a logical brain fart, get frustrated, and slip into an existential crisis.
Here’s the link to the problem.