关于java乘以10000的信息
本篇文章给大家谈谈java乘以10000,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
- 1、Java 编程.int 乘以一个数字。得到的数字是long形。
- 2、在java中运行Math.round((18/19)*10000)打出的结果为什么是0。
- 3、用Java随机生成两个10000乘10000的矩阵进行加法和乘法运算
Java 编程.int 乘以一个数字。得到的数字是long形。
这个叫临界问题。
JAVA的基本类型不具备精确计算。
Java在java.math包中提供的API类BigDecimal用来对超过16位有效位的数进行精确的运算。
构造函数:
BigDecimal(int)创建一个具有参数所指定整数值的对象。
BigDecimal(double)创建一个具有参数所指定双精度值的对象。
BigDecimal(long)创建一个具有参数所指定长整数值的对象。
。。。
详见API
在java中运行Math.round((18/19)*10000)打出的结果为什么是0。
这和java中的计算规则相关,18和19都int类型的 ,计算的结果也是int类型的,所以就会去掉小数部分,18/19结果为0 ,要想得到结果在19后加f(18/19f)变成float类型,或者加d(18/19d)变成double类型,就能计算出小数了。
用Java随机生成两个10000乘10000的矩阵进行加法和乘法运算
JAVA实现两个矩阵的加法和乘法运算
import java.util.Scanner;
public class AandM
{
public static void main(String[]args)
{
Scanner input=new Scanner(System.in);
System.out.print("请输入矩阵A的行数:");
int ah=input.nextInt();
System.out.print("请输入矩阵A的列数:");
int al=input.nextInt();
System.out.print("请输入矩阵B的行数:");
int bh=input.nextInt();
System.out.print("请输入矩阵B的列数:");
int bl=input.nextInt();
if(al!=bh(ah!=bhal!=bl))
{ System.out.println("不能进行矩阵相乘运算不能进行矩阵相加运算");}
else
{
if((al==bh)(ah!=bhal!=bl))
{ System.out.println("能进行矩阵相乘运算但不能进行矩阵相加运算");}
if(al!=bhah==bhal==bl)
{ System.out.println("不能进行矩阵相乘运算但能进行矩阵相加运算");}
if(al==bhah==bhal==bl)
{System.out.println("能进行矩阵相乘运算也能进行矩阵相加运算");}
int [][]a=new int [ah][al];
for(int i=0;ia.length;i++)
{
for(int j=0;ja[i].length;j++)
{
System.out.print("输入矩阵A的a["+i+"] ["+j+"]:");
a[i][j]=input.nextInt();
}
}
System.out.println();
int [][]b=new int [bh][bl];
for(int i=0;ib.length;i++)
{
for(int j=0;jb[i].length;j++)
{
System.out.print("输入矩阵B的b["+i+"] ["+j+"]:");
b[i][j]=input.nextInt();
}
}
int[][]c=new int[a.length][b[0].length];
int[][]d=new int[a.length][b[0].length];
for(int i=0;ic.length;i++)
{
for(int j=0;jc[0].length;j++)
{
c[i][j]=0;
}
}
if((al==bhah==bhal==bl)||(al!=bhah==bhal==bl))
{
for(int i=0;ib.length;i++)
{
for(int j=0;jb[i].length;j++)
{
d[i][j]=a[i][j]+b[i][j];
}
}
System.out.println();
System.out.println( "两矩阵相加的结果为:" );
String output="";
for(int i1=0;i1d.length;i1++)
{
for(int j=0;jd[0].length;j++)
{
output+=d[i1][j]+" ";
}
output += '\n';
}
System.out.println(""+output);
}
if((al==bhah==bhal==bl)||((al==bh)(ah!=bhal!=bl)))
{
for(int i=0;ia.length;i++)
for(int j=0;jb[0].length;j++)
{
for(int k=0;ka[0].length;k++)
{
c[i][j]+=a[i][k]*b[k][j];
}
}
System.out.println();
System.out.println( "两矩阵相乘的结果为:" );
String out="";
for(int i=0;ic.length;i++)
{
for(int j=0;jc[0].length;j++)
{
out+=c[i][j]+" ";
}
out+= '\n';
}
System.out.println(""+out);
}
}
}
}
java乘以10000的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、java乘以10000的信息别忘了在本站进行查找喔。
发布于:2022-11-26,除非注明,否则均为
原创文章,转载请注明出处。