首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java数字减法,将第二个数字分解为1之和

Java数字减法,将第二个数字分解为1之和
EN

Stack Overflow用户
提问于 2018-10-27 01:10:49
回答 3查看 228关注 0票数 0

我做了一个简单的while循环,当我可以在java中做2个数字的减法时。此练习的唯一任务是:假设用户通过此方法插入2个数字(

代码语言:javascript
运行
复制
Scanner keyboard = number.nextInt();
Scanner keyboard2 = number2.nextInt();

假设用户插入以下2个数字:8和3我并不要求程序使8-3=5

该程序只能做减法或1的上瘾。因此,五个被转换为减法为-1的五次。

因此,程序计算8 -1 -1 -1 -1 -1 = 3而不是8-3

// 8-5或:

8 -1 =7

7-1=6

// ....

4-1=3

该练习不需要复杂的方法,也不需要for循环,只需要while

EN

回答 3

Stack Overflow用户

发布于 2018-10-27 02:29:02

作为我的观点,我认为你需要你的答案,就像你的例子一样。正因为如此,我为你制作了一个程序。在这个程序中,如果你只需要先输入大数,你就可以使用if语句,这就是我的解决方案。

代码语言:javascript
运行
复制
import java.util.*;
import java.lang.*;
public class Stack2{
    public static void main(String args[]){
        Scanner sc= new Scanner(System.in);
        int num1=sc.nextInt();
        int num2=sc.nextInt();
        if(num1<num2){
            System.out.println("Number 1 is less than number 2");
            System.exit(1);
        }
        int x=num1-num2;
        System.out.print(num1+" - "+num2+" --> is equal to "+ num1+" " );
        while(num1!=x){
            System.out.print("-1 ");
            num1--;
        }
        System.out.println("= "+x);
    }
}
票数 1
EN

Stack Overflow用户

发布于 2018-10-27 01:19:46

您的代码几乎不需要修改。你没有声明正确的扫描器对象和偶数数字。试试这段代码,

代码语言:javascript
运行
复制
public static void main(String[] args) {
    Scanner sc = new Scanner(System.in);

    int num1 = sc.nextInt();
    int num2 = sc.nextInt();

    System.out.print(num1 + " - " + num2 + " --> Is equal to " + num1);
    while(num2 > 0) {
        System.out.print(" - 1");
        num1 -= 1;
        num2--;
    }

    System.out.println(" = " + num1);
    sc.close();
}
票数 0
EN

Stack Overflow用户

发布于 2018-10-27 01:31:23

我不确定你是否想要这样的

代码语言:javascript
运行
复制
    int num1 = 8;
    int num2 = 5;
    int res = num1- num2;
    boolean bandera = Boolean.TRUE;
    String salida = "";


    while(bandera)
    {
        if(num2 > 0)
        {
            salida = salida +"-1";
            num2--;
        }else
        {
            bandera = Boolean.FALSE;
        }
    }


    System.out.println(num1 + salida + "=" + res);
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53013457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档