Assignment Purpose:
This program requires knowledge of manipulation of Java String objects and methods. It also requires knowledge of Number System Conversions.
// Lab16MATH05st.java
// The Number System Converter
// This is the student, starting version of the Lab16MATH05 assignment.
import java.util.Scanner;
public class Lab16MATH05st
{
public static void main (String args[])
{
System.out.println("Lab16MATH05 - Number Conversion Program\n\n");
// The next 2 lines are used in all versions.
System.out.println("ABCD1234 Base-16 converts to " + BaseConverter.fromHexToBin("ABCD1234") + " in Base-2.\n");
System.out.println("E12B47F5 Base-16 converts to " + BaseConverter.fromHexToBin("E12B47F5") + " in Base-2.\n");
// The next 2 lines are used in the 90-point versions and above.
// System.out.println("1011111011101111 Base-2 converts to " + BaseConverter.fromBinToDec("1011111011101111") + " in Base-10.\n");
// System.out.println("11100100100110110 Base-2 converts to " + BaseConverter.fromBinToDec("11100100100110110") + " in Base-10.\n");
// The next line is used in the 95-point versions and above.
// System.out.println("1011111011101111 Base-2 converts to " + BaseConverter.fromBinToHex("1011111011101111") + " in Base-16.\n");
// The next line is used in the 100-point versions and above.
// System.out.println("11100100100110110 Base-2 converts to " + BaseConverter.fromBinToHex("11100100100110110") + " in Base-16.\n");
// The next 3 lines are used in the 105 and 110-point versions.
// System.out.println("1000 Base-10 converts to " + BaseConverter.fromDecToAny(1000,5) + " in Base-5.\n");
// System.out.println("1000 Base-10 converts to " + BaseConverter.fromDecToAny(1000,8) + " in Base-8.\n");
// System.out.println("200 Base-10 converts to " + BaseConverter.fromDecToAny(200,2) + " in Base-2.\n");
// This last line is only used in the 110 point version.
// System.out.println("48879 Base-10 converts to " + BaseConverter.fromDecToAny(48879,16) + " in Base-16.\n");
}
}
class BaseConverter
{
public static String fromHexToBin(String hexNum)
{
String binNum = "";
return binNum;
}
public static int fromBinToDec(String binNum)
{
int decNum = 0;
return decNum;
}
public static String fromBinToHex(String binNum)
{
String hexNum = "";
return hexNum;
}
public static String fromDecToAny(int decNum, int desiredBase)
{
String newNum = "";
return newNum;
}
}
90-Point Version Specifics
The 90-point version requires that you write both the fromHexToBin and fromBinToDec methods.
90-Point Version Output
95-Point Version Specifics
The 95-point version requires everything from the 90-point version and adds the fromBinToHex method. For this version, you may assume that the binary number will have a multiple of 4 bits.
95-Point Version Output
100-Point Version Specifics
The 100-point version requires the same methods as the 95-point version; however, the fromBinToHex method needs to be improved so it can convert regardless of the number of bits.
100-Point Version Output
105-Point Version Specifics
The 105-point version requires everything from the 100-point version and adds the fromDecToAny method. For this version, the method needs to be able to convert from decimal to any base between 2 and 10. Base 16 is not required for this version.
105-Point Version Output
110-Point Version Specifics
The 110-point version requires the same methods as the 105-point version; however, the fromDecToAny method needs to be improved so it can also convert to base-16.
Attachment 4528
