首页 > 编程语言 >【C#小实例】如何判断输入的文本是否对称

【C#小实例】如何判断输入的文本是否对称

时间:2024-08-15 10:53:21浏览次数:16  
标签:string C# number System 实例 对称 using 文本

如果想要判断输入的文本是否对称,我们需要就在form里新建文本框textbox1,然后我们再一起梳理文本框对称的逻辑:

比如我们输入123454321,这个我们一看就知道他是一个对称的文本,那么我们能发现什么规律呢?

我们会发现我们的第一位和第九位,第二位和第八位,第三位和第七位…你发现没,其实他是有一个规律的~又因为我们的索引是从0开始的,刚刚我们的刚刚看到的123454321,其实就是

number[0]=number[8]

number[1]=number[7]

number[2]=number[6]

number[3]=number[5]

number[4]=number[4]

我们发现我们发现对称索引的和=文本长度length-1

所以只要number[i]=number[string.length-1-i]如果成立,那么他肯定是对称的~

觉得可能有误,我们再举一个例子:

小傻瓜拍皮球球皮拍瓜傻小

这个文本是对称的吧,我们再来一起分析下:

这个文本长度是12,那么我们最后一位“小”是索引[11]

小:string[0],string[11]

傻:string[1],string[10]

瓜:string[2],string[9]

拍:string[3],string[8]

皮:string[4],string[7]

球:string[5],string[6]

发现没,无论我们是奇数个文本还是偶数个文本长度,只要符合string[i]=string[string.length-1-i]那么他就是对称的文本框~

所以我们我们就可以写我们的小实例了,代码如下:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace daoxushuchu
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            string S = textBox1.Text;
            bool flag = true;
            for (int i = 0; i < S.Length; i++)
            {
                if (S[i] != S[S.Length-1-i]) 
                {
                    flag = false;
                    break;
                }
            }
            if (flag)
            {
                lb_duicheng.Text = "对称";
            }
            else
                lb_duicheng.Text = "不对称";

        }
        }
    }

标签:string,C#,number,System,实例,对称,using,文本
From: https://blog.csdn.net/qq_43540141/article/details/141215883

相关文章

  • 【A GUIDE TO CRC ERROR DETECTION ALGORITHM (译文)】上
    AGUIDETOCRCERRORDETECTIONALGORITHM(译文)《APAINLESSGUIDETOCRCERRORDETECTIONALGORITHM》Author:RossN.WilliamsCRC:CyclicRedundancyCheckEverythingyouwantedtoknowaboutCRCalgorithms,butwereafraidtoaskforfearthaterrorsiny......
  • 学习009-01 Create a Standalone Web API Application(创建一个独立的 Web API 应用程
    CreateaStandaloneWebAPIApplication(创建一个独立的WebAPI应用程序)Thistopiccontainsstep-by-stepinstructionsonhowtocreateanapplicationwiththeWebAPI.FormoreinformationontheWebAPI,seethefollowingtopic:BackendWebAPIService......
  • F.regexp_replace
     F.regexp_replace是PySpark中用于在DataFrame的列中执行正则表达式替换操作的函数。它可以用来匹配字符串中的某些模式,并用指定的字符串替换这些模式。使用场景清理数据中的特定字符或模式(如去除特殊字符、替换特定的子字符串)。标准化数据格式(如替换日期格式、移......
  • 增量生成器(Incremental Generator)实现自动注入
    在之前呢,为了偷懒,是使用了反射在项目启动的时候,自动注入项目需要的服务现在改为使用源生成器,自动生成服务注入的代码nuget地址dotnetaddpackageAutoInjectGenerator--version0.0.3一个提供了3个Attribute用于自动注入的配置AutoInjectAttributeAutoInjectContextAttr......
  • docker修改镜像地址后不生效
    前面已经完成镜像源的更换编辑Docker配置文件/etc/docker/daemon.json{"registry-mirrors":["https://docker.fxxk.dedyn.io/"]}重启dockersystemctldaemon-reloadsystemctlrestartdocker解决方法下面是解决docker镜像源不起作用的问题的具体步骤:步骤......
  • [nRF24L01+] 4. 增强型ShockBurst
    4.增强型ShockBurst增强型的ShockBurst是一个数据链路层,具有自动数据包组装和数据包的发送、定时、自动确认和重传。这些特性能够显著提高双向和单向系统的能效,而不会增加主机控制器侧的复杂性。增强型ShockBurst™数据包事务是一种数据包交换,其中一个收发器充当主收发器(PRX,P......
  • 阿里大佬写的 Controller 太优雅了!
    优雅的controller@RestController@RequestMapping("/user/test")public class UserController1 {    private static Logger logger = LoggerFactory.getLogger(UserController1.class);    @Autowired    private UserService userService;    @Autow......
  • [THUPC 2024 决赛] 采矿
    思路很自然的一道交互,赛场上都没来得及细做QwQ。首先询问树形态的交互题有一个非常通用的思路:剥叶子。应用在这个题上来后你马上就会发现这是好的,因为在本题中叶子有一个关键性质:只有一条邻边操控,如果这条邻边往外指那么这个点的答案一定是\(1\)。你会发现一个点答案是\(1\)......
  • PCIe扫盲:Memory & IO 地址空间/基地址寄存器详解/Base & Limit寄存器详解
    转载:PCIe扫盲:Memory&IO地址空间/基地址寄存器详解/Base&Limit寄存器详解-极术社区-连接开发者与智能计算生态(aijishu.com)Memory&IO地址空间早期的PC中,所有的IO设备(除了存储设备之外的设备)的内部存储或者寄存器都只能通过IO地址空间进行访问。但是这种方式局限性......
  • C语言结构体内存对齐
    结构体或许小伙伴们都知道,或许也能够做到熟悉的去运用结构体,但你们有没有想过:整型数组存放的数据都是整型,字符数组存放的数据都是字符,它们类型相同,所以也都能够做到在内存中紧密的存储,而结构体中存放的数据各种各样,它们的存储是否能做到在内存中紧密排列呢?又或者说,结构体的内存......