请专注于学习续

今天的两个java题目,题目具体记得不太清楚
1.输出结果s=a+aa+aaa+…+aaaa…a(最后一项有n个a)。如a=3,n=4,则s=3+33+333+3333,其中a和n由用户输入
2.题目大概是输入一个数,分别输出这个数的每一位。
我已经搞定,参考了知道的回答,源代码如下:
第一题目:

[cce]
/**
*引入Scanner类,读取控制台输入
*引入Math类,读取控制台输入
*/
import java.util.Scanner;
import java.lang.Math;
public class artur_1{
//实例化Scanner对象
private Scanner scanner = new Scanner(System.in);
private int a,i;
private int n;
private int sum=1,s=1;
artur_1(){
System.out.println(“请输入a,n:”);
//获取a
a = scanner.nextInt();
//获取n
n = scanner.nextInt();
//输出a
System.out.println(“a=”+a);
System.out.println(“n=”+n);
}
//累加函数
public int addNum(){
//先算出1+11+111+111
for(i=1;i<n;i++){
s+=Math.pow(10,i);sum+=s;
}
//再算出a+aa+aaa+aaa
sum = a * sum;
//返回sum
return sum;
}
public static void main(String[] args){
//调用构造函数实例化
artur_1 swk = new artur_1();
//调用累加函数
swk.sum = swk.addNum();
//输出结果
System.out.println(“a+aa+aaa+aaa..a(n)的结果为:”+swk.sum);
}
}
[/cce]

第二题目:

[cce]
import java.util.Scanner;
public class artur_2
{
private Scanner scanner = new Scanner(System.in);
private int n,a;
private int sum = 1;
artur_2(){
System.out.println(“请输入n:”);
//获取a
n=scanner.nextInt();
//输出a
System.out.println(“n=”+n+” 结果为:”);
}
//显示结果
public int show(){
//算法主要是取余%,再去掉已经取了的余数
while( n! = 0 ){
a=n%10;
System.out.println(” “+a);
n/=10;
}
return n;
}
public static void main(String[] args){
//实例化
artur_2 swk = new artur_2();
//显示结果
swk.show();
}
}
[/cce]

发表评论

电子邮件地址不会被公开。 必填项已用*标注