Term Paper: Submitted TO:-Submitted By: - MR Manjinder Singh Sahil Gupta Roll No:-R271A13 Section:-271 Regd. No:-10802727
Term Paper: Submitted TO:-Submitted By: - MR Manjinder Singh Sahil Gupta Roll No:-R271A13 Section:-271 Regd. No:-10802727
Term Paper: Submitted TO:-Submitted By: - MR Manjinder Singh Sahil Gupta Roll No:-R271A13 Section:-271 Regd. No:-10802727
Submitted TO:Mr Manjinder Singh Submitted by:SAHIL GUPTA Roll No:-R271A13 Section:-271 Regd. No:-10802727
ACKNOWLEDGEMENT As the professional courses do not only required the theoretical knowledge but need to cover practical aspect too. Universities have started conducting training programs for students. So, that they get simple view of practical knowledge. No work of significance can be claimed on a result of an individual Efforts and same holds true further for this project as well, for through it carries my name the energy of many have contributed in no small measure in completion of this project. I am very thankful to my friend and our teachers Mr. Manjinder Singh who help me to make this project.
SAHIL
Table of contents
1. 2. Introduction Proposed system i. Description ii. System requirements 3. Requirement Analysis 4. System Design 5. Source code 6. Testing 7. Future scope of project
INTRODUCTION
As the name specifies "Address book" is a software developed for managing various details of persons. Through this address book we can handle the details of persons properly which can not be possible to keep in mobile as there are less space in detail section. This particular project deals with the problems on managing the details of person and avoids the problems of losing the details. Identification of the drawbacks of the existing system leads to the designing of computerized system that will be compatible to the existing system with the system which is more user friendly and more GUI oriented. 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
PROPOSED SYSTEM
The following documentation is a project the Name of the term paper allotted. It is a detailed summary of all the drawbacks of the old system and how the new proposed system overcomes these shortcomings. The new system takes into account the various factors while designing a new system. It keeps into the account the Economical bandwidth available for the new system. The foremost thing that is taken care of is the Need and Requirements of the User.
DESCRIPTION Before developing software we keep following things in mind that we can develop powerful and quality software PROBLEM STATEMENT o Problem statement was to design a module: o Which is user friendly o Which will restrict the user from accessing other users data. o Which will help user in viewing his data and privileges. o Which will help the administrator to handle all the changes. FUNCTIONS TO BE PROVIDED: The system will be user friendly and completely menu driven so that the users shall have no problem in using all options. o The system will be efficient and fast in response. o The system will be customized according to needs. o It would help in reducing the complexity. o Computerized Address Book system helps in managing things accurately o It is also a time saving process. o Helps in saving a large amount of data without the fear of saving it. o Without the interference of any human, one can easily login and get through the Address Book.
SYSTEM REQUIREMENTS
Requirement Analysis:
THE PROJECT WHICH IS GIVEN TO ME I CAN BE MADE ON ANY WINDOWS LIKE WINDOWS-VISTA WINDOWSXP, WINDOWS 2000. THE MAIN CONDITION IS THAT IT SHOULD HAVE MICROSOFT INSTALLED WITH MICROSOFT WINDOWS AS BASIC NECCESSSITY. THE SYSTEM SHOLD HAVE RAM OF 256MB OR MORE. HARD DISK CAPACITY OF 40GB OR MORE. PROCESSOR MUST BE PENTIUM 3 0R 4 WITH C++ COMPILER.
System Design
START
New Entr y
Displa y an Entry
Delet e an Entry
Displa y an entry
Empt ya book
Sav e Entr y
Load Entrie s
End
STOP
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;
9
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 :");
10
:");
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];
11
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;
12
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 {
13
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++; }
14
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; }
15
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;
16
} 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; if(isempty()) printf("Address Book is Empty"); else { temp=l; while(temp!=NULL)
17
{ 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; p++; } if(temp==NULL) printf("Entry Not Found");
}
18
} 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-SIMPLE ADDRESS BOOK---------------------#***************************************************************** ***************"); cprintf("Enter Your Choice"); printf(" "); cprintf("(1)-New Entry"); printf(" "); cprintf("(2)-Display an Entry"); printf(" "); cprintf("(3)-Delete an Entry");
19
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); switch(l) { case 1: textcolor(2); newentry(); getch();
20
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; case 4: textcolor(2); displayall(); getch(); break; case 5:
21
textcolor(2); makempty(); getch(); break; case 6: textcolor(2); saventry(); getch(); break; case 7: textcolor(2); loadentry(); getch(); break; case 8: textcolor(2); deleteall(); getch(); break; case 9: textcolor(2); printf("Program Ends Here.Thank You!!!"); printf(" ");
22
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; printf("Enter the Name of the Person"); scanf("%s",n); list t; if(isempty()) printf("Address Book is Empty"); else {
23
FILE *f; f=fopen("entry.c","a"); int i;t=l; 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; } t=t->rptr;
} fclose(f); if(t==NULL)
24
} 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); i++;} fclose(f); } void deleteall()
25
TESTING
THE SOURCECODE DECLARED ABOVE FOR THE PROGRAM OF ADDRESS BOOK 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.
OUTPUT:-
***************************************************************************** *** #------------------------MINI PROJECT-SIMPLE ADDRESS BOOK----------------------# ***************************************************************************** *** Enter Your Choice (1)-New Entry (2)-Display an Entry (3)-Delete an Entry (4 )-Display all Entries (5)-Empty the book (6)-Save Entry (7)-Load Entries (8)
26
-Delete All Saved Files (9)-End ********************************************** ********************************** 1 Enter the Datas for the New Entry:Name :Ankur Nick name :Akki E-mail ID :[email protected] Address :JanakPuri City :Delhi Contact No:123456789 Pincode :110028 Your Entry is Added
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.
27