【问题标题】:Trying to multiply two numbers together using only addition尝试仅使用加法将两个数字相乘
【发布时间】:2015-03-27 14:44:46
【问题描述】:

所以我正在尝试制作一个非常简单的程序,但我想我想多了。我想将两个数字相乘而不使用乘法,只使用加法。我知道我必须将 X 添加到自身 Y 次才能实现这一点,但是我的 for 循环现在的方式是,它只是将 X 添加到自身一次,并且永远不会再添加一次。我知道这个算法是在错误的地方,但我不确定该放在哪里或做什么。任何帮助将不胜感激!

import java.util.Scanner;


public class multiply {

public static void main(String[] args) {

    int x = 0;
    int y = 0;
    int answer = 0;

    Scanner scan = new Scanner (System.in);

    System.out.println("Please enter a value for x");
    x = scan.nextInt();

    System.out.println("Please enter a value for y");
    y = scan.nextInt();

    for(int i = 0; i < y; i++){
        answer = x+x;

    }

    System.out.println(x + " multiplied by " + y + " equals " + answer);

}

}

【问题讨论】:

    标签: java algorithm loops for-loop


    【解决方案1】:

    这是不正确的

    answer = x+x;
    

    应该是:

    answer = x + answer;
    

    answer += x
    

    【讨论】:

    • 啊,谢谢!我被这么简单的事情弄糊涂了!
    【解决方案2】:

    您的问题是您在 的每次迭代中都重新分配,您实际上需要这样做

    试试这个

      answer += x;
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-10
      • 2010-10-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-24
      • 1970-01-01
      相关资源
      最近更新 更多