
这一题是一个找规律题,也可以用BigInteger来写
1.找规律:
public class 第一题 {
public static void main(String[] args) {
long a=202420242024l/2;
long b=24*a;
System.out.println(b);
}
}
奇数个是20的倍数,偶数个是24的倍数,202420242024个是24的倍数,是202420242024/2个相加,即202420242024/2*24
注意long型数据后要加一个L
2.用biginteger
先写一个错误的
import java.math.BigInteger;
public class 第一题 {
public static void main(String[] args) {
BigInteger a=BigInteger.valueOf(2429042904288);
BigInteger b=a.mod(2);
BigInteger c=b*24;
System.out.println(c);
}
}
这里面有很多错误,通过错误快速学会BigInteger基本用法
(1)
BigInteger.valueOf(___1___)1的位置中因该填一个数,这个数不能超过long的范围,大概10位数是int型的范围,20位数是long的范围,如果要填的数是long则需要在这个数后面添一个L
当然,还可以创建一个新的bi'ginteger对象
BigInteger a= new BigInteger("202420242024");
这时括号内填的是一个字符串,
还可以这样写
String s="202420242024";
BigInteger a= new BigInteger("s");(错误)
这里要注意"s"是不对的,因为这时将一个字符"s"输入进去了,正确的应该是 sBigInteger a= new BigInteger(s);
(2)
第二行有两个错误,一是知道了Big要用a,s,m,d四个英文来表示加减乘除,但没有记对,蓝桥杯考试中记住asmd四个字母,再按快加键自动提示即可eclipse中自动补全是alt+/
add,subtract,multiply,divide中应该用divide,其次小括号中应该用Big对象,要将int型转换成big型,正确写法是:
BigInteger b=a.divide(BigInteger.valueOf(2));
(3)
第三行错误是big型不支持+ - * /,
要用multiply,其次是应该用Big对象,要将int型转换成big型
正确写法为:
BigInteger c=b.multiply(BigInteger.valueOf(24));
import java.math.BigInteger;
public class 第一题 {
public static void main(String[] args) {
String s="202420242024";
BigInteger a= new BigInteger(s);
BigInteger b=a.divide(BigInteger.valueOf(2));
BigInteger c=b.multiply(BigInteger.valueOf(24));
System.out.println(c);
}
}
1927

被折叠的 条评论
为什么被折叠?



