系列课中的逻辑问题

Ved*_*dra 2 java math logic

我写了一个课程来接受输入i , n,然后打印一个系列:i; ii; iii; iiii;...n术语.因此,如果用户输入5为3条件,输出5; 55; 555;.

import java.io.*;

public class replicate
{
    public void method() throws IOException
    {
        int i = 0;
        int n = 0;
        int x = 0;
        int num;
        BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
        System.out.println("Enter number");
        num = Integer.parseInt(obj.readLine());
        System.out.println("Enter number of terms");
        n = Integer.parseInt(obj.readLine());

        for(i=1;i<=n;i++)
        {
            x = num + (num*10);
            System.out.println (x);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

但是,使用4个输入5的程序运行程序会给出输出

55
55
55
Run Code Online (Sandbox Code Playgroud)

我已将问题追溯到最后一个for循环.我的逻辑在哪里出错了,我该如何解决?

das*_*ght 5

由于num循环中没有变化,因此表达式num + (num*10)在所有迭代中产生相同的值.您应该使用之前的值x代替num,如下所示:

x = x * 10 + num;
Run Code Online (Sandbox Code Playgroud)

在ideone上演示.