public ActionResult Calculate() { CheckConversion checkConversion = new CheckConversion(); ViewBag.UnitsOfMeasure = new SelectList(UnitsOfMeasure); return(View(checkConversion)); }
public ActionResult Calculate(CheckConversion checkConversion) { double studentResponse = checkConversion.StudentResponse; ViewBag.UnitsOfMeasure = new SelectList(UnitsOfMeasure); CheckConversion check = new CheckConversion(); try { // TODO: Add update logic here if (checkConversion.InputUnitOfMeasure == "Kelvin") { check = Kelvin(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "Celsius") { check = Celsius(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "Fahrenheit") { check = Fahrenheit(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "Rankine") { check = Rankine(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "liters") { check = Liters(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "tablespoons") { check = TableSpoons(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "cubic - inches") { check = CubicInches(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "cups") { check = Cups(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "cubic - feet") { check = CubicFeet(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "gallons") { check = Gallons(checkConversion); } return(View(check)); } catch { return(View()); } }
public CheckConversion Gallons(CheckConversion checkConversion) { if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "Kelvin" || checkConversion.TargetUnitOfMeasure == "Celsius" || checkConversion.TargetUnitOfMeasure == "Fahrenheit" || checkConversion.TargetUnitOfMeasure == "Rankine") { checkConversion.Output = "invalid"; return(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "gallons") { if (checkConversion.InputNumericalValue == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "liters") { double inputNumber = checkConversion.InputNumericalValue * 3.785; inputNumber = Math.Round(inputNumber, 5); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 5); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "tablespoons") { double inputNumber = checkConversion.InputNumericalValue * 256; inputNumber = Math.Round(inputNumber, 5); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 5); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "cubic-inches") { double inputNumber = checkConversion.InputNumericalValue * 231; inputNumber = Math.Round(inputNumber, 5); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 5); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "cups") { double inputNumber = checkConversion.InputNumericalValue * 16; inputNumber = Math.Round(inputNumber, 5); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 5); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "gallons" && checkConversion.TargetUnitOfMeasure == "cubic-feet") { double inputNumber = checkConversion.InputNumericalValue / 7.481; inputNumber = Math.Round(inputNumber, 5); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 5); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } return(checkConversion); }
public CheckConversion Rankine(CheckConversion checkConversion) { if (checkConversion.InputUnitOfMeasure == "Rankine" && checkConversion.TargetUnitOfMeasure == "liters" || checkConversion.TargetUnitOfMeasure == "tablespoons" || checkConversion.TargetUnitOfMeasure == "cubic - inches" || checkConversion.TargetUnitOfMeasure == "cups" || checkConversion.TargetUnitOfMeasure == "cubic - feet" || checkConversion.TargetUnitOfMeasure == "gallons") { checkConversion.Output = "invalid"; return(checkConversion); } else if (checkConversion.InputUnitOfMeasure == "Rankine" && checkConversion.TargetUnitOfMeasure == "Rankine") { if (checkConversion.InputNumericalValue == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "Rankine" && checkConversion.TargetUnitOfMeasure == "Kelvin") { double inputNumber = checkConversion.InputNumericalValue * (5 / 9); inputNumber = Math.Round(inputNumber, 2); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 2); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "Rankine" && checkConversion.TargetUnitOfMeasure == "Celsius") { double inputNumber = (checkConversion.InputNumericalValue - 491.67) * (5 / 9); inputNumber = Math.Round(inputNumber, 2); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 2); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } else if (checkConversion.InputUnitOfMeasure == "Rankine" && checkConversion.TargetUnitOfMeasure == "Fahrenheit") { double inputNumber = checkConversion.InputNumericalValue - 459.67; inputNumber = Math.Round(inputNumber, 2); checkConversion.StudentResponse = Math.Round(checkConversion.StudentResponse, 2); if (inputNumber == checkConversion.StudentResponse) { checkConversion.Output = "correct"; return(checkConversion); } else { checkConversion.Output = "incorrect"; return(checkConversion); } } return(checkConversion); }