Skip to content
This repository has been archived by the owner on Dec 5, 2020. It is now read-only.

A scientific calculator built in C# for my Aston Degree (Course DC1020)

Notifications You must be signed in to change notification settings

tdashworth/dc1020-scientific-calculator

Repository files navigation

DC1020-Coursework

A scientific calculator built in C# for my Aston Degree (Course DC1020)

Task: Make a Scientific Calculator in VS.NET C#

Task Description

Create a scientific calculator in VS.NET C# programming, which can perform basic mathematical operations (e.g., addition, subtraction, multiplication, and division) as well as some more advanced calculations (e.g., sines, cosines, tangents, exponents, logarithms, roots, etc.). To design the graphic user interface for your calculator, you can either follow the example of "Windows 7 Calculator (Scientific Mode)" (see Figure 1(a)), or create your own user interface (e.g., Figures 1(b)).

Basic Calculator

Figure 1(a) Windows 7 Calculator (Scientific Mode)

Basic Calculator

Figure 1(b) Examples of Your Own User Interface Design

Submission Date

Submission Deadline: 3.00pm, 1 st July, 2018 Please package all files in your .NET project folder into a single .ZIP package and submitted the .ZIP package via Blackboard. The total mark of this project is 100%, including minimum requirements (40%), and desired requirements (60%).

Minimum Requirements

To get the basic marks (40%), the function of your calculator should not be simpler than the following one:

Basic Calculator

The following basic operations are mandatory for your calculator:

Operations Functions
+ Addition
- Subtraction
X Multiplication
/ Division

Desired Requirements

To get higher marks (>40%), you should add more advanced functions for your calculator, by supporting, for example:

  • more advanced calculations (e.g., sines, cosines, tangents, exponents, logarithms, roots, etc.),
  • "save & restore" memory functionality (e.g., "MC", "M+", "M-" buttons in Windows 7 Calculator)
  • bracket operators together with “+, -, x and /” calculations
  • angle mode switching functionality (e.g., conversion between degrees and radians) Anotated Calculator

Marking Criteria

Fail (0 - 39%)

  • Minimum Requirements were not met.
  • Program does not compile due to errors (which could not be easily determined).
  • User interface design was not related to implementation.

Pass (40% - 49%)

  • Meet the minimum requirements listed (i.e., support four basic “+,-,*, /” operations).
  • Operator precedence is left-to-right associativity only (e.g., multiplication is not granted a higher precedence than addition). For instance, the expression 1 + 2 × 3 is interpreted to have the value (1 + 2) × 3 = 9 not 1 + (2 × 3) = 7).
  • Sound user interface design with no major mistake.

Credit (50% - 69%)

  • Meet the minimum requirements listed.
  • Operator precedence is left-to-right associativity only.
  • Support some advanced calculations (e.g., sines, cosines, tangents, exponents, logarithms, roots, etc.).
  • Implement "save & restore" memory functionality (e.g., "MC", "M+", "M-" buttons, as show in Windows 7 Calculator).
  • Good user interface design with minor mistake.

Distinction (70% - 79%)

  • Meet the minimum requirements listed.
  • A more standard priority is given to different operators (e.g. 1+2x3 yields 7 not 9)
  • Support some advanced calculations (e.g., sines, cosines, tangents, exponents, logarithms, roots, etc.).
  • Implement "save & restore" memory functionality (e.g., "MC", "M+", "M-" buttons in Windows 7 Calculator).
  • Bracket operators together with “+, -, * and /” calculations.
  • Aesthetic user interface design without errors.

High Distinction (80% - 100%)

  • Meet the minimum requirements listed.
  • A more standard priority is given to different operators (e.g. 1+2x3 yields 7 not 9)
  • Support some advanced calculations (e.g., sines, cosines, tangents, exponents, logarithms, roots, etc.).
  • Implement "save & restore" memory functionality (e.g., "MC", "M+", "M-" buttons in Windows 7 Calculator).
  • Nested Bracket operators together with “+, -, * and /” calculations.
  • More advanced functions, e.g., angle mode switching (conversion between degrees and radians in Windows 7 Calculator).
  • Evidence of exception handling and other good programming practices, e.g., comments and indentation.
  • Aesthetic user interface design without errors.

About

A scientific calculator built in C# for my Aston Degree (Course DC1020)

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages