关于java让方阵输出0和1的信息
今天给各位分享java让方阵输出0和1的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、编写一个JAVA程序,在一个4x4的矩阵中随机填入0和1,打印该矩阵,找到第一个具有最多1的行和列。
- 2、编写Java小程序:当n=4时输出如下形式的数字方阵:0000 0111 0122 0123
- 3、java编写程序,提示用户输入一个方阵的长度,随机地在矩阵中填入0或1,打印这个矩阵,然后找出整行
- 4、急求用java怎么输出一下数字方阵,请高手帮帮忙啊!!!
- 5、JAVA输出1时怎样使1变为01,2变为02..
编写一个JAVA程序,在一个4x4的矩阵中随机填入0和1,打印该矩阵,找到第一个具有最多1的行和列。
public class JuZhen {
public static void main(String[] args) {
int[][] ary = new int[4][4];
for (int i = 0; i ary.length; i++) {
for (int j = 0; j ary[i].length; j++) {
ary[i][j] = (int) (Math.random() * 2);//随机填充0或者1
System.out.print(ary[i][j] + "\t");
}
System.out.println();
}
int maxR = 0;//保存行出现1的次数的最大值,
int maxC = 0;//保存列出现1的次数的最大值,
int row = 0;//行
int col = 0;//列
for (int i = 0; i ary.length; i++) {
int numR = 0;//每次循环一行的1的次数统计
int numC = 0;//每次循环一列的1的次数统计
for (int j = 0; j ary[i].length; j++) {
if (ary[i][j] == 1) {
numR++;//次数加1
}
if (ary[j][i] == 1) {
numC++;
}
}
if (numR maxR) {//行的和行的进行比较
maxR = numR;
row = i;
}
if (numC maxC) {
maxC = numC;
col = i;
}
}
System.out.println("【行数从1开始】 最多数字1的行:" + (row + 1));
System.out.println("【列数从1开始】 最多数字1的列:" + (col + 1));
}
}
输出
0 1 1 1
0 1 0 1
1 1 0 0
1 0 1 1
【行数从1开始】 最多数字1的行:1
【列数从1开始】 最多数字1的列:2
编写Java小程序:当n=4时输出如下形式的数字方阵:0000 0111 0122 0123
public static void main(String[] args)
{
f(4);
}
public static void f(int n)
{
for(int i=0;in;i++)
{
for(int j=0;jn;j++)
{
System.out.print(Math.min(i,j));
}
System.out.println();
}
}
0000
0111
0122
0123
java编写程序,提示用户输入一个方阵的长度,随机地在矩阵中填入0或1,打印这个矩阵,然后找出整行
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.print("Enter the size for the matrix: ");
int size = input.nextInt();
int [][] array = new int [size][size];
for(int i = 0;isize;i++) {
for(int a = 0;asize;a++) {
array[i][a]=(int)(Math.random()*2);
System.out.print(array[i][a]+" ");
}
System.out.println();
}
row(array);
column(array);
diagonal(array);
subdiagonal(array);
}
public static void row(int [][] array) {
boolean bool = true ;
for(int i=0;iarray.length;i++) {
bool = true;
for(int a=0;aarray[i].length-1;a++) {
if(array[i][a]!=array[i][a+1]) {
bool = false;
}
}
if(bool) {
System.out.println((i+1)+" hang is "+array[i][0]);
}
}
}
public static void column(int [][] array) {
boolean bool = true ;
for(int a=0;aarray.length;a++) {
bool = true;
for(int i=0;iarray[a].length-1;i++) {
if(array[i][a]!=array[i+1][a]) {
bool = false;
}
}
if(bool) {
System.out.println((a+1)+" lie is "+array[0][a]);
}
}
}
public static void diagonal(int [][] array) {
boolean bool = true ;
int i;
for(i=0;iarray.length-1;i++) {
if(array[i][i]!=array[i+1][i+1]) {
bool = false;
}
}
if(bool) {
System.out.println("major diagonal is "+array[i][i]);
}
}
public static void subdiagonal(int [][] array) {
boolean bool = true ;
for(int i=array.length-1;i0;i--) {
for(int a = array.length-i-1;aarray.length-i;a++) {
if(array[i][a]!=array[i-1][a+1]) {
bool = false;
}
}
}
if(bool) {
System.out.println("sub-diagonal is "+array[0][array.length-1]);
}
}
}
急求用java怎么输出一下数字方阵,请高手帮帮忙啊!!!
用循环
我给你分析下
你来自己写
这样对你有帮助
首先我们看前4行
64
32
16
08
是吧。这是前四行的第一位
然后看他们的规律
第二位是第一位的一半
一直到第四位
然后开始翻倍
你按照这样的思路用嵌套循环写就可以了。
JAVA输出1时怎样使1变为01,2变为02..
用这句就可以了:
System.out.println(String.format("%02d",x)); //x是你要输出的整数
这样1就输出01,前面自动补0, 11还是输出11不变。
这里使用了String.format()方法,作用就是格式化输出参数. “%02d”是指定输出格式,%作先导标记,0表示自动补0, 2的意思是最小长度为2(如果用4,则1输出0001),d表示整数。
关于java让方阵输出0和1和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2022-12-25,除非注明,否则均为
原创文章,转载请注明出处。