The simplest calculator possible, to prove it's possible and easyGithub
I'd like to begin this project's page with a response to the slackers of AP Computer Science. I worked with a slacker over the past 6 weeks in a vain attempt to help him through the FracCalc project, which ended in him concluding that the project was impossible. This project is a testament otherwise, so I'll begin with my response.
I have no idea what's going on. He didn't teach us that. This project is impossible.
The FracCalc project is meant as an entry-level computer science problem. This is the simplest question you will ever be asked in a Computer Science job. This is the entrance exam of actual computer science.
Everything required for this project has been spoon-fed to you for weeks. This PowerPoint shows you everything you could ever possibly need to know for the project. You've been given all the pieces and how they go together; all you need to do is put the pieces where you're told they go.
Yes, the calculator could be considered "hard." If by "hard" you mean "you have to do actual work." If you are averse to doing work, I'm not sure why you're in an AP class at all. This class is for people who care about computer science, not people who want another class period playing fantasy football or online games and think they can BS their way through the project on the last day after learning nothing.
No, it's not Mr. Bradley's fault either. The PowerPoints that he gives you have all the tools for you to experiment with the features he describes, so if you really couldn't learn from Bradley, you could still teach yourself from what he gives you.
It's not a time issue either. And here's the evidence: this project, this Java project that this page represents, was written in two hours. 120 minutes. 7200 seconds. And yes, I wrote it, and I have worked with Java for a while; but you were taught everything as well, so it certainly shouldn't have taken the six weeks you were given.
This project is absolutely possible, absolutely simple, and absolutely indicative of whether you should have enrolled for AP Comp Sci in the first place. If you didn't finish the calculator on time, I'd question why you signed up for AP CS in the first place. This project is not a test of skill. You could walk into that room on the first day without knowing what Java is, and do just as well as I did, so long as you were willing and ready to walk out with a little more knowledge each day. FracCalc is a test of effort, with a low threshold at that. It's harder to not finish the project than to finish it if you pay attention in class. If you really didn't complete it, congratulations! You've reached a level of slacker that is rare, even nonexistent, in every other class in Liberty High School. So be proud of that, for it's unlikely you'll have much more to be proud of in the class.
With that rant complete, now onto the actual project.
This project is the minimum amount of code required to finish the FracCalc project for AP Comp Sci with 100% based on the rubric. All of the tools for this project was taught during the FracCalc project, so it's entirely possible for any member of AP CS to create this project (or something equivalent).
The other purpose of this project was as a test for my test runner for the FracCalc project. That project isn't on Github yet, but I will link here when it is.
For my actual, full-featured entry for the FracCalc project, see the Calculator project.