C programs for symbol balancing

#include<stdio.h>
#include<conio.h>
#include<string.h>
int push(char stack[],int tos,char);

void main()
{
 char stack[30],arr[30],ans[30];
 int j=0,i,k,tos=-1,len,c=0,flag=0;
 printf("\n enter string :: ");
 scanf("%s",arr);
 len=strlen(arr);
    for(i=0;i<len;i++)
 {
  if('('==arr[i] || '{'==arr[i] || '['==arr[i])
  {
   tos=push(stack,tos,arr[i]);
   c++;
  }
  else if(')'==arr[i] && stack[tos]=='(')  
  {
   flag=0;
   tos--;
  }
  else if('}'==arr[i] && stack[tos]=='{') 
  {
   flag=0;
   tos--;
  }
  else if(']'==arr[i] && stack[tos]=='[')
  {
   flag=0;
   tos--;
  }
  else
  {
   flag=1;
   break;

  }
  
 }
 
 if(flag==0 && tos==-1)
 {
        printf("\n valid");
 }
 else
 {
  printf("\ninvalid");
 }
 
 getch();
}
int push(char stack[],int tos,char arr)
{
 tos++;
 stack[tos]=arr;
 return tos;
 
}


    

***********************************************************************************************************************
------------------------------------------------------------------------

         output

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


 enter string :: ({}[])

 valid

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


 enter string :: ([]{}){

invalid
*********************************************************************************************************************************
SHARE

Milan Tomic

Hi. I’m Designer of Blog Magic. I’m CEO/Founder of ThemeXpose. I’m Creative Art Director, Web Designer, UI/UX Designer, Interaction Designer, Industrial Designer, Web Developer, Business Enthusiast, StartUp Enthusiast, Speaker, Writer and Photographer. Inspired to make things looks better.

  • Image
  • Image
  • Image
  • Image
  • Image
    Blogger Comment
    Facebook Comment

0 comments:

Post a Comment