精华内容
下载资源
问答
  • 2020-02-27 00:51:10

    public class duiCheng {
    public static void main(String[] args) {
    int[] a = {50,25,1,25,50};
    boolean flag = false;
    for (int i = 0; i < a.length/2; i++) {
    if(a[i]==a[a.length-1-i]){
    flag = true;
    }else{
    flag = false; }
    }
    if(flag){
    System.out.println(“对称”);
    }else{
    System.out.println(“不对称”);
    }
    }
    }

    更多相关内容
  • //子函数用两for循环遍历数组 //一旦出现不相等则返回0,否则继续对比直至最后项 int judge(int n,int a[n][n]){ int i=0,j=0,k; for(i=0;i<n;i++){ for(j=0;j<n;j++){ if(a[i][j]!=a[j][i]){ ...
    #include<stdio.h>
    #include<stdlib.h>
    //子函数用两个for循环遍历数组
    //一旦出现不相等则返回0,否则继续对比直至最后一项 
    int judge(int n,int a[n][n]){
    	int i=0,j=0,k;
    	for(i=0;i<n;i++){
    		for(j=0;j<n;j++){
    			if(a[i][j]!=a[j][i]){
    				k=0;
    				break;//只要出现不相等就跳出内层循环 
    			}
    			else {
    				k=1;
    			}
    		}if(k==0){break;//跳出外层循环 
    		}
    
    	}
    	return k;
    }
    //主函数 
    int main(){
    	int s[4][4]={//非对称矩阵 
    	  {5,6,9,4},
    	  {4,8,7,9},
    	  {4,5,8,9},
    	  {5,1,2,4},
    	  };int t[4][4]={//对称矩阵 
    	  {5,6,9,4},
    	  {6,8,7,9},
    	  {9,7,8,9},
    	  {4,9,9,4},
    	  };
    	  int n=4;
    	  printf("1矩阵为:\n5 6 9 4\n4 8 7 9\n4 5 8 9\n5 1 2 4\n");
    		if(judge(n,s)){
    			printf("该矩阵是对称矩阵\n"); 
    		}
    		else if(judge(n,s)==0){
    			printf("该矩阵不是对称矩阵\n");
    		}
    		printf("2矩阵为:\n5 6 9 4\n6 8 7 9\n9 7 8 9\n4 9 9 4\n");
    		if(judge(n,t)){
    			printf("该矩阵是对称矩阵\n"); 
    		}
    		else if(judge(n,t)==0){
    			printf("该矩阵不是对称矩阵\n");
    		}
    		system("pause");
    		return 0;
    	  
    }

    详情见注释

    欢迎批评指正

    展开全文
  • 判断数组前后是否对称

    千次阅读 2018-04-06 04:00:46
    今天就来讲讲数组的前后对称判断,首先创建一个数组。 var arry=[7,1,2,3,4,5,4,3,2,1,8]; 复制代码 第一步先对数组进行分割 思路已知的数组是单数所以取到中间值吧中间值去掉之后对数组进行平均分割。 //new...

            今天就来讲讲数组的前后对称的判断,首先创建一个新数组。

       var arry=[7,1,2,3,4,5,4,3,2,1,8];
    复制代码

    第一步先对数组进行分割

            思路已知的数组是单数所以取到中间值吧中间值去掉之后对数组进行平均分割。

          //new一个新数组
            var newarry=new Array();
          //去掉数组中的逗号
            var arrys=arry.splice(",");
            //看看数组最中间的值是在数组中的第几位,一定记得向上取整
            var arrey=Math.ceil(arrys.length/2);
            //去掉数组最中间的值
            arrys.splice(arrey-1,1);
            //对数组进行平均分割
            for(var i=0;i<arrys.length;i+=arrys.length/2){
                //设定一个值接收平均分割后的数组
                var splcearry=arrys.slice(i,i+arrys.length/2);
                //将分割好的数组塞进新建的数组中
                newarry.push(splcearry);
            }
    
    复制代码

    第二步两个数组进行比对

            上面已经讲了如何分割数组,接下来就是要对两个数组进行对比和比对。

     //创建第一个对比数组
            var newarryz=new Array();
            //创建第二个对比数组
            var newarryd=new Array();
            //将循环的第一个数组塞入第一个对比数组中
            for(var a=0;a<newarry[0].length;a++){
                newarryz.push(newarry[0][a]);
            }
            //将循环的第二个数组塞入第二个对比数组中
            for(var b=0;b<newarry[1].length;b++){
                newarryd.push(newarry[1][b]);
            }
    复制代码

            比对的数组还要考虑一个问题,那就是第二个数组的顺序是反的所以要对第二个数组的顺序进行反转。

    //使用reverse()方法反转第二个数组
            newarryd.reverse();
    复制代码

    第三步判断两个数组是否对称

            最后判断数组是否对称

       //使用toString(来把一个布尔值转换成字符串)对两个数组进行对比,对比他们是否等价
            if(newarryz.toString()===newarryd.toString()){
                //等价输出对称信息
                alert("哈哈数组对称")
            }else{
                //不等价输出不对称信息
                alert("对不起数组不太对称呢")
            }
    复制代码

            最后多说一嘴,就是如果数组是双数的话这种方法就不好判断了,所以在使用这个方法之前还要考虑到单双数,这里就要使用取余的方法进行实现了,一般来讲就是%2这个方法取余就能实现上述所说的结果。最后贴一个完整代码如果大家还有问题和改进意见请在下面评论区加以指正和评论。

      //建立数组
        var arry=[7,1,2,3,4,5,4,3,2,1,8];
        //new一个新数组
        var newarry=new Array();
            //去掉数组中的逗号
            var arrys=arry.splice(",");
            //看看数组最中间的值是在数组中的第几位,一定记得向上取整
            var arrey=Math.ceil(arrys.length/2);
            //去掉数组最中间的值
            arrys.splice(arrey-1,1);
            //对数组进行平均分割
            for(var i=0;i<arrys.length;i+=arrys.length/2){
                //设定一个值接收平均分割后的数组
                var splcearry=arrys.slice(i,i+arrys.length/2);
                //将分割好的数组塞进新建的数组中
                newarry.push(splcearry);
            }
            //创建第一个对比数组
            var newarryz=new Array();
            //创建第二个对比数组
            var newarryd=new Array();
            //将循环的第一个数组塞入第一个对比数组中
            for(var a=0;a<newarry[0].length;a++){
                newarryz.push(newarry[0][a]);
            }
            //将循环的第二个数组塞入第二个对比数组中
            for(var b=0;b<newarry[1].length;b++){
                newarryd.push(newarry[1][b]);
            }
            //使用reverse()方法反转第二个数组
            newarryd.reverse();
            //使用toString(来把一个布尔值转换成字符串)对两个数组进行对比,对比他们是否等价
            if(newarryz.toString()===newarryd.toString()){
                //等价输出对称信息
                alert("哈哈数组对称")
            }else{
                //不等价输出不对称信息
                alert("对不起数组不太对称呢")
            }
    复制代码

    转载于:https://juejin.im/post/5ac6e060f265da23a22958ad

    展开全文
  • 本文实例讲述了C#判断一个矩阵是否对称矩阵及反称矩阵的方法。分享给大家供大家参考。具体如下: 1.判断对称矩阵 对任意i和j,有a[i,j]=a[j,i] /// /// 检查一个矩阵是否对称矩阵 /// /// 矩阵 /// <returns>...
  • 判断数组是否对称

    千次阅读 2018-12-12 23:55:23
    题目描述 编写程序用来检查二维数组是否对称(即:对所有i,j都有a[i][j]=a[j][i]) 输入 输入要判断的二维数组个数n, ...输出各个二维数组是否对称判断结果。 样例输入 3 2,2 1 2 2 1 3,3 1 2 3 3 2...

    题目描述
    编写程序用来检查二维数组是否对称(即:对所有i,j都有a[i][j]=a[j][i])
    输入
    输入要判断的二维数组个数n,
    然后依次输入n个二维数组。
    对于每个二维数组,先输入M,N(1<M,N<101),表示有M行N列,然后依次输入M*N个数据作为二维数组的元素值。
    输出
    输出各个二维数组是否对称的判断结果。
    样例输入
    3
    2,2
    1 2
    2 1
    3,3
    1 2 3
    3 2 1
    1 2 3
    10,10
    1 2 3 4 5 6 7 8 9 10
    2 1 2 3 4 5 6 7 8 9
    3 2 1 2 3 4 5 6 7 8
    4 3 2 1 2 3 4 5 6 7
    5 4 3 2 1 2 3 4 5 6
    6 5 4 3 2 1 2 3 4 5
    7 6 5 4 3 2 1 2 3 4
    8 7 6 5 4 3 2 1 2 3
    9 8 7 6 5 4 3 2 1 2
    10 9 8 7 6 5 4 3 2 1
    样例输出
    Yes
    No
    Yes

    #include<stdio.h>
    int main()
    {
    int k,i,j,n,m;
    scanf("%d",&k);
    while(k–)
    {
    scanf("%d,%d",&m,&n);
    int a[m][n];
    for(i=0; i<m; i++)
    {
    for(j=0; j<n; j++)
    scanf("%d",&a[i][j]);
    }
    for(i=0; i<m; i++)
    {
    for(j=0; j<n; j++)
    if(a[i][j]!=a[j][i])
    {
    printf(“No\n”);
    goto aa;
    }

        }
    

    aa:if(i==m&&j=n)
    printf(“Yes\n”);

    }
    return 0;
    

    }

    展开全文
  • //判断数组是否元素对称 public class lianxi1 { public static void main(String[] args) { int[] arr = {1,7,4,5,4,2,1}; //1.先假设是对称的 boolean flag = true; //2.利用首尾下标比较 for(int left=0,...
  • 编写一个函数test检查一个二维数组是否对称,即对所有的i和j,都有a[i][j]=a[j][i], 在主函数中定义二维数组并赋初值,调用函数test检测其是否对称,在主函数中输出检测结果 C++
  • 判断一个数组(数)是不是回文

    千次阅读 2019-11-24 23:35:43
    首先说明回文:如:"灵山大佛,佛大山灵","客上天然居,居然天上客"等等,都是美妙的符合正念倒念都一样的回文句。 回文数则是有类似22、383、5445、12321,不论是从左向右顺读,...首先,要判断是否是回文PalindromeList...
  • } if(is_duichenjuzhen (n,juzhen)) /*调用函数*/ printf("您所输入的矩阵是对称矩阵!\n"); else printf("您所输入的矩阵不是对称矩阵!\n"); } /*注:由于本及程序中有中文,所以建议在VC或Win TC下运行。*/
  • arr),判断数组中的元素值是否对称,对称返回true,不对称返回false; (2)在main方法中,定义一个数组,并调用方法。 (3)打印结果:[1,2,3,4,3,2,1]是否对称:true public class Test02 { public static void main...
  • class ArrayDc{ public static void main(String ... //判断对称 int arr[] = {1,2,2,1,1}; boolean flag = false; for(int i=0; i < arr.length/2; i++){ if(arr[i] == arr[arr.length -1-i]){ flag =...
  • 方法: #include <stdio.h> int fun(int num[][4]){ int i,j; int flag=1; for(i=0;i<4;i++){ for(j=0;j<4;j++){ if(num[i][j]==num[j][i]) continue; else{ flag=0; break; ...
  • (2)判断该数字字符串数组中的数字字符串是否对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出 (3)如:010 是对称的,3223 是对称的,123123 不是对称的 (4)最终...
  • 注意:数组一个元素用下标,来表示元素,​下标由0开始,而不是1,所以:最后一位元素下标比实际长度小一个数字单位;二、定义数据类型 [] 数组名称;三、数组的初始化动态初始化:定义数组时,指定数组长度,系统...
  • 代码分析二、判断是否对称矩阵1.对称矩阵概述及其判断2.代码3.代码分析 前言 想要了解更多矩阵的知识参考《线性代数》。 二维数组,矩阵问题,总结一下。 这里一如既往的使用随机数组,免得一直用键盘输入冗长的...
  • 在HIT第一次软件构造的实验中,第一个实验需要题目所述的方法,而在网上寻找的过程中,能够真正使用的方法并不多,于是通过寻求老师及同学帮助,结合网络资料的方法,最终构建出以下代码。 由于本人也是java初学者,...
  • (2)判断该数字字符串数组中的数字字符串是否对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出,如:010 是对称的,3223 是对称的,123123 不是对称的 ...
  • 1、编写函数,判断传入的字符数组中的元素是否对称,如果对称,返回1,否则返回0。 int isSymmetrical(char array[], int size) char arr[50]; printf(请输入一个字符串:n); gets(arr); int len=strlen(arr); int ...
  • Hey all, for a few of my college assignments I've found the need to check neighbouring cells in 2-dimensional arrays (grids). The solution I've used is a bit of a hack using exceptions, and I'm lookin...
  • function diffArray(arr1, arr2) { ... if(arr1.indexOf(arr2[i]) === -1){ //indexOf 判断数组是否存在某个值,如果存在返回数组元素的下标,否则返回-1. newArr.push(arr2[i]) } } for(let i ...
  • 判断一个 N 阶整型矩阵是否对称矩阵。要求矩阵用一维数组存储。 输入格式: N+1 行,第 1 行:数字 N(10>n>0);第 2-(N+1) 行:N 阶方阵的元素 输出格式: “Yes” 或 “No” 输入样例: 4 5 6 7 9 2 8 5 4...
  • C语言之二维数组

    2021-05-23 10:30:55
    二维数组及其指针1 ) 在了解二维数组之前,我们先来了解数组及其指针我们知道,数组中:数组名代表-->数组首元素的首地址(千万不要认为是数组的首地址(&a),绝对不是)在内存中,该代码的表现形式如下...
  • //1、用递归判断传入的字符数组中的元素是否对称,如果对称,返回1,否则返回0。 int getCmp(char str[],int start,int end); int main(){ char str[50]; int start=0; printf(“请输入字符串!\n”); gets(str); ...
  • 方法: var target1 = 'ahhaa'; console.log(panduan(target1));//false var target2 = 'ahha'; console.log(panduan(target2));//true function panduan(s) { let flag = true; for (let i = 0; i < ...
  • #include/*****判断位数*****/intis_digit(longlonga){intsum=0;while(a){sum++;a/=10;}printf("该数的位数为:%d\n",sum);return0;}/*****判断素数*****/intis_prime(longlonga){inti,n=0;for(i=2;iif(a%i==0){n++;...
  • 数组的转置和轴对称(python)

    千次阅读 2022-03-24 09:16:08
    文章目录@[TOC](文章目录)1.什么叫轴?2.什么叫转置3.转置3.1简单转置:像二位数组,只有两个轴,再怎么转置也只是两个轴... 轴的个数叫做秩,一个轴有几个元素,就代表有多长,也就是轴的数值 2.什么叫转置 转置就是
  • (2)判断该数字字符串数组中的数字字符串是否对称(第一个数字和最后一个数字相等,第二个数字和倒数第二个数字是相等的,依次类推)的,并逐个输出 (3)如:010 是对称的,3223 是对称的,123123 不是对称的 (4)最终...
  • C—判断是否对称

    2022-03-29 14:52:20
    输入一个整型数,判断是否对称数,如果是,输出yes,否则输出no,不用考虑这个整型数过大,int类型存不下,不用考虑负值; 例如 12321是对称数,输出yes,124421是对称数,输出yes,1231不是对称数,输出no Input ...
  • 5.34 判断一个字符串是否对称案例

    千次阅读 2021-03-09 07:08:29
    /**判断一个字符串是否对称字符串*例如"abc"不是对称字符串,"aba"、"abba"、"aaa"、"mnanm"是对称字符串**分析:*判断一个字符串是否对称的字符串,我只需要把*第一个和最后一个比较*第二个和倒数第二个比较*.....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,252
精华内容 14,900
关键字:

判断一个数组是不是对称数组