using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace Feettoinches
{
public class UnitConverter
{
double ratio;
public UnitConverter(double unitratio) { ratio = unitratio; }
public double Convert(double unit) { return unit * ratio; }
}
class Test
{
public static void Main()
{
//Grams
UnitConverter feetToInchesConverter = new UnitConverter(12);
UnitConverter milesToFeetConverter = new UnitConverter(5280);
UnitConverter kmsToMilesConverter = new UnitConverter(1.609);
UnitConverter centToInchesConverter = new UnitConverter(2.54);
UnitConverter ozToGramsConverter = new UnitConverter(28.349);
UnitConverter cupsTolitConverter = new UnitConverter(4.226);
/*
Console.WriteLine(feetToInchesConverter.Convert(30)); //360
Console.WriteLine(feetToInchesConverter.Convert(milesToFeetConverter.Convert(1)));
Console.WriteLine(feetToInchesConverter.Convert(100)); //1200
Console.WriteLine(kmsToMilesConverter.Convert(2)); //3.218
Console.WriteLine(centToInchesConverter.Convert(2));//5.08
*/
string type;
double amount;
int done;
done = 0;
while (done == 0)
{
{
type = Console.ReadLine();
if (type == "centi")
{
amount = Centimeters(centToInchesConverter, ref done);
}
else if (type == "feet")
{
amount = Feet(feetToInchesConverter, ref done);
}
else if (type == "km")
{
amount = kilometersToMiles(kmsToMilesConverter, ref done);
}
else if (type == "miles")
{
amount = MilesToFeet(milesToFeetConverter, ref done);
}
else if (type == "grams")
{
amount = gramsToOunces(ozToGramsConverter, ref done);
}
else if (type == "cups")
{
Console.WriteLine("Enter a number of liters to be converted into cups.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(cupsTolitConverter.Convert(amount) + " centimeters to said number of inches.");
}
else if (type == "end")
{
done = 1;
}
}
}
}
private static double gramsToOunces(UnitConverter ozToGramsConverter, ref int done)
{
double amount;
Console.WriteLine("Enter a number of ounces to be converted to grams.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(ozToGramsConverter.Convert(amount));
return amount;
}
private static double MilesToFeet(UnitConverter milesToFeetConverter, ref int done)
{
double amount;
Console.WriteLine("Enter a number of miles to be converted to feet.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(milesToFeetConverter.Convert(amount) + " feet to said number of miles.");
done
return amount;
}
private static double kilometersToMiles(UnitConverter kmsToMilesConverter, ref int done)
{
double amount;
Console.WriteLine("Enter a number of kilometers to be converted into miles.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(kmsToMilesConverter.Convert(amount) + " miles to said number of kilometers.");
return amount;
}
private static double Feet(UnitConverter feetToInchesConverter, ref int done)
{
double amount;
Console.WriteLine("Enter a number of feet to be converted into inches.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(feetToInchesConverter.Convert(amount) + " inches to said number of feet.");
return amount;
}
private static double Centimeters(UnitConverter centToInchesConverter, ref int done)
{
double amount;
Console.WriteLine("Enter a number of centimeters to be converted into inches.");
amount = Convert.ToDouble(Console.ReadLine());
Console.WriteLine(centToInchesConverter.Convert(amount) + " centimeters to said number of inches.");
return amount;
}
}
}