• 大小: 6KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-12-19
  • 语言: 其他
  • 标签: 浮点数  DFA  

资源简介

编写程序利用DFA的原理实现高级语言中浮点数的识别算法

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Diagnostics;

namespace 浮点数的DFA
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        /******************状态函数******************/
        private int zt0(char c)
        {
            if (c == ‘+‘ || c == ‘-‘)
            {
                listBox_xs.Items.Add(“状态0→1 (条件‘+/-‘)“);
                return 1;
            }
            else if (c == ‘.‘)
            {
                listBox_xs.Items.Add(“状态0→3 (条件‘.‘)“);
                return 3;
            }
            else if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态0→2 (条件数字‘“+c+“‘)“);
                return 2;
            }
              else  return 9; //9-错误状态

        }
        private int zt1(char c)
        {
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态1→2 (条件数字‘“ + c + “‘)“);
                return 2;
            }
              else  return 9;
        }
        private int zt2(char c)
        {
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态2→2 (条件数字‘“ + c + “‘)“);
                return 2;
            }
            if (c == ‘.‘)
            {
                listBox_xs.Items.Add(“状态2→3 (条件‘.‘)“);
                return 3;
            }
            if (c == ‘e‘ || c == ‘E‘)
            {
                listBox_xs.Items.Add(“状态2→5 (条件‘e/E‘)“);
                return 5;
            }
              else  return 9;
 
        }
        private int zt3(char c)
        {
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态3→4 (条件数字‘“ + c + “‘)“);
                return 4;
            }
             else  return 9;
        }
        private int zt4(char c)
        {
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态4→4 (条件数字‘“ + c + “‘)“);
                return 4;
            }
            if (c == ‘e‘ || c == ‘E‘)
            {
                listBox_xs.Items.Add(“状态4→5 (条件‘e/E‘)“);
                return 5;
            }
            else  return 9;
        }
        private int zt5(char c)
        {
            if (c == ‘+‘ || c == ‘-‘)
            {
                listBox_xs.Items.Add(“状态5→6 (条件‘+/-‘)“);
                return 6;
            }
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态5→7 (条件数字‘“ + c + “‘)“);
                return 7;
            }
            else return 9;
        }
        private int zt6(char c)
        {
            if (c >= ‘0‘ && c <= ‘9‘)
            {
                listBox_xs.Items.Add(“状态6→7 (条件数字‘“ + c + “‘)“);
                return 7;
        

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       5273  2008-10-27 10:13  Form1.cs

     文件      24576  2008-10-27 10:13  浮点数的DFA.exe

----------- ---------  ---------- -----  ----

                29849                    2


评论

共有 条评论