否定数字为十六进制

时间:2017-12-02 16:33:10

标签: java eclipse

作为家庭作业,我被要求编写一个程序,将一个否定号码转换为十六进制。我创造了什么有点工作,但作为输出它给我反转数字,我不知道如何解决它(这是我的第一个程序)。

public static void main(String[] args) {
    System.out.println("Give a denary number: ");
    Scanner sc = new Scanner(System.in);
    int dec1 = sc.nextInt();
    String dec = Integer.toString(dec1);
    int zmienna;
    for(int i = 0; i < dec.length(); i++) {
        zmienna = dec1 % 16;
        dec1 = dec1 / 16;
        if(zmienna == 10) {
            System.out.print("A");
        }
        else if (zmienna == 11) {
            System.out.print("B");
        }
        else if (zmienna == 12) {
            System.out.print("C");
        }
        else if (zmienna == 13) {
            System.out.print("D");
        }
        else if (zmienna == 14) {
            System.out.print("E");
        }
        else if (zmienna == 15) {
            System.out.print("F");

        }
        else if (zmienna == 0 & i == dec.length() - 1) {
            System.out.print("");
        }
        else {
            System.out.print(zmienna);
        }

    }


}

1 个答案:

答案 0 :(得分:0)

我只是改变你的程序,我只是试图解决你的问题,它的工作原理。我刚刚添加了import java.util.Scanner; public class A { public static void main(String[] args) { System.out.println("Give a denary number: "); Scanner sc = new Scanner(System.in); int dec1 = sc.nextInt(); StringBuilder sb =new StringBuilder(); String dec = Integer.toString(dec1); int zmienna; for(int i = 0; i < dec.length(); i++) { zmienna = dec1 % 16; dec1 = dec1 / 16; if(zmienna == 10) { //System.out.print("A"); sb.append("A"); } else if (zmienna == 11) { //System.out.print("B"); sb.append("B"); } else if (zmienna == 12) { //System.out.print("C"); sb.append("C"); } else if (zmienna == 13) { //System.out.print("D"); sb.append("D"); } else if (zmienna == 14) { //System.out.print("E"); sb.append("E"); } else if (zmienna == 15) { // System.out.print("F"); sb.append("F"); } else if (zmienna == 0 & i == dec.length() - 1) { System.out.print(""); } else { //System.out.print(zmienna); sb.append(zmienna); } } System.out.println(sb.reverse()); } } 并附加了字符,最后反过来了 的

<div functionCallHere and bind value here itself></div>