JAVA机试之旋转矩阵

上传人:平*** 文档编号:12457115 上传时间:2017-10-19 格式:DOC 页数:4 大小:24.50KB
返回 下载 相关 举报
JAVA机试之旋转矩阵_第1页
第1页 / 共4页
JAVA机试之旋转矩阵_第2页
第2页 / 共4页
JAVA机试之旋转矩阵_第3页
第3页 / 共4页
JAVA机试之旋转矩阵_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《JAVA机试之旋转矩阵》由会员分享,可在线阅读,更多相关《JAVA机试之旋转矩阵(4页珍藏版)》请在金锄头文库上搜索。

1、机试复试 java 旋转矩阵1.描述题目描述:任意输入两个9阶以下矩阵,要求判断第二个是否是第一个的旋转矩阵,如果是,输出旋转角度(0、90、180、270) ,如果不是,输出-1。要求先输入矩阵阶数,然后输入两个矩阵,每行两个数之间可以用任意个空格分隔。行之间用回车分隔,两个矩阵间用任意的回车分隔。输入:输入有多组数据。每组数据第一行输入 n(1=n=9),从第二行开始输入两个 n 阶矩阵。输出:判断第二个是否是第一个的旋转矩阵,如果是,输出旋转角度(0、90 、180 、270 ) ,如果不是,输出-1。如果旋转角度的结果有多个,则输出最小的那个。样例输入:31 2 34 5 67 8 9

2、7 4 18 5 29 6 3样例输出:902.SwitchMartix.javapackage com.xh.java;/包名import java.util.Scanner;public class SwitchMartixprivate static Scanner sc=new Scanner(System.in);private static int n; /方阵规模/产生 n 阶方阵public static int getMatrix()intA=new intnn; for(int i=0;in;i+)for(int j=0;jn;j+)Aij=sc.nextInt();ret

3、urn A;/获取旋转角度 angle: -1 表示不是旋转矩阵;旋转矩阵角度0 90 180 270public static int getAngle(inta,intb) int angle = 0;for(int i = 0; i n; i +) for(int j = 0; j n; j +) /开始遍历if(angle = 0) /假设修正法 角度依次增加if(aij = bij) continue; else angle = 90; if(angle = 90) /假设修正法if(aij = bjn - i - 1) continue; else angle = 180; if(

4、angle = 180) /假设修正法if(aij = bn - i - 1n - j -1) continue; else angle = 270; if(angle = 270) /假设修正法if(aij = bn - j - 1i) continue; else return -1; /不是旋转矩阵,直接返回 /for /forreturn angle; /主函数public static void main(String args) /输入数据n=sc.nextInt();/输入两个 n 阶方阵intA=getMatrix(); intB=getMatrix();/调用角度判断方法int angle=getAngle(A,B);/输出结果System.out.println(angle);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号