TELEPHONE DIRECTORY

Document Sample
TELEPHONE DIRECTORY Powered By Docstoc
					                  TERM PAPER
                        Of
      FOUNDATION OF COMPUTING
  Topic: - TELEPHONE DIRECTORY



Submitted To: -              Submitted By:-

ms. Sukhdilpreet kaur        ASHUTOSH KUMAR

                             ROLL NO.:- R246B47

                             REGD. NO:- 10801374




                                                   1
                ACKNOWLEDGEMENT


It is not until you undertake the project like this one that you realize
how massive the effort it really is, or how much you must rely upon
the Selfless efforts and goodwill of others. There are many who
helped us with this project, and we want to thank them all from the
core of our Hearts.


We owe special words of thanks to our Teachers
MS.SUKHDILPREET KAUR for their vision, thoughtful
counseling and encouragement at every step of the project. We are
also thankful to the teachers of the Department for giving us the best
of knowledge and guidance throughout the project.


And last but not the least, we find no words to acknowledge the
financial assistance & moral support rendered by our parents in
making the effort a success. All this has become reality because of
their blessings and above all by the grace of god.

                                                   ASHUTOSH KUMAR

                                                  ROLL NO:-R246B47

                                                  REGD.ID:-10801374



                                                                           2
        TABLE OF CONTENTS


S.No   Content              Page no.
1      Introduction         4
2      System Requirement   8
3      System Description   9
4      System Design        10
5      Source code          11
6      Output               29
7      Testing              32
8      Future scope         33




                                       3
 INTRODUCTION:


We have discussed so far various features of C language and are
ready to write and execute program of modest complexity. However,
before attempting to develop complex programs, it is worthwhile to
consider some programming techniques that would help design
efficient and error free.

The program development process includes three important stages,
namely, program design, program coding and program testing. All the
three stages contribute to the production of high quality program.

In “TELEPHONE DIRECTORY” we have done system design,
source coding, and program testing and added many more features to
facilitate the user with the best. We have given the user the facility to
enter the person’s record and providing the option to save and delete
that record and many more options.

We can improve the efficiency of the system, thus overcome the
drawbacks of the existing system.
· Less human error
· Strength and strain of manual labour can be reduced
· High security
· Data consistency
· Easy to handle
· Easy data updating
· Easy record keeping
· Backup data can be easily genera




                                                                            4
OVERVIEW TO C
HISTORY OF C:

      C is a popular general purpose programming language. It is one
of the most popular computer languages today, because it is a
structured, high level, machine independent language.

The root of all modern language is ALGOL, introduced in early
1960’s. ALGOL was the 1st computer language to use a block
structure. Subsequently, several other languages were announced after
1960’s. In 1967, Martin Richard developed a language called BCPL
i.e. basic combined programming language mainly for writing system
software. In 1970, Ken Thompson created a language using many
features of BCPL and called it simply B. B was used to create early
version of UNIX operating system.

C was evolved from ALGOL, BCPL, and B by Dennis Ritchie at the
Bell Laboratories in 1972, strongly associated with UNIX. During
1970’s, C had evolved into the “TRADITIONAL C”. With the
publication of the book ‘The C Programming language’ by Brian
Kerningham and Dennis Ritchie in 1978, it becomes more powerful.
In 1983, American National Standards Institutes (ANSI) appointed a
technical committee to define a standard for C. The committee
approved a version of C in December 1989, which is now known as
ANSI C. It was then approved by International Standard Organization
(ISO) in 1990.




                                                                       5
IMPORTANCE OF C:

      The increasing popularity of C is probably due to its many
desirable qualities. The C compiler combines the capabilities of an
assembly language with the features of a high level language and
therefore it is well suited for writing both system software and
business packages. In fact many of the C compilers available in the
market are written in C. Programs written in C are efficient and fast.
This is due to its variety of data types and powerful operators. It is
many times faster than BASIC.

There are only 32 key words in ANSI C and its strength lies in its
built in functions. C is highly portable; this means that C programs
written for one computer can be run on another with little or no
modifications. C language is well suited for structured programming,
thus requiring the user to think of a problem in terms of function
modules or blocks. This modular structure makes program de-
bugging, testing and maintenance easier.Another important feature of
C is its ability to extend itself. We can continuously add our own
functions to C library, thus our programming task becomes so easier
and simple.




                                                                         6
                 Introduction of TELEPHONE

                                  DIRECTORY

We can make this TELEPHONE DIRECTORY in C language by using three

or more than three header files or many data types such as:

1. #include<stdio.h> : this header file will contain Scanf() , Printf () And,

there are many header files which are used in this program….

2. #include<conio.h>: this header file will contain Clrscr(); , Getch(); , and

many more…..

3. #include<string.h> : this header file will contain string function such as

  1.Strrev();

  2. Strlen();

  3. Strupr();

  4. Strlwr();

  5. And many mores……




                                                                                 7
SYSTEM REQUIREMENTS



 Operating System:   Windows 2000/NT/Xp/Vista

 RAM:                256 MB or more

 HARD DISK            40 GB or more

 Processor            P3 or High

 Compiler              Standard C++ Compiler




                                                8
SYSTEM DESCRIPTION

THE OPERATING SYSTEM USED IN THIS PROJECT IS
WINDOWSXPIT HAS MICROSOFT OFFICE INSTALLED IN IT.
IT HAS RAM OF 2GB. HARD DISK CAPACITY OF OPERATING
SYSTEM IS 250GB. IT CONSISTS OF PENTIUM-4
PROCESSOR.THE OPEREATING SYSTEM ALSO HAS C++
COMPILER. THE SYSTEM ALSO HAS TYPE CONVERSIONS
WHICH CONVERT LOWER TO UPPER TYPE. THE
OPERATING SYSTEM HAVE 1GB RAM FOR MICROSOFT
WORLD.




                                                 9
     system design:



                                         START


                                 WELCOME TO THE
                                 MAIN MENU




                                        ENTER YOUR
                                          CHOICE




                                                             LOAD              END
NEW ENTRY                      DISPLAY ALL      SAVE ENTRY
                   DELETE AN                                 ENTRIES
                               ENTRIES
                     ENTRY
                                         EMPTY THE                DELETE ALL
      DISPLAY AN                                                  FILES
                                         BOOK
      ENTRY




     IF YES                       IF U WANT TO                  IF NO
                                    CONTINUE                                    STOP

                                                                                 10
                 SOURCE CODE



#include<stdio.h>

#include<stdlib.h>

#include<conio.h>

#include<alloc.h>

#include<string.h>

#include<graphics.h>

struct entry

{

char name[50];

char nick[50];

char email[50];

char address[50];

char city[50];

char cont[50];

char pin[50];

struct entry *lptr;

struct entry *rptr;

}*temp,*newe,*l,*r;

typedef struct entry *list;


                               11
void newentry();

void display(char n[50]);

void deletentry(char n[50]);

void displayall();

void makempty();

int isempty();

void saventry();

void loadentry();

void deleteall();

void newentry()

{

char a[50],b[50],f[50],g[50],c[50],d[50],e[50];

int i,k=0;

printf("Enter the Datas for the New Entry:");

printf("Name         :");

scanf("%s",a);

printf("Nick name :");

scanf("%s",b);

printf("E-mail ID :");

scanf("%s",c);

printf("Address :");

scanf("%s",d);

printf("City     :");

                                                  12
scanf("%s",e);

printf("Contact No:");

scanf("%s",f);

printf("Pincode :");

scanf("%s",g);

newe=(struct entry*)malloc(sizeof(struct entry));

for(i=0;i<50;i++)

{

newe->name[i]=' ';

newe->nick[i]=' ';

newe->email[i]=' ';

newe->address[i]=' ';

newe->city[i]=' ';

newe->cont[i]=' ';

newe->pin[i]=' ';

}

for(i=0;i<50;i++)

{

newe->name[i]=a[i];

newe->nick[i]=b[i];

newe->email[i]=c[i];

newe->address[i]=d[i];

newe->city[i]=e[i];

                                                    13
newe->cont[i]=f[i];

newe->pin[i]=g[i];

}

if(isempty())

{

newe->lptr=newe->rptr=NULL;

l=r=newe;

printf("Your Entry is Added");

}

else

{

        temp=l;

        while(temp!=NULL)

    {

        i=stricmp(newe->name,temp->name);

        if(i<0)

        break;

        else if(i>0)

        temp=temp->rptr;

        else if(i==0)

        {

                printf("Name Already Exists.Entry cannot be Added");

        k=1;

                                                                       14
    break;

}

}

if(k!=1)

{

         if(temp==l)

{

    newe->lptr=NULL;

    newe->rptr=l;

    l->lptr=newe;

    l=newe;

    printf("Your Entry is Added");

}

else if(temp==NULL)

{

    newe->rptr=NULL;

    newe->lptr=r;

    r->rptr=newe;

    r=newe;

    printf("Your Entry is Added");

}

else

{

                                     15
         newe->rptr=temp;

         newe->lptr=temp->lptr;

         temp->lptr=newe;

         (newe->lptr)->rptr=newe;

         printf("Your Entry is Added");

         }

    }

    }

}



void displayall()

{       int n=1;

if(!isempty())

{

temp=l;

while(temp!=NULL)

{

printf("[%d] Name :%s Nick Name :%s E-mail ID :%s      address :%s
City :%s Contact.No:%s Pin code :%s",n,temp->name,temp->nick,temp-
>email,temp->address,temp->city,temp->cont,temp->pin);

temp=temp->rptr;

n++;

}


                                                                 16
}

else

printf("Address Book is Empty");

}



void deletentry(char n[50])

{

int i;

if(isempty())

printf("Address Book is Empty");

else{

temp=l;

while(temp!=NULL)

{

i=stricmp(temp->name,n);

if(i==NULL)

{

if(l==r)

{

l=r=NULL;

printf("Entry deleted");

break;

}

                                   17
else if(temp==l)

    {

    l=l->rptr;

    l->lptr=NULL;

    printf("Entry deleted");

    break;

    }

else if(temp==r)

{

r=r->lptr;

r->rptr=NULL;

printf("Entry deleted");

break;

}

else{

(temp->lptr)->rptr=temp->rptr;

(temp->rptr)->lptr=temp->lptr;

printf("Entry deleted");

break;

}

}

temp=temp->rptr;



                                 18
}

if(temp==NULL)

printf("Not Found");

}

}

int isempty()

{

return l==NULL;

}



void makempty()

{

l=r=NULL;

printf("Address Book is Emptied");

}




void display(char n[50])

{

int i,p=1;

                                     19
if(isempty())

printf("Address Book is Empty");

else

{

temp=l;

while(temp!=NULL)

{

i=stricmp(temp->name,n);

if(i==NULL)

{if(p==1)

printf("Entry is found in %dst position",p);

else if(p==2)

printf("Entry is found in %dnd position",p);

else if (p==3)

printf("Entry is found in %drd position",p);

else

printf("Entry is found in %dth position",p);

printf("Name :%s Nick Name :%s E-mail ID :%s address :%s City
:%s Contact.No:%s Pin code :%s ",temp->name,temp->nick,temp-
>email,temp->address,temp->city,temp->cont,temp->pin);

break;

}

temp=temp->rptr;


                                                                20
p++;

}

if(temp==NULL)

printf("Entry Not Found");



}

}

void main()

{

int l=1,m;

int gd=DETECT,gm;

char n[50];

initgraph(&gd,&gm,"c:\tc\bgi");

while(l!=8)

{

clrscr();

textmode(C80);

textcolor(4);

cprintf("*********************************************************
***********************#------------------------MINI PROJECT-TELEPHONE
DIRECTORY --------------------
#***************************************************************
*****************");

cprintf("Enter Your Choice");


                                                                     21
printf(" ");

cprintf("(1)-New Entry");

printf(" ");

cprintf("(2)-Display an Entry");

printf(" ");

cprintf("(3)-Delete an Entry");

printf(" ");

cprintf("(4)-Display all Entries");

printf(" ");

cprintf("(5)-Empty the book");

printf(" ");

cprintf("(6)-Save Entry");

printf(" ");

cprintf("(7)-Load Entries");

printf(" ");

cprintf("(8)-Delete All Saved Files");

printf(" ");

cprintf("(9)-End");

printf(" ");

cprintf("*********************************************************
***********************");

printf(" ");

scanf("%d",&l);


                                                                 22
switch(l)

{

case 1:

textcolor(2);

newentry();

getch();

break;

case 2:

textcolor(2);

cprintf("Enter the Name of the Person to Display");

printf(" ");

scanf("%s",&n);

display(n);

getch();

break;

case 3:

textcolor(2);

cprintf("Enter the Name of the Person to Delete");

printf(" ");

scanf("%s",&n);

deletentry(n);

getch();

break;

                                                      23
case 4:

textcolor(2);

displayall();

getch();

break;

case 5:

textcolor(2);

makempty();

getch();

break;

case 6:

textcolor(2);

saventry();

getch();

break;

case 7:

textcolor(2);

loadentry();

getch();

break;

case 8:

textcolor(2);

deleteall();

                24
getch();

break;

case 9:

textcolor(2);

printf("Program Ends Here.Thank You!!!");

printf(" ");

getch();

break;

default:

textcolor(2);

printf("Enter a Valid Choice from 1-9 only");

printf(" ");

getch();

break;

}

}

getch();

}

void saventry()

{

char n[50];

int c;

list t;

                                                25
int i;t=l;

printf("Enter the Name of the Person");

scanf("%s",n);

if(isempty())

printf("Address Book is Empty");

else

{

FILE *f;

f=fopen("entry.c","a");

while(t!=NULL)

{

i=stricmp(t->name,n);

if(i==0)

{

fprintf(f,"%s %s %s %s %s %s %s",t->name,t->nick,t->email,t->address,t->city,t-
>cont,t->pin);

printf("Your Entry Saved");

printf("Add Another Entry? (1-yes/2-no)");

scanf("%d",&c);

if(c==1)

saventry();

else if(c==2)

break;


                                                                              26
}

t=t->rptr;

}

fclose(f);

if(t==NULL)

printf("Entry Not Found");

}

}

void loadentry()

{

int i=1;

list t;

FILE *f;

     f=fopen("entry.c","r");

          if(f==NULL)

          {

          printf("Cannot Open");

          exit(1);

          }

     while(fscanf(f," %s %s %s %s %s %s %s",t->name,t->nick,t->email,t-
>address,t->city,t->cont,t->pin)!=EOF)

   { printf("[%d] Name :%s Nick Name :%s E-mail ID :%s address
:%s City :%s Contact.No:%s             Pin code :%s",i,t->name,t->nick,t-
>email,t->address,t->city,t->cont,t->pin);

                                                                            27
i++;}

fclose(f);

}

void deleteall()

{

FILE *f;

f=fopen("entry.c","w");

fclose(f);

printf("all saved files were delete");

}




                                         28
OUTPUT




         29
30
31
                   TESTING


THE SOURCECODE DECLARED ABOVE FOR THE PROGRAM
OF TELEPHONE DIRECTORY HAS BEEN TESTED AND IT
HAS BEEN FOUND THAT THE ABOVE SOURCE CODE IS
OKAY AND CORRECT.THE PROGRAM INVOLVES MANY
TYPE OF CONVERSIONS. THESE CONVERSIONS HAS TO
DONE CAREFULLY.

MAINLY THERE ARE TWO TYPES OF TESTING:

1-SYSTEM TESTING AND

2-INTEGRATION TESTING

SYSTEM TESTING INVOLVES WHOLE TESTING OF
PROGRAM AT ONCE AND INTEGRATION TESTING
INVOLVES THE BREAKING OF PROGRAM INTO MODULES &
THEN TEST.




                                              32
FUTURE SCOPE
In future one change can be done by adding the fingerprints of the
persons of which the address is entered.And one more major change
which can be done in this project is that to add the snaps of the person
of which the address is entered.We can also add or subtract details of
the individual.




                                                                       33

				
DOCUMENT INFO
Shared By:
Categories:
Tags:
Stats:
views:39
posted:8/15/2012
language:Unknown
pages:33