Scanner是默认按照行来读取数字的。

创建一个用来输入的函数

Scanner scan=new Scanner(System.in);system.in是表示从控制台输入。

然后用一个变量类接收这个值

int n=scan.nextInt();

只要声明一个对象即可,后面直接利用scan的方法转换成各种类型即可。

Random方法是随机生成数的方法。

种子是表示在这个数的范围内生成的随机数字。

即上面这个表示在10的范围内生成的随机数字。

下面是利用蒙特卡罗算法来判断矩阵AB=E,即矩阵互逆。

package suanfa;

import java.util.Random;
import java.util.Scanner;

public class MtklSuanfa {
public static void main(String[] args) {
System.out.println("请输入矩阵的维数n:");
Scanner scan=new Scanner(System.in);;

int n=scan.nextInt();

double a[][]=new double[n][n];
double b[][]=new double[n][n];
System.out.println("请输入矩阵a");

for ( int i = 0; i <n; i++) {
for ( int j = 0; j <n; j++) {
//scan=new Scanner(System.in);
a[i][j]=scan.nextDouble();
}

}
System.out.println("输出的矩阵a是:");
for ( int i = 0; i <n; i++) {
for ( int j = 0; j <n; j++) {
System.out.print(a[i][j]+"\t");
if (j+1==n) {
System.out.println("");

}
}

}


System.out.println("请输入矩阵b");
for (int i = 0; i <n; i++) {
for (int j = 0; j <n; j++) {
//scan=new Scanner(System.in);
b[i][j]=scan.nextDouble();
}

}
System.out.println("输出的矩阵b是:");
for ( int i = 0; i <n; i++) {
for ( int j = 0; j <n; j++) {
System.out.print(b[i][j]+"\t");
if (j+1==n) {
System.out.println("");

}
}

}

int result=mtkl(a,b,n);

if (result==0) {
System.out.println("a和b不是互逆矩阵");
}
else{
System.out.println("a和b是互逆矩阵");
}
}

private static int mtkl(double[][] a, double[][] b, int n) {
int flag = 0;
Random random=new Random();
double [] x=new double[n];
double [] y=new double[n];
double []z=new double[n];
for (int i = 0; i < n; i++) {
x[i]=random.nextInt(10);
}
//计算y=bx
compute(b,x,y,n);
//计算z=ay=abx
compute(a,x,z,n);

for (int i = 0; i < n; i++) {
if(Math.abs( z[i]-x[i] )==0 ){
flag=1;
}
flag=0;

}
return flag;

}

private static void compute(double[][] a, double[] x, double[] y, int n) {
for(int i=0;i<n;i++)
for(int j=0;j<n;j++)
{
y[i] += a[i][j] * x[j];
}
}

}

java中Scanner和random的用法的更多相关文章

  1. JAVA中字符串函数subString的用法小结

    本篇文章主要是对JAVA中字符串函数subString的用法进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 String str; str=str.substring(int begi ...

  2. 【Java学习笔记之二十九】Java中的"equals"和"=="的用法及区别

    Java中的"equals"和"=="的用法及区别 在初学Java时,可能会经常碰到下面的代码: String str1 = new String(" ...

  3. java中 this 的三种用法

    Java中this的三种用法 调用属性 (1)this可以调用本类中的任何成员变量 调用方法(可省略) (2)this调用本类中的成员方法(在main方法里面没有办法通过this调用) 调用构造方法 ...

  4. Java中枚举的写法和用法

            在公司代码中,用了一大堆的枚举,看得我好懵逼.下面开始看看枚举怎么写和怎么用. 一.枚举的写法         关于枚举的写法,网上好多这方面的知识.这里直接贴一个我自己写的枚举类的代 ...

  5. Java中try,catch,finally的用法

    Java中try,catch,finally的用法,以前感觉还算熟悉,但看到一篇博文才有更深点的理解,总结网友博客如下. Java异常处理的组合方式: 1.try+catch  运行流程:运行到try ...

  6. python中的随机函数random的用法示例

    python中的随机函数random的用法示例 一.random模块简介 Python标准库中的random函数,可以生成随机浮点数.整数.字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据 ...

  7. java中scanner类的用法

    在Eclipse中编写程序时,如果我们的变量是需要手动输入的时候,我们就可以用到scanner类了. Scanner类,这是一个用于扫描输入文本的新的实用程序.由于任何数据都必须通过同一模式的捕获组检 ...

  8. Java中Scanner用法总结

    最近在做OJ类问题的时候,经常由于Scanner的使用造成一些细节问题导致程序不通过(最惨的就是网易笔试,由于sc死循环了也没发现,导致AC代码也不能通过...),因此对Scanner进行了一些总结整 ...

  9. java中super的两种用法

    通过用static来定义方法或成员,为我们编程提供了某种便利,从某种程度上可以说它类似于C语言中的全局函数和全局变量.但是,并不是说有了这种便利,你便可以随处使用,如果那样的话,你便需要认真考虑一下自 ...

随机推荐

  1. Linux 安装mysql+apache+php

    安装mysql 1.  yum install mysql mysql-server 2. 修改mysql密码 >use mysql    >update user set passwor ...

  2. iOS开发中的错误整理,pod文件Install失败

    一.之前用黑苹果,编辑pod文件用一下格式 platform :ios, "8.0" pod "MJExtension" pod "MJRefresh ...

  3. Linux_Shell_Bash快捷键

      来自为知笔记(Wiz)

  4. Oauth2.0 用Spring-security-oauth2 来实现

    前言: 要准备再次研究下 统一认证的功能了,我还是觉得实现统一认证 用Oauth2 最好了,所以,现在再次收集资料和记笔记. 正文: 一.概念理解 OAuth2, 是个授权协议, RFC文档见:htt ...

  5. java-汉字转化拼音(纯java)

    1.转换所有的拼音 import java.util.Iterator; import java.util.LinkedHashMap; import java.util.Set; public cl ...

  6. yum命令安装mysql

    linux下使用yum安装mysql,以及启动.登录和远程访问. 1.安装 查看有没有安装过: yum list installed mysql* rpm -qa | grep mysql* 查看有没 ...

  7. 数据库开发基础-SQl Server 视图

    1.视图的概述            视图其实就是一条查询sql语句,用于显示一个或多个表或其他视图中的相关数据.视图将一个查询的结果作为一个表来使用,因此视图可以被看作是存储的查询或一个虚拟表.视图 ...

  8. 终于有SpringMvc与Struts2的对比啦

    目前企业中使用SpringMvc的比例已经远远超过Struts2,那么两者到底有什么区别,是很多初学者比较关注的问题,下面我们就来对SpringMvc和Struts2进行各方面的比较: 1. 核 心控 ...

  9. NOI WC2016滚粗记

    Day-4 报到日,今年居然没有发包QAQ,中午到的,志愿者很热情,食堂吃不了(也有可能是吃不惯),空调打不热,有拖线板(好评),有wifi覆盖(虽然听说连上要看脸)(反正我是没连过,用的自己的流量) ...

  10. js的一些压缩和优化性能

    所选工具:YUI  Compressor(压缩代码软件,直接在百度搜索用网页版就行),阿帕奇(apache)将文件上传到到服务器时,可通过apache将文件再次压缩,winSCP(用于在本地和服务器之 ...