SlideShare a Scribd company logo
COMPLIER FILE



   Submitted by: Pinak Mukherjee (038/CS/GTBIT/04)




Department of Computer Science and Engineering

   Guru Tegh Bahadur Institute of Technology
/*Generation of code in c++ to add two numbers by coding in c*/
void main()
{char a[40],b[40],c[40],d[40];
 clrscr();
 do
 {printf("Enter class name=>");
  scanf("%s",a);
 }while(strlen(a)>=40);
 do
 {printf("Enter name of first variable=>");
  scanf("%s",b);
 }while((!strcmp(a,b))||(strlen(b)>=40));
 do
 {printf("Enter name of second variable=>");
  scanf("%s",c);
 }while((!strcmp(a,c))||(!strcmp(c,b))||(strlen(c)>=40));
 do
 {printf("Enter name of class variable=>");
  scanf("%s",d);
}while((!strcmp(a,d))||(!strcmp(d,c))||(!strcmp(d,b))||(strlen(d)>=40));
 clrscr();
 printf("class %s",a);
 printf("n{n private:n");
 printf(" int %s;n",b);
 printf(" int %s;n",c);
 printf(" public:n");
 printf(" void getinput()n {");
 printf("n cout<<"Enter first number:";");
 printf("n cin>>%s;",b);
 printf("n cout<<"Enter second number:";");
 printf("n cin>>%s;",c);
 printf("n }");
 printf("n void addnos()n {");
 printf("n cout<<"The Sum is:"<<%s+%s;",b,c);
 printf("n }");
 printf("n };");
 printf("nvoid main()n {");
 printf("n %s %s;",a,d);
 printf("n %s.getinput();",d);
 printf("n %s.addnos();",d);
printf("n }");
 getch();
}
OUTPUT
Enter class name=>student
Enter name of first variable=>a
Enter name of second variable=>b
Enter name of class variable=>student1
class student
{
 private:
  int a;
  int b;
 public:
  void getinput()
   {
   cout<<"Enter first number:";
   cin>>a;
   cout<<"Enter second number:";
   cin>>b;
   }
  void addnos()
   {
   cout<<"The Sum is:"<<a+b;
   }
 };
void main()
 {
 student student1;
 student1.getinput();
 student1.addnos();
 }
/*Generation of code in java through code in c*/
void main()
{char a[40],b[40],c[40],d[40];
 clrscr();
 do
 {printf("Enter class name=>");
  scanf("%s",a);
 }while(strlen(a)>=40);
 do
 {printf("Enter name of first variable=>");
  scanf("%s",b);
 }while((!strcmp(a,b))||(strlen(b)>=40));
 do
 {printf("Enter name of second variable=>");
  scanf("%s",c);
 }while((!strcmp(a,c))||(!strcmp(c,b))||(strlen(c)>=40));
 do
 {printf("Enter name of class variable=>");
  scanf("%s",d);
 }while((!strcmp(a,d))||(!strcmp(d,c))||(!strcmp(d,b))||(strlen(d)>=40));
 clrscr();
printf("public class %s",a);
 printf("private int %s;n",b);
 printf("private int %s;n",c);
 printf("public static void main(){n");
 printf("n System.out.println("Enter first number:");");
 printf("n cin>>%s;",b);
 printf("n System.out.println("Enter second number:");");
 printf("n cin>>%s;",c);
 printf("n System.out.println("The Sum is:",%s+%s);",b,c);
 printf("n }");
 printf("n}");
 getch();
}

OUTPUT
Enter class name=>STUDENT
Enter name of first variable=>A
Enter name of second variable=>B
Enter name of class variable=>STUDENT1
public class STUDENTprivate int A;
private int B;
public static void main(){
   System.out.println("Enter first number:");
   cin>>A;
   System.out.println("Enter second number:");
   cin>>B;
   System.out.println("The Sum is:",A+B);
 }
}
/* Program on lexical analysis */

#include"stdio.h"
#include"conio.h"
#include"string.h"
#include"ctype.h"
#define MAX 30

void main()
{
  char str[MAX];
  int state=0;
  int i=0, j, startid=0, endid, startcon, endcon;

 clrscr();

 for(j=0; j<MAX; j++)
   str[j]=NULL;     //Initialise NULL

 printf("*** Program on Lexical Analysis ***");
 printf("Enter the string: ");
 gets(str);           //Accept input string
 str[strlen(str)]=' ';

 printf("Analysis:");

 while(str[i]!=NULL)
 {
   while(str[i]==' ') //To eliminate spaces
        i++;
   switch(state)
   {
        case 0: if(str[i]=='i') state=1;    //if
                 else if(str[i]=='w') state=3; //while
else if(str[i]=='d') state=8; //do
         else if(str[i]=='e') state=10; //else
         else if(str[i]=='f') state=14; //for
         else if(isalpha(str[i]) || str[i]=='_')
         {
                  state=17;
                  startid=i;
         } //identifiers

         else if(str[i]=='<') state=19;
         //relational '<' or '<='

         else if(str[i]=='>') state=21;
         //relational '>' or '>='

         else if(str[i]=='=') state=23;
         //relational '==' or assignment '='

         else if(isdigit(str[i]))
         {
                  state=25; startcon=i;
         }
         //constant

         else if(str[i]=='(') state=26;
         //special characters '('

         else if(str[i]==')') state=27;
         //special characters ')'

         else if(str[i]==';') state=28;
         //special characters ';'

         else if(str[i]=='+') state=29;
         //operator '+'

         else if(str[i]=='-') state=30;
         //operator '-'

         break;

//States for 'if'
case 1: if(str[i]=='f') state=2;
         else { state=17; startid=i-1; i--; }
         break;
case 2: if(str[i]=='(' || str[i]==NULL)
         {
           printf("if       : Keywordn");
state=0;
           i--;
         }
         else { state=17; startid=i-2; i--; }
         break;

//States for 'while'
case 3: if(str[i]=='h') state=4;
         else { state=17; startid=i-1; i--; }
         break;
case 4: if(str[i]=='i') state=5;
         else { state=17; startid=i-2; i--; }
         break;
case 5: if(str[i]=='l') state=6;
         else { state=17; startid=i-3; i--; }
         break;
case 6: if(str[i]=='e') state=7;
         else { state=17; startid=i-4; i--; }
         break;
case 7: if(str[i]=='(' || str[i]==NULL)
         {
           printf("while : Keyword n");
           state=0;
           i--;
         }
         else { state=17; startid=i-5; i--; }
         break;

//States for 'do'
case 8: if(str[i]=='o') state=9;
         else { state=17; startid=i-1; i--; }
         break;
case 9: if(str[i]=='{' || str[i]==' ' || str[i]==NULL || str[i]=='(')
         {
           printf("do       : Keyword n");
           state=0;
           i--;
         }
         break;

//States for 'else'
case 10: if(str[i]=='l') state=11;
         else { state=17; startid=i-1; i--; }
         break;
case 11: if(str[i]=='s') state=12;
         else { state=17; startid=i-2; i--; }
         break;
case 12: if(str[i]=='e') state=13;
else { state=17; startid=i-3; i--; }
                   break;
          case 13: if(str[i]=='{' || str[i]==NULL)
                   {
                     printf("else : Keyword n");
                     state=0;
                     i--;
                   }
                   else { state=17; startid=i-4; i--; }
                   break;

          //States for 'for'
          case 14: if(str[i]=='o') state=15;
                   else { state=17; startid=i-1; i--; }
                   break;
          case 15: if(str[i]=='r') state=16;
                   else { state=17; startid=i-2; i--; }
                   break;
          case 16: if(str[i]=='(' || str[i]==NULL)
                   {
                     printf("for : Keyword n");
                     state=0;
                     i--;
                   }
                   else { state=17; startid=i-3; i--; }
                   break;

          //States for identifiers
          case 17:

          if(isalnum(str[i]) || str[i]=='_')
          {
                   state=18; i++;
          }
else if(str[i]==NULL||str[i]=='<'||str[i]=='>'||str[i]=='('||str[i]==')'||str[i]==';'||str[i]=='='||str[i]=='+'||
str[i]=='-') state=18;
                    i--;
                    break;

          case 18:

if(str[i]==NULL || str[i]=='<' || str[i]=='>' || str[i]=='(' || str[i]==')' || str[i]==';' || str[i]=='=' || str[i]=='+'
||str[i]=='-')
                  {
                    endid=i-1;
                    printf(" ");
                    for(j=startid; j<=endid; j++)
                          printf("%c", str[j]);
printf("      : Identifier n");
           state=0;
           i--;
         }
         break;

//States for relational operator '<' & '<='
case 19: if(str[i]=='=') state=20;
         else if(isalnum(str[i]) || str[i]=='_')
         {
           printf("<       : Relational operator n");
           i--;
           state=0;
         }
         break;
case 20: if(isalnum(str[i]) || str[i]=='_')
         {
           printf("<= : Relational operator n");
           i--;
           state=0;
         }
         break;

//States for relational operator '>' & '>='
case 21: if(str[i]=='=') state=22;
         else if(isalnum(str[i]) || str[i]=='_')
         {
           printf(">       : Relational operator n");
           i--;
           state=0;
         }
         break;
case 22: if(isalnum(str[i]) || str[i]=='_')
         {
           printf(">= : Relational operator n");
           i--;
           state=0;
         }
         break;

//States for relational operator '==' & assignment operator '='
case 23: if(str[i]=='=') state=24;
         else
         {
           printf("=       : Assignment operator n");
           i--;
           state=0;
         }
break;
          case 24: if(isalnum(str[i]))
                   {
                     printf("== : Relational operator n");
                     state=0;
                     i--;
                   }
                   break;

          //States for constants
          case 25: if(isalpha(str[i]))
                     {
                       printf(" *** ERROR *** n ");
                       puts(str);
                       for(j=0; j<i; j++)
                             printf(" ");
                       printf("^");
                       printf("Error at position %d Alphabet cannot follow digit n", i);
                       state=99;
                     }
else if(str[i]=='(' || str[i]==')' || str[i]=='<' || str[i]=='>' || str[i]==NULL || str[i]==';' || str[i]=='=')
                     {
                       endcon=i-1;
                       printf(" ");
                       for(j=startcon; j<=endcon; j++)
                             printf("%c", str[j]);
                       printf("        : Constant n");
                       state=0;
                       i--;
                     }
                     break;

          //State for special character '('
          case 26: printf(" (      : Special character n");
                   startid=i;
                   state=0;
                   i--;
                   break;

          //State for special character ')'
          case 27: printf(" )      : Special character n");
                   state=0;
                   i--;
                   break;

          //State for special character ';'
          case 28: printf(" ;      : Special character n");
                   state=0;
i--;
                      break;

             //State for operator '+'
             case 29: printf(" +      : Operator n");
                      state=0;
                      i--;
                      break;

             //State for operator '-'
             case 30: printf("+       : Operator n");
                      state=0;
                      i--;
                      break;

             //Error State
             case 99: goto END;
      }
      i++;
    }
    printf("n End of program");
    END:
    getch();
}

/*           Output

Correct input
-------------

*** Program on Lexical Analysis ***


Enter the string: for(x1=0; x1<=10; x1++);


Analysis:

for      : Keyword
(      : Special character
x1       : Identifier
=       : Assignment operator
0       : Constant
;      : Special character
x1       : Identifier
<=       : Relational operator
10       : Constant
;      : Special character
x1 : Identifier
+   : Operator
+   : Operator
)  : Special character
;  : Special character

End of program



Wrong input
-----------

*** Program on Lexical Analysis ***


Enter the string: for(x1=0; x1<=19x; x++);


Analysis:

for     : Keyword
(     : Special character
x1      : Identifier
=      : Assignment operator
0      : Constant
;     : Special character
x1      : Identifier
<=      : Relational operator

Token cannot be generated
*/

OUTPUT
*** Program on Lexical Analysis ***Enter the string: if (a>b) a=25;
Analysis:if : Keyword
 ( : Special character
a : Identifier
>    : Relational operator
b : Identifier
 ) : Special character
a : Identifier
=    : Assignment operator
25 : Constant
 ; : Special character

End of program
/*Count number of characters, words, lines in a file */

#include<fstream.h>
#include<conio.h>
#include<string.h>
#include<ctype.h>
void main()
{ clrscr();
char ch,fname[50];
int count=0,ascii,line=0,words=0,previous=10;
cout<<"Enter the complete path of the file:"<<"n";
cin.get(fname,50);
 fstream fio;
 fio.open(fname,ios::in) ;
 fio.seekg(0);
while(fio)
{ fio.get(ch);
 if(ch !=10 && ch !=-1)
{
 count++;
if(ch==32 && previous !=32)
{words++;
}
previous=ch;
}
else
{if(ch==10)
 line++;
if (previous !=10 && previous != 32)
 words++;
previous=ch;
}
ascii=ch;
cout<<ch<<":"<< ascii<<"n";
}

fio.close();
cout<<"number of characters:"<<count<<"n";
cout<<"number of lines:"<<line<<"n";
cout<<"number of words:"<<words<<"n";
getch();
}
OUTPUT
Enter the complete path of the file:
c:Documents and SettingsUser1Desktoptext.txt
number of characters:98
number of lines:4
number of words:26


*/ First and follow */

#include<iostream.h>
#include<conio.h>
struct prod
{ char left, right[10][10];
  int no_prod;
};
struct firstnfollow
{ char ch[100];
  int n_f;
};
void main()
{ clrscr();
  prod p[]={{'E',{"TR"},1},
       {'R',{"+TR","~"},2},
       {'T',{"FD"},1},
        {'D',{"*FD","~"},2},
        {'F',{"(E)","i"},2}};

 firstnfollow f1[10];
 firstnfollow f2[]={{"$",1},{"",0},{"",0},{"",0},{"",0}};
int n=5; // int n=5;
 char temp;
 for(int i=0;i<n;i++)
  { for(int j=0;j<p[i].no_prod;j++)
    { f1[i].ch[j]=p[i].right[j][0];
      f1[i].n_f=p[i].no_prod;
    }
  }
 for(i=0;i<n;i++)
  { while(f1[i].ch[0]>=65&&f1[i].ch[0]<=90)
    { temp=f1[i].ch[0];
      for(int j=1;j<f1[i].n_f;j++)
       f1[i].ch[j-1]=f1[i].ch[j];
      f1[i].n_f--;

     for(int k=0;k<n;k++)
if(temp==p[k].left)
       { for(j=0;j<f1[k].n_f;j++)
          f1[i].ch[f1[i].n_f+j]=f1[k].ch[j];
         f1[i].n_f+=f1[k].n_f;
         break;
       }
  }
 }
int k,flag;
for(i=0;i<n;i++)
 { for(int j=0;j<p[i].no_prod;j++)
   { k=0;
     while(p[i].right[j][k]!='0')
     { if(p[i].right[j][k]>=65&&p[i].right[j][k]<=90&&p[i].right[j][k+1]!='0')
        { for(int x=0;x<n;x++)
           if(p[i].right[j][k]==p[x].left)
            break;
          for(int y=0;y<n;y++)
           if(p[i].right[j][k+1]==p[y].left)
            break;
          if(y<5)
           { for(int s=0;s<f1[y].n_f;s++)
              if(f1[y].ch[s]!='~')
               f2[x].ch[f2[x].n_f++]=f1[y].ch[s];
           }
          else
           f2[x].ch[f2[x].n_f++]=p[i].right[j][k+1];
        }
       k++;
     }
   }
 }
for(i=0;i<n;i++)
 { for(int j=0;j<p[i].no_prod;j++)
   { k=0;
     while(p[i].right[j][k]!='0')
     { if(p[i].right[j][k]>=65&&p[i].right[j][k]<=90)
        { if(p[i].right[j][k+1]=='0')
           { for(int a=0;a<n;a++)
              if(p[i].right[j][k]==p[a].left)
               break;
             if(a!=i)
              for(int b=0;b<f2[i].n_f;b++)
               f2[a].ch[f2[a].n_f++]=f2[i].ch[b];
           }
          else
           { if(p[i].right[j][k+1]>=65&&p[i].right[j][k+1]<=90)
              { flag=0;
for(int x=0;x<n;x++)
                   if(p[i].right[j][k+1]==p[x].left)
                    break;
                  for(int s=0;s<f1[x].n_f;s++)
                   if(f1[x].ch[s]=='~')
                    { flag=1;
                      break;
                    }
                  if(flag==1)
                   { for(int a=0;a<n;a++)
                      if(p[i].right[j][k]==p[a].left)
                       break;
                     for(int b=0;b<f2[i].n_f;b++)
                      f2[a].ch[f2[a].n_f++]=f2[i].ch[b];
                   }
              }
         }
        }
       k++;
      }
  }
 }
int q,j,s;
for(i=0;i<n;i++)
 { q=0;
   j=0;
   while(f2[i].ch[j]!='0')
    { k=j+1;
      while(f2[i].ch[k]!='0')
       { if(f2[i].ch[j]==f2[i].ch[k])
         { s=k;
           while(f2[i].ch[s]!='0')
           { f2[i].ch[s]=f2[i].ch[s+1];
             s++;q++;
           }
         }
         else
          k++;
       }
      j++;
    }
   f2[i].n_f-=q;
 }
cout<<"The Firsts are: ";
for(i=0;i<n;i++)
 { cout<<"n"<<p[i].left<<" ---- ";
   for(int j=0;j<f1[i].n_f;j++)
    cout<<f1[i].ch[j]<<" ";
}
    cout<<"nThe Follows are: ";
    for(i=0;i<n;i++)
     { cout<<"n"<<p[i].left<<" ---- ";
       j=0;
       while(f2[i].ch[j]!='0')
        { cout<<f2[i].ch[j]<<" ";
          j++;
        }
     }
    getch();
}




OUTPUT
The Firsts are:
E ---- ( i
R ---- + ~
T ---- ( i
D ---- * ~
F ---- ( i
The Follows are:
E ---- $ )
R ---- $ )
T ---- + $ )
D ---- + $ )
F ---- * + $ )

More Related Content

PPTX
3. chapter ii
PPTX
4. chapter iii
PPTX
[3] 프로세싱과 아두이노
PPTX
PPT
C questions
PDF
Implementing string
PPTX
JavaScript Gotchas
PDF
3. chapter ii
4. chapter iii
[3] 프로세싱과 아두이노
C questions
Implementing string
JavaScript Gotchas

What's hot (20)

PPTX
Session05 iteration structure
DOCX
DataStructures notes
PDF
Pointer level 2
PDF
[KOSSA] C++ Programming - 17th Study - STL #3
PDF
Static and const members
PDF
Python 炒股指南
PDF
Let us c(by yashwant kanetkar) chapter 2 solution
DOC
Let us c (5th and 12th edition by YASHVANT KANETKAR) chapter 2 solution
PPTX
C Programming Language Step by Step Part 5
DOC
Numerical Methods in C
DOCX
simple-movie-ticket-booking-system-1
PDF
Let us c(by Yashwant Kanetkar) 5th edition solution chapter 1
PDF
Stl algorithm-Basic types
PDF
Aplikasi menghitung matematika dengan c++
PDF
LET US C (5th EDITION) CHAPTER 2 ANSWERS
DOCX
Computer Science Practical Science C++ with SQL commands
DOCX
Chapter 8 c solution
DOC
Basic c programs updated on 31.8.2020
PDF
Let us c chapter 4 solution
DOCX
Let us c (by yashvant kanetkar) chapter 1 solution
Session05 iteration structure
DataStructures notes
Pointer level 2
[KOSSA] C++ Programming - 17th Study - STL #3
Static and const members
Python 炒股指南
Let us c(by yashwant kanetkar) chapter 2 solution
Let us c (5th and 12th edition by YASHVANT KANETKAR) chapter 2 solution
C Programming Language Step by Step Part 5
Numerical Methods in C
simple-movie-ticket-booking-system-1
Let us c(by Yashwant Kanetkar) 5th edition solution chapter 1
Stl algorithm-Basic types
Aplikasi menghitung matematika dengan c++
LET US C (5th EDITION) CHAPTER 2 ANSWERS
Computer Science Practical Science C++ with SQL commands
Chapter 8 c solution
Basic c programs updated on 31.8.2020
Let us c chapter 4 solution
Let us c (by yashvant kanetkar) chapter 1 solution
Ad

Viewers also liked (8)

PDF
Drupal Association Supporter Update Q1 2017
DOC
Synopsis Seminar Brain Finger Printing
PPTX
Brain fingerprinting padmaja
PPT
BRAIN FINGERPRINTING
PPTX
Brain fingerprinting
PPTX
Brain Fingerprinting PPT
PPTX
Brain fingerprinting
PDF
Designing Teams for Emerging Challenges
Drupal Association Supporter Update Q1 2017
Synopsis Seminar Brain Finger Printing
Brain fingerprinting padmaja
BRAIN FINGERPRINTING
Brain fingerprinting
Brain Fingerprinting PPT
Brain fingerprinting
Designing Teams for Emerging Challenges
Ad

Similar to Complier File (20)

PDF
data structure and algorithm.pdf
DOC
C tech questions
DOCX
compiler_yogesh lab manual graphic era hill university.docx
PDF
C language concept with code apna college.pdf
PPTX
Polynomial addition
PDF
Compiler design lab programs
DOCX
Cd practical file (1) start se
DOCX
Stack prgs
TXT
System programs in C language.
PPTX
บทที่ 2 การเขียนคำสั่งขั้นพื้นฐาน
DOCX
#includestdio.h #includestring.h #includestdlib.h.docx
DOC
C basics
PPTX
ภาษาซี
DOC
Lab 6
PDF
Cartão de Referencia Padronizado Liguagem C
PDF
C ref card
PDF
C reference card
PDF
The best every notes on c language is here check it out
DOC
Macroprocessor
data structure and algorithm.pdf
C tech questions
compiler_yogesh lab manual graphic era hill university.docx
C language concept with code apna college.pdf
Polynomial addition
Compiler design lab programs
Cd practical file (1) start se
Stack prgs
System programs in C language.
บทที่ 2 การเขียนคำสั่งขั้นพื้นฐาน
#includestdio.h #includestring.h #includestdlib.h.docx
C basics
ภาษาซี
Lab 6
Cartão de Referencia Padronizado Liguagem C
C ref card
C reference card
The best every notes on c language is here check it out
Macroprocessor

More from Garima Singh (12)

PPT
Animations
PPT
Animations
ODP
SlideShare Team
DOC
Acn Experiment No 5
DOC
Acn Experiment No 2
DOC
Acn Experiment No 4
DOC
Acn Experiment No 3
DOC
Acn Experiment No 6
PPT
Brain Finger Printing
DOC
Brain Finger Printing
PDF
Modified Rabin Karp
PPT
Data Mining
Animations
Animations
SlideShare Team
Acn Experiment No 5
Acn Experiment No 2
Acn Experiment No 4
Acn Experiment No 3
Acn Experiment No 6
Brain Finger Printing
Brain Finger Printing
Modified Rabin Karp
Data Mining

Recently uploaded (20)

PDF
Classroom Observation Tools for Teachers
PDF
STATICS OF THE RIGID BODIES Hibbelers.pdf
PPTX
human mycosis Human fungal infections are called human mycosis..pptx
PDF
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
PPTX
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
PDF
01-Introduction-to-Information-Management.pdf
PPTX
Final Presentation General Medicine 03-08-2024.pptx
PPTX
Lesson notes of climatology university.
PDF
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
PPTX
202450812 BayCHI UCSC-SV 20250812 v17.pptx
PPTX
Microbial diseases, their pathogenesis and prophylaxis
PDF
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
PDF
Complications of Minimal Access Surgery at WLH
PDF
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
PDF
2.FourierTransform-ShortQuestionswithAnswers.pdf
PDF
Supply Chain Operations Speaking Notes -ICLT Program
PPTX
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
PDF
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
PPTX
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
PDF
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS
Classroom Observation Tools for Teachers
STATICS OF THE RIGID BODIES Hibbelers.pdf
human mycosis Human fungal infections are called human mycosis..pptx
Black Hat USA 2025 - Micro ICS Summit - ICS/OT Threat Landscape
Tissue processing ( HISTOPATHOLOGICAL TECHNIQUE
01-Introduction-to-Information-Management.pdf
Final Presentation General Medicine 03-08-2024.pptx
Lesson notes of climatology university.
GENETICS IN BIOLOGY IN SECONDARY LEVEL FORM 3
202450812 BayCHI UCSC-SV 20250812 v17.pptx
Microbial diseases, their pathogenesis and prophylaxis
ANTIBIOTICS.pptx.pdf………………… xxxxxxxxxxxxx
Complications of Minimal Access Surgery at WLH
grade 11-chemistry_fetena_net_5883.pdf teacher guide for all student
2.FourierTransform-ShortQuestionswithAnswers.pdf
Supply Chain Operations Speaking Notes -ICLT Program
1st Inaugural Professorial Lecture held on 19th February 2020 (Governance and...
OBE - B.A.(HON'S) IN INTERIOR ARCHITECTURE -Ar.MOHIUDDIN.pdf
IMMUNITY IMMUNITY refers to protection against infection, and the immune syst...
A GUIDE TO GENETICS FOR UNDERGRADUATE MEDICAL STUDENTS

Complier File

  • 1. COMPLIER FILE Submitted by: Pinak Mukherjee (038/CS/GTBIT/04) Department of Computer Science and Engineering Guru Tegh Bahadur Institute of Technology
  • 2. /*Generation of code in c++ to add two numbers by coding in c*/ void main() {char a[40],b[40],c[40],d[40]; clrscr(); do {printf("Enter class name=>"); scanf("%s",a); }while(strlen(a)>=40); do {printf("Enter name of first variable=>"); scanf("%s",b); }while((!strcmp(a,b))||(strlen(b)>=40)); do {printf("Enter name of second variable=>"); scanf("%s",c); }while((!strcmp(a,c))||(!strcmp(c,b))||(strlen(c)>=40)); do {printf("Enter name of class variable=>"); scanf("%s",d); }while((!strcmp(a,d))||(!strcmp(d,c))||(!strcmp(d,b))||(strlen(d)>=40)); clrscr(); printf("class %s",a); printf("n{n private:n"); printf(" int %s;n",b); printf(" int %s;n",c); printf(" public:n"); printf(" void getinput()n {"); printf("n cout<<"Enter first number:";"); printf("n cin>>%s;",b); printf("n cout<<"Enter second number:";"); printf("n cin>>%s;",c); printf("n }"); printf("n void addnos()n {"); printf("n cout<<"The Sum is:"<<%s+%s;",b,c); printf("n }"); printf("n };"); printf("nvoid main()n {"); printf("n %s %s;",a,d); printf("n %s.getinput();",d); printf("n %s.addnos();",d); printf("n }"); getch(); }
  • 3. OUTPUT Enter class name=>student Enter name of first variable=>a Enter name of second variable=>b Enter name of class variable=>student1 class student { private: int a; int b; public: void getinput() { cout<<"Enter first number:"; cin>>a; cout<<"Enter second number:"; cin>>b; } void addnos() { cout<<"The Sum is:"<<a+b; } }; void main() { student student1; student1.getinput(); student1.addnos(); }
  • 4. /*Generation of code in java through code in c*/ void main() {char a[40],b[40],c[40],d[40]; clrscr(); do {printf("Enter class name=>"); scanf("%s",a); }while(strlen(a)>=40); do {printf("Enter name of first variable=>"); scanf("%s",b); }while((!strcmp(a,b))||(strlen(b)>=40)); do {printf("Enter name of second variable=>"); scanf("%s",c); }while((!strcmp(a,c))||(!strcmp(c,b))||(strlen(c)>=40)); do {printf("Enter name of class variable=>"); scanf("%s",d); }while((!strcmp(a,d))||(!strcmp(d,c))||(!strcmp(d,b))||(strlen(d)>=40)); clrscr(); printf("public class %s",a); printf("private int %s;n",b); printf("private int %s;n",c); printf("public static void main(){n"); printf("n System.out.println("Enter first number:");"); printf("n cin>>%s;",b); printf("n System.out.println("Enter second number:");"); printf("n cin>>%s;",c); printf("n System.out.println("The Sum is:",%s+%s);",b,c); printf("n }"); printf("n}"); getch(); } OUTPUT
  • 5. Enter class name=>STUDENT Enter name of first variable=>A Enter name of second variable=>B Enter name of class variable=>STUDENT1 public class STUDENTprivate int A; private int B; public static void main(){ System.out.println("Enter first number:"); cin>>A; System.out.println("Enter second number:"); cin>>B; System.out.println("The Sum is:",A+B); } } /* Program on lexical analysis */ #include"stdio.h" #include"conio.h" #include"string.h" #include"ctype.h" #define MAX 30 void main() { char str[MAX]; int state=0; int i=0, j, startid=0, endid, startcon, endcon; clrscr(); for(j=0; j<MAX; j++) str[j]=NULL; //Initialise NULL printf("*** Program on Lexical Analysis ***"); printf("Enter the string: "); gets(str); //Accept input string str[strlen(str)]=' '; printf("Analysis:"); while(str[i]!=NULL) { while(str[i]==' ') //To eliminate spaces i++; switch(state) { case 0: if(str[i]=='i') state=1; //if else if(str[i]=='w') state=3; //while
  • 6. else if(str[i]=='d') state=8; //do else if(str[i]=='e') state=10; //else else if(str[i]=='f') state=14; //for else if(isalpha(str[i]) || str[i]=='_') { state=17; startid=i; } //identifiers else if(str[i]=='<') state=19; //relational '<' or '<=' else if(str[i]=='>') state=21; //relational '>' or '>=' else if(str[i]=='=') state=23; //relational '==' or assignment '=' else if(isdigit(str[i])) { state=25; startcon=i; } //constant else if(str[i]=='(') state=26; //special characters '(' else if(str[i]==')') state=27; //special characters ')' else if(str[i]==';') state=28; //special characters ';' else if(str[i]=='+') state=29; //operator '+' else if(str[i]=='-') state=30; //operator '-' break; //States for 'if' case 1: if(str[i]=='f') state=2; else { state=17; startid=i-1; i--; } break; case 2: if(str[i]=='(' || str[i]==NULL) { printf("if : Keywordn");
  • 7. state=0; i--; } else { state=17; startid=i-2; i--; } break; //States for 'while' case 3: if(str[i]=='h') state=4; else { state=17; startid=i-1; i--; } break; case 4: if(str[i]=='i') state=5; else { state=17; startid=i-2; i--; } break; case 5: if(str[i]=='l') state=6; else { state=17; startid=i-3; i--; } break; case 6: if(str[i]=='e') state=7; else { state=17; startid=i-4; i--; } break; case 7: if(str[i]=='(' || str[i]==NULL) { printf("while : Keyword n"); state=0; i--; } else { state=17; startid=i-5; i--; } break; //States for 'do' case 8: if(str[i]=='o') state=9; else { state=17; startid=i-1; i--; } break; case 9: if(str[i]=='{' || str[i]==' ' || str[i]==NULL || str[i]=='(') { printf("do : Keyword n"); state=0; i--; } break; //States for 'else' case 10: if(str[i]=='l') state=11; else { state=17; startid=i-1; i--; } break; case 11: if(str[i]=='s') state=12; else { state=17; startid=i-2; i--; } break; case 12: if(str[i]=='e') state=13;
  • 8. else { state=17; startid=i-3; i--; } break; case 13: if(str[i]=='{' || str[i]==NULL) { printf("else : Keyword n"); state=0; i--; } else { state=17; startid=i-4; i--; } break; //States for 'for' case 14: if(str[i]=='o') state=15; else { state=17; startid=i-1; i--; } break; case 15: if(str[i]=='r') state=16; else { state=17; startid=i-2; i--; } break; case 16: if(str[i]=='(' || str[i]==NULL) { printf("for : Keyword n"); state=0; i--; } else { state=17; startid=i-3; i--; } break; //States for identifiers case 17: if(isalnum(str[i]) || str[i]=='_') { state=18; i++; } else if(str[i]==NULL||str[i]=='<'||str[i]=='>'||str[i]=='('||str[i]==')'||str[i]==';'||str[i]=='='||str[i]=='+'|| str[i]=='-') state=18; i--; break; case 18: if(str[i]==NULL || str[i]=='<' || str[i]=='>' || str[i]=='(' || str[i]==')' || str[i]==';' || str[i]=='=' || str[i]=='+' ||str[i]=='-') { endid=i-1; printf(" "); for(j=startid; j<=endid; j++) printf("%c", str[j]);
  • 9. printf(" : Identifier n"); state=0; i--; } break; //States for relational operator '<' & '<=' case 19: if(str[i]=='=') state=20; else if(isalnum(str[i]) || str[i]=='_') { printf("< : Relational operator n"); i--; state=0; } break; case 20: if(isalnum(str[i]) || str[i]=='_') { printf("<= : Relational operator n"); i--; state=0; } break; //States for relational operator '>' & '>=' case 21: if(str[i]=='=') state=22; else if(isalnum(str[i]) || str[i]=='_') { printf("> : Relational operator n"); i--; state=0; } break; case 22: if(isalnum(str[i]) || str[i]=='_') { printf(">= : Relational operator n"); i--; state=0; } break; //States for relational operator '==' & assignment operator '=' case 23: if(str[i]=='=') state=24; else { printf("= : Assignment operator n"); i--; state=0; }
  • 10. break; case 24: if(isalnum(str[i])) { printf("== : Relational operator n"); state=0; i--; } break; //States for constants case 25: if(isalpha(str[i])) { printf(" *** ERROR *** n "); puts(str); for(j=0; j<i; j++) printf(" "); printf("^"); printf("Error at position %d Alphabet cannot follow digit n", i); state=99; } else if(str[i]=='(' || str[i]==')' || str[i]=='<' || str[i]=='>' || str[i]==NULL || str[i]==';' || str[i]=='=') { endcon=i-1; printf(" "); for(j=startcon; j<=endcon; j++) printf("%c", str[j]); printf(" : Constant n"); state=0; i--; } break; //State for special character '(' case 26: printf(" ( : Special character n"); startid=i; state=0; i--; break; //State for special character ')' case 27: printf(" ) : Special character n"); state=0; i--; break; //State for special character ';' case 28: printf(" ; : Special character n"); state=0;
  • 11. i--; break; //State for operator '+' case 29: printf(" + : Operator n"); state=0; i--; break; //State for operator '-' case 30: printf("+ : Operator n"); state=0; i--; break; //Error State case 99: goto END; } i++; } printf("n End of program"); END: getch(); } /* Output Correct input ------------- *** Program on Lexical Analysis *** Enter the string: for(x1=0; x1<=10; x1++); Analysis: for : Keyword ( : Special character x1 : Identifier = : Assignment operator 0 : Constant ; : Special character x1 : Identifier <= : Relational operator 10 : Constant ; : Special character
  • 12. x1 : Identifier + : Operator + : Operator ) : Special character ; : Special character End of program Wrong input ----------- *** Program on Lexical Analysis *** Enter the string: for(x1=0; x1<=19x; x++); Analysis: for : Keyword ( : Special character x1 : Identifier = : Assignment operator 0 : Constant ; : Special character x1 : Identifier <= : Relational operator Token cannot be generated */ OUTPUT *** Program on Lexical Analysis ***Enter the string: if (a>b) a=25; Analysis:if : Keyword ( : Special character a : Identifier > : Relational operator b : Identifier ) : Special character a : Identifier = : Assignment operator 25 : Constant ; : Special character End of program
  • 13. /*Count number of characters, words, lines in a file */ #include<fstream.h> #include<conio.h> #include<string.h> #include<ctype.h> void main() { clrscr(); char ch,fname[50]; int count=0,ascii,line=0,words=0,previous=10; cout<<"Enter the complete path of the file:"<<"n"; cin.get(fname,50); fstream fio; fio.open(fname,ios::in) ; fio.seekg(0); while(fio) { fio.get(ch); if(ch !=10 && ch !=-1) { count++; if(ch==32 && previous !=32) {words++; } previous=ch; } else {if(ch==10) line++; if (previous !=10 && previous != 32) words++; previous=ch; } ascii=ch; cout<<ch<<":"<< ascii<<"n"; } fio.close(); cout<<"number of characters:"<<count<<"n"; cout<<"number of lines:"<<line<<"n"; cout<<"number of words:"<<words<<"n"; getch();
  • 14. } OUTPUT Enter the complete path of the file: c:Documents and SettingsUser1Desktoptext.txt number of characters:98 number of lines:4 number of words:26 */ First and follow */ #include<iostream.h> #include<conio.h> struct prod { char left, right[10][10]; int no_prod; }; struct firstnfollow { char ch[100]; int n_f; }; void main() { clrscr(); prod p[]={{'E',{"TR"},1}, {'R',{"+TR","~"},2}, {'T',{"FD"},1}, {'D',{"*FD","~"},2}, {'F',{"(E)","i"},2}}; firstnfollow f1[10]; firstnfollow f2[]={{"$",1},{"",0},{"",0},{"",0},{"",0}}; int n=5; // int n=5; char temp; for(int i=0;i<n;i++) { for(int j=0;j<p[i].no_prod;j++) { f1[i].ch[j]=p[i].right[j][0]; f1[i].n_f=p[i].no_prod; } } for(i=0;i<n;i++) { while(f1[i].ch[0]>=65&&f1[i].ch[0]<=90) { temp=f1[i].ch[0]; for(int j=1;j<f1[i].n_f;j++) f1[i].ch[j-1]=f1[i].ch[j]; f1[i].n_f--; for(int k=0;k<n;k++)
  • 15. if(temp==p[k].left) { for(j=0;j<f1[k].n_f;j++) f1[i].ch[f1[i].n_f+j]=f1[k].ch[j]; f1[i].n_f+=f1[k].n_f; break; } } } int k,flag; for(i=0;i<n;i++) { for(int j=0;j<p[i].no_prod;j++) { k=0; while(p[i].right[j][k]!='0') { if(p[i].right[j][k]>=65&&p[i].right[j][k]<=90&&p[i].right[j][k+1]!='0') { for(int x=0;x<n;x++) if(p[i].right[j][k]==p[x].left) break; for(int y=0;y<n;y++) if(p[i].right[j][k+1]==p[y].left) break; if(y<5) { for(int s=0;s<f1[y].n_f;s++) if(f1[y].ch[s]!='~') f2[x].ch[f2[x].n_f++]=f1[y].ch[s]; } else f2[x].ch[f2[x].n_f++]=p[i].right[j][k+1]; } k++; } } } for(i=0;i<n;i++) { for(int j=0;j<p[i].no_prod;j++) { k=0; while(p[i].right[j][k]!='0') { if(p[i].right[j][k]>=65&&p[i].right[j][k]<=90) { if(p[i].right[j][k+1]=='0') { for(int a=0;a<n;a++) if(p[i].right[j][k]==p[a].left) break; if(a!=i) for(int b=0;b<f2[i].n_f;b++) f2[a].ch[f2[a].n_f++]=f2[i].ch[b]; } else { if(p[i].right[j][k+1]>=65&&p[i].right[j][k+1]<=90) { flag=0;
  • 16. for(int x=0;x<n;x++) if(p[i].right[j][k+1]==p[x].left) break; for(int s=0;s<f1[x].n_f;s++) if(f1[x].ch[s]=='~') { flag=1; break; } if(flag==1) { for(int a=0;a<n;a++) if(p[i].right[j][k]==p[a].left) break; for(int b=0;b<f2[i].n_f;b++) f2[a].ch[f2[a].n_f++]=f2[i].ch[b]; } } } } k++; } } } int q,j,s; for(i=0;i<n;i++) { q=0; j=0; while(f2[i].ch[j]!='0') { k=j+1; while(f2[i].ch[k]!='0') { if(f2[i].ch[j]==f2[i].ch[k]) { s=k; while(f2[i].ch[s]!='0') { f2[i].ch[s]=f2[i].ch[s+1]; s++;q++; } } else k++; } j++; } f2[i].n_f-=q; } cout<<"The Firsts are: "; for(i=0;i<n;i++) { cout<<"n"<<p[i].left<<" ---- "; for(int j=0;j<f1[i].n_f;j++) cout<<f1[i].ch[j]<<" ";
  • 17. } cout<<"nThe Follows are: "; for(i=0;i<n;i++) { cout<<"n"<<p[i].left<<" ---- "; j=0; while(f2[i].ch[j]!='0') { cout<<f2[i].ch[j]<<" "; j++; } } getch(); } OUTPUT The Firsts are: E ---- ( i R ---- + ~ T ---- ( i D ---- * ~ F ---- ( i The Follows are: E ---- $ ) R ---- $ ) T ---- + $ ) D ---- + $ ) F ---- * + $ )