Advertisement
d1i2p3a4k5

Challenge accepted Mr.pankaj banwari

Feb 8th, 2015
204
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.48 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<stdlib.h>
  4. #include<conio.h>
  5. #define pf printf
  6. #define sf scanf_s
  7. int begins(char s[],char t[])
  8. {
  9.     int i,z=0,count=0;
  10.     for(i=0;i<strlen(t);i++)
  11.         if(s[i]==t[i])
  12.             count++;
  13.     if(count==strlen(t))
  14.         z=1;
  15.     return z;
  16. }
  17. int beginsor(char s[],char t[],char u[])
  18. {
  19.     int z=0,i,k;
  20.     i = begins(s,t);
  21.     k = begins(s,u);
  22.     if(i==1||k==1)
  23.         z=1;
  24.     return 1;
  25. }
  26. int notbegins(char s[],char t[])
  27. {
  28.     int z=0,i;
  29.     i = begins(s,t);
  30.     if(i==0)
  31.         z=1;
  32.     return z;
  33. }
  34. int ends(char s[],char t[])
  35. {
  36.     int i,k=0,slen,z=0,count=0;
  37.     slen = strlen(s)-strlen(t);
  38.     for(i=slen;i<strlen(s);i++)
  39.     {
  40.         if(s[i]==t[k])
  41.             count++;
  42.         k++;
  43.     }
  44.     if(count==strlen(t))
  45.         z=1;
  46.     return z;
  47. }
  48. int endsor(char s[],char t[],char u[])
  49. {
  50.     int z=0,i,k;
  51.     i = ends(s,t);
  52.     k = ends(s,u);
  53.     if(i==1||k==1)
  54.         z=1;
  55.     return 1;
  56. }
  57. int notends(char s[],char t[])
  58. {
  59.     int z=0,i;
  60.     i = ends(s,t);
  61.     if(i==0)
  62.         z=1;
  63.     return z;
  64. }
  65. int contains(char s[],char t[])
  66. {
  67.     int i,j,k=0,z=0,count=0;
  68.     for(i=0;i<strlen(s);i++)
  69.     {
  70.         if(s[i]==t[k])
  71.         {
  72.             for(j=k;j<(strlen(t)-1);j++)
  73.             {
  74.                 if(s[++i]=t[j])
  75.                     count++;
  76.             }
  77.         }
  78.     }
  79.     if(count==(strlen(t)-1))
  80.         z=1;
  81.     return z;
  82. }
  83. int notcontains(char s[],char t[])
  84. {
  85.     int z=0,i;
  86.     i = contains(s,t);
  87.     if(i==0)
  88.         z=1;
  89.     return z;
  90. }
  91. int beginandend(char s[],char t[],char u[])
  92. {
  93.     int i,j,z=0;
  94.     i = begins(s,t);
  95.     j = ends(s,u);
  96.     if(i==1&&j==1)
  97.         z=1;
  98.     return z;
  99. }
  100. int doesnotbeginandend(char s[],char t[],char u[])
  101. {
  102.     int z=0,i;
  103.     i = beginandend(s,t,u);
  104.     if(i==0)
  105.         z=1;
  106.     return z;
  107. }
  108. int main()
  109. {
  110.     char s[100],t[100],u[100];
  111.     int ch,z;
  112.     pf("Enter string 1 \n");
  113.     gets_s(s);
  114.     pf("\nEntered string is given below\n");
  115.     pf("%s",s);
  116.     while(1)
  117.     {
  118.         pf("\n\n\nEnter choice \n1.Set of strings begins with ?\n2.Set of strings doesn't begins with ?");
  119.         pf("\n3.Set of strings that end with ?\n4.Set of strings that doesn't end with ?\n5.Set of strings that contains ?");
  120.         pf("\n6.Set of strings that doesn't contains ?\n7.Set of strings that starts with ? and ends with ?");
  121.         pf("\n8.Set of strings that doesn't starts with ? and ends with ?");
  122.         pf("\n9.Set of strings that begins with ? or ?");
  123.         pf("\n10.Set of strings that ends with ? or ?\n11.Exit\n");
  124.         sf("%d",&ch);
  125.         if(ch==11)
  126.             break;
  127.         z=0;
  128.         switch(ch)
  129.         {
  130.             case 1:pf("Enter string 2\n");
  131.                     scanf_s("%s",t);
  132.                     z = begins(s,t);
  133.                     break;
  134.             case 2:pf("Enter string 2\n");
  135.                     scanf_s("%s",t);
  136.                     z = notbegins(s,t);
  137.                     break;
  138.             case 3:pf("Enter string 2\n");
  139.                     scanf_s("%s",t);
  140.                     z = ends(s,t);
  141.                     break;
  142.             case 4:pf("Enter string 2\n");
  143.                     scanf_s("%s",t);
  144.                     z = notends(s,t);
  145.                     break;
  146.             case 5:pf("Enter string 2\n");
  147.                     scanf_s("%s",t);
  148.                     z = contains(s,t);
  149.                     break;
  150.             case 6:pf("Enter string 2\n");
  151.                     scanf_s("%s",t);
  152.                     z = notcontains(s,t);
  153.                     break;
  154.             case 7:pf("Enter string 2\n");
  155.                     scanf_s("%s",t);
  156.                     pf("Enter string 3\n");
  157.                     scanf_s("%s",u);
  158.                     z = beginandend(s,t,u);
  159.                     break;
  160.             case 8:pf("Enter string 2\n");
  161.                     scanf_s("%s",t);
  162.                     pf("Enter string 3\n");
  163.                     scanf_s("%s",u);
  164.                     z = doesnotbeginandend(s,t,u);
  165.                     break;
  166.             case 9:pf("Enter string 2\n");
  167.                     scanf_s("%s",t);
  168.                     pf("Enter string 3\n");
  169.                     scanf_s("%s",u);
  170.                     z = beginsor(s,t,u);
  171.                     break;
  172.             case 10:pf("Enter string 2\n");
  173.                     scanf_s("%s",t);
  174.                     pf("Enter string 3\n");
  175.                     scanf_s("%s",u);
  176.                     z = endsor(s,t,u);
  177.                     break;
  178.             default:pf("\nInvalid input");
  179.         }
  180.         if(z==1)
  181.                 pf("\nEntered string will be accepted by the Machine");
  182.         else
  183.                 pf("\nEntered string will not be accepted by the Machine");
  184.     }
  185.     _getch();
  186.     return 0;
  187. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement