/*
DFA TO ACCEPT NUMBERS */
#include<stdio.h>
#include<string.h>
void main()
{
char num[20],s,p,q,r,t,x,u,v;
int l,i;
s=p;
printf("Enter the input:");
gets(num);
if((s==p)&&(((49<=num[0])&&(num[0]<=58))||(num[0]=='.')||(num[0]=='-')))
s=q;
else if((s==p)&&(num[0]==48))
s=x;
else
s=r;
l=strlen(num);
for(i=1;i<l;i++)
{
if((s==q)&&((48<=num[i])&&(num[i]<=58)))
s=q;
else if((s==q)&&(num[i]=='.'))
s=t;
else
if((s==t)&&((49<=num[i])&&(num[i]<=58)))
s=u;
else if((s==t)&&(num[i]==48))
s=v;
else
if((s==v)&&((49<=num[i])&&(num[i]<=58)))
s=u;
else if((s==v)&&(num[i]==48))
s=v;
else
if((s==u)&&((48<=num[i])&&(num[i]<=58)))
s=u;
else if((s==x)&&(num[i]=='.'))
s=t;
else
if((s==x)&&((48<=num[i])&&(num[i]<=58)))
s=r;
else
s=r;
}
if((s==q)||(s==u))
printf("Input is a Valid
number\n");
else
printf("Input is Not a valid
number\n");
}
OUTPUT
Enter the input:06
Input is Not a
valid number
Enter the
input:0.00
Input is Not a
valid number
Enter the input:0
Input is Not a
valid number
Enter the input:1.23
Input is a Valid
number
Enter the
input:1.23.2
Input is Not a
valid number
Enter the input:123
Input is a Valid
number
Enter the
input:0.02
Input is a Valid
number
Enter the
input:123.
Input is Not a
valid number






0 comments:
Post a Comment