پروژه C++

در این پست از سایت آموزش برنامه نویسی سورس باران سورس پروژه مدیریت شرکت موبایل به زبان سی پلاس پلاس را جهت دانلود قرار داده ایم. این پروژه مدیریت شرکت موبایل به زبان سی پلاس پلاس دارای امکانات زیر می باشد :

افزودن رکورد

مشاهده رکورد ها

جستجو رکورد

حذف رکورد

تغییر نام

تغییر آدرس

تغییر نوع اتصال

تغییر شماره تلفن

جهت دانلود سورس پروژه مدیریت شرکت موبایل به زبان سی پلاس پلاس به ادامه مطلب مراجعه نمایید.

 

افزودن رکورد در سی پلاس پلاس

مشاهده رکورد ها در سی پلاس پلاس

جستجو رکورد در سی پلاس پلاس

حذف رکورد در سی پلاس پلاس

تغییر نام در سی پلاس پلاس

تغییر آدرس در سی پلاس پلاس

تغییر نوع اتصال در سی پلاس پلاس

تغییر شماره تلفن در سی پلاس پلاس

 

#include <dos.h>
#include <stdio.h>
#include <ctype.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
#include<graphics.h>



#define NUM 5
#define PH 12
#define MIN 30
#define MAX 61


void add();
void view();
void search();
void c_name();
void c_add();
void c_ct();
void c_ph();
void del();
int date(void);


void check_id(char *,int);
void check_name(char *,int);
void check_add(char *,int);
void check_phone(char *,int);
void check_ct(int *);
int duplicate(char idno[]);


void empty();


struct customer
{
	char id[NUM];
	char name[MIN];
	char address[MAX];
	char phone[PH];
	int  connection;
	int  day;
	int  month;
	int  year;
}rec;
main()
{
	int c;

do{
	int i;
	window(1,1,80,25);
	textbackground(LIGHTRED);
	textcolor(LIGHTGRAY);

	clrscr();

	gotoxy(24,2);
	printf("<< MOBILINK CUSTOMER DATABASE >>");
	gotoxy(24,3);
	cprintf("<< Have Fun!Enyoy It.>>");


	for(i=10;i<=70;i++)
	{
		gotoxy(i,4);
		printf("Ü");
		gotoxy(71,4);
		printf("Ü");
		gotoxy(i,7);
		printf("-");
		gotoxy(i,9);
		printf("-");
		gotoxy(i,11);
		printf("-");
		gotoxy(i,13);
		printf("-");
		gotoxy(69,16);
		printf("ß");
		gotoxy(71,16);
		printf("ß");
		gotoxy(i,16);
		printf("ß");
	}

	for(i=5;i<=15;i++)
	{
		gotoxy(10,i);
		printf("ÝÞ");
		gotoxy(70,i);
		printf("ÝÞ");
	}

	for(i=6;i<=12;i++)
	{
		gotoxy(40,i);
		printf("|");
	}

	gotoxy(15,6);
	printf("[1] ENTER A RECORD");
	gotoxy(15,8);
	printf("[2] VIEW RECORDS");
	gotoxy(15,10);
	printf("[3] SEARCH RECORD");
	gotoxy(15,12);
	printf("[4] DELETE RECORD");
	gotoxy(43,6);
	printf("[5] CHANGE NAME");
	gotoxy(43,8);
	printf("[6] CHANGE ADDRESS");
	gotoxy(43,10);
	printf("[7] CHANGE CONNECTION TYPE");
	gotoxy(43,12);
	printf("[8] CHANGE PHONE NUMBER");
	gotoxy(37,14);
	printf("[9] EXIT");
	gotoxy(10,20);
	textcolor(LIGHTGRAY);
	cprintf("PLEASE SELECT A CHOICE: ");

	c = (getche());

		switch (c)
			{
				case '1': add();    break;
				case '2': view();   break;
				case '3': search(); break;
				case '4': del();    break;
				case '5': c_name(); break;
				case '6': c_add();  break;
				case '7': c_ct();   break;
				case '8': c_ph();   break;
				case '9': gotoxy(30,24);printf("<<<<--THANK YOU-->>>>");getch();exit(0);
				default:
				sound(500);delay(200);nosound();
				gotoxy(26,24);
				puts("<<--ENTER FROM 1-9 PLEASE-->>");
				getch();
			}

}while(c != '9');

	return 0;
}
void add()
{
	FILE *fp;
	char ch;
	char temp[NUM];



	if(fp!=NULL)
	{
		 do{
			 fp=fopen("customer.rec","ab");

			 clrscr();

			 gotoxy(25,2);
			 printf("<<==--ADDING RECORD--==>>");
			 do{
				   gotoxy(1,4);
				   printf("Enter [UNIQUE] SIM ID: ");
				   check_id(temp, NUM);

			 }while(duplicate(temp));

			 strcpy(rec.id, temp);

			 gotoxy(1,6);
			 printf("Enter NAME: ");
			 check_name(rec.name,MIN);
			 gotoxy(1,8);
			 printf("Enter ADDRESS: ");
			 check_add(rec.address,MAX);
			 gotoxy(1,10);
			 printf("Enter PHONE Number: ");
			 check_phone(rec.phone, PH);
			 gotoxy(1,12);
			 printf("Enter CONNECTION TYPE: ");
			 check_ct(&rec.connection);

			 {
				   struct date d;

				   getdate(&d);
				   gotoxy(1,12);
				   printf("DATE OF PURCHASE: %d %d %d ",d.da_day,d.da_mon,d.da_year);
				   rec.day   = d.da_day;
				   rec.month = d.da_mon;
				   rec.year  = d.da_year;
			 }

			 window(1,1,80,25);
			 gotoxy(1,12);

			 fwrite(&rec, sizeof(rec), 1, fp);

			 fclose(fp);
			  textbackground(LIGHTRED);
			 gotoxy(20,24);

			 printf("DO YOU WISH TO CONTINUE..[Y]/[N]: ");
			 ch=toupper(getche());

		}while(ch =='Y');
	}
	else
	{
		gotoxy(20,24);
		printf("Unable To Open File...");
	}
}

void view()
{
	FILE *fp;


	fp=fopen("customer.rec","rb");

	if(fp!=NULL)
	{
		clrscr();

		while( fread(&rec, sizeof(rec), 1, fp))
			if(strcmp(rec.id," ")!=0)
			{

					clrscr();
					gotoxy(28,2);
					printf("<<==--VIEWING RECORDS--==>>");
					gotoxy(3,5);
					printf(" SIM ID: %s",rec.id);
					gotoxy(3,7);
					printf(" NAME: %s",rec.name);
					gotoxy(3,9);
					printf(" ADDRESS: %s",rec.address);
					gotoxy(3,11);
					printf(" PHONE Number: %s",rec.phone);
					gotoxy(3,13);
					printf(" CONNECTION TYPE: %s",rec.connection);
					if(rec.connection==1)
					{
						gotoxy(21,13);
						printf("STAR");
					}
					else
					if(rec.connection==2)
					{
						gotoxy(21,13);
						printf("JAZZ");
					}
					gotoxy(3,15);
					printf(" DATE Of PURCHASE: %d-%d-%d",rec.day,rec.month,rec.year);

					getch();
			}

			if(strcmp(rec.id," ")==NULL)
			{
				clrscr();
				gotoxy(20,13);
				sound(500);delay(200);nosound();
				printf("<<==--THERE ARE NO RECORDS TO VIEW--==>>");
				getch();
			}
		fclose(fp);
	}
	else
	{
		gotoxy(20,24);
		printf("Unable To Open File...");
	}
}


void search()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );


			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else

				{
					clrscr();
					gotoxy(28,2);
					printf("<<==SEARCH SUCCESSFUL==>>");
					gotoxy(3,5);
					printf(" SIM ID: %s",rec.id);

					gotoxy(3,7);
					printf(" NAME: %s",rec.name);

					gotoxy(3,9);
					printf(" ADDRESS: %s",rec.address);

					gotoxy(3,11);
					printf(" PHONE Number: %s",rec.phone);

					gotoxy(3,13);
					printf(" CONNECTION TYPE: %s",rec.connection);
					if(rec.connection==1)
					{
						gotoxy(21,13);
						printf("STAR");
					}
					else
					if(rec.connection==2)
					{
						gotoxy(21,13);
						printf("JAZZ");
					}
					gotoxy(3,15);
					printf(" DATE Of PURCHASE: %d-%d-%d",rec.day,rec.month,rec.year);

					getch();
				}
		fclose(fp);
}




void c_name()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb+");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );

			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else
				{
					clrscr();
					gotoxy(28,4);
					printf("<<<--==RECORD FOUND==-->>>");

					gotoxy(3,8);
					printf("OLD NAME: %s",rec.name);
					gotoxy(3,12);
					printf("ENTER NAME: ");
					check_name(rec.name,MIN);

					fseek(fp, ftell(fp) - sizeof(rec),0);
					  fwrite(&rec, sizeof(rec), 1, fp);

					gotoxy(34,24);
					printf("RECORD SAVED !!!");

					getch();
				}
		fclose(fp);
}


void c_add()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb+");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );

			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else
				{
					clrscr();
					gotoxy(28,4);
					printf("<<<--==RECORD FOUND==-->>>");

					gotoxy(3,8);
					printf("OLD ADDRESS: %s",rec.address);
					gotoxy(3,12);
					printf("ENTER NEW ADDRESS: ");
					check_add(rec.address,MAX);

					fseek(fp, ftell(fp) - sizeof(rec),0);
					  fwrite(&rec, sizeof(rec), 1, fp);

					gotoxy(34,24);
					printf("RECORD SAVED !!!");

					getch();
				}
		fclose(fp);
}

void c_ct()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb+");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );

			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else
				{
					clrscr();
					gotoxy(28,2);
					printf("<<<--==RECORD FOUND==-->>>");

					gotoxy(3,6);
					printf("OLD DATE OF PURCHASE: %d %d %d",rec.day,rec.month,rec.year);
					{
						struct date d;

						getdate(&d);
						gotoxy(3,8);
						printf("NEW DATE OF PURCHASE: %d %d %d ",d.da_day,d.da_mon,d.da_year);
						rec.day = d.da_day;
						rec.month = d.da_mon;
						rec.year= d.da_year;
					}

					gotoxy(3,10);
					printf("OLD CONNECTION TYPE: %s",rec.connection);
					if(rec.connection==1)
					{
						gotoxy(24,10);
						printf("STAR");
					}
					else
					if(rec.connection==2)
					{
						gotoxy(24,10);
						printf("JAZZ");
					}
					gotoxy(3,12);
					printf("NEW CONNECTION TYPE: ");
					check_ct(&rec.connection);

					fseek(fp, ftell(fp) - sizeof(rec),0);
					  fwrite(&rec, sizeof(rec), 1, fp);

					window(1,1,80,25);
					gotoxy(1,12);
					gotoxy(35,24);
					printf("RECORD SAVED !!!");

					getch();
				}
		fclose(fp);
}




void c_ph()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb+");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );

			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else
				{
					clrscr();
					gotoxy(28,4);
					printf("<<<--==RECORD FOUND==-->>>");

					gotoxy(3,8);
					printf("OLD PHONE NUMBER: %s",rec.phone);
					gotoxy(3,12);
					printf("ENTER NEW PHONE NUMBER: ");
					check_phone(rec.phone,PH);

					fseek(fp, ftell(fp) - sizeof(rec),0);
					  fwrite(&rec, sizeof(rec), 1, fp);

					gotoxy(34,24);
					printf("RECORD SAVED !!!");

					getch();
				}
		fclose(fp);
}



void del()
{
	int ch;
	FILE *fp;
	char sno[NUM];
	clrscr();

	fp=fopen("customer.rec","rb+");

	gotoxy(20,13);
	printf("PLEASE ENTER SIM ID ==->>>> ");
	check_id(sno,NUM);

		while ( fread(&rec, sizeof(rec), 1, fp) && strcmp(sno,rec.id) );

			ch=strcmp(sno,rec.id);
				if(ch!=0)
				{
					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(28,13);
					printf("<<--RECORD NOT FOUND-->>");
					getch();
				}
				else     //Here the saved record is displayed.
				{
					clrscr();
					gotoxy(28,2);
					printf("<<==SEARCH SUCCESSFUL==>>");
					gotoxy(3,5);
					printf(" SIM ID: %s",rec.id);

					gotoxy(3,7);
					printf(" NAME: %s",rec.name);

					gotoxy(3,9);
					printf(" ADDRESS: %s",rec.address);

					gotoxy(3,11);
					printf(" PHONE Number: %s",rec.phone);

					gotoxy(3,13);
					printf(" CONNECTION TYPE: %s",rec.connection);
					if(rec.connection==1)
					{
						gotoxy(21,13);
						printf("STAR");
					}
					else
					if(rec.connection==2)
					{
						gotoxy(21,13);
						printf("JAZZ");
					}
					gotoxy(3,15);
					printf(" DATE Of PURCHASE: %d-%d-%d",rec.day,rec.month,rec.year);

					gotoxy(26,24);
					printf("PRESS ANY KEY TO DELETE RECORD.....");
					getch();
					empty();

					fseek(fp, ftell(fp) - sizeof(rec), 0);
					  fwrite(&rec, sizeof(rec), 1, fp);

					clrscr();
					sound(500);delay(200);nosound();
					gotoxy(33,13);
					printf("RECORD DELETED !!!");
					getch();
				}

		fclose(fp);
}



void check_id(char *p, int size)
{
	int i=0;
	char ch;

	do
	{
		ch=getch();

		if( (ch>='0' && ch<='9') && (i<size-1) )
		{
			 *p=ch;
			 p++;
			 i++;
			 printf("%c",ch);
		}
		else
		if(ch==8 && i>0)
		{
			printf("%c%c%c",8,32,8);
			i--;
			p--;
		}

	}while(ch!=13 || i<size-1);

	*p='\0';

}


void check_phone(char *ph, int size)
{
	int p=0;
	char s[20],ch;

	do
	{
		ch=getch();

		if( ((ch>='0' && ch<='9')||(ch=='-')) && (p<size-1) )
		{
			*ph=ch;
			 ph++;
			 p++;
			 printf("%c",ch);
		}

		else

		if( (ch==8)&&(p>0) )
		{
			printf("%c%c%c",8,32,8);
			p--;
			ph--;
		}

	}while(ch!=13 || p<size-1);

	s[p]='\0';
	*ph='\0';

}

void check_name(char *p, int size)
{
	int j=0;
	char x[40],cj;

	do
	{

		cj=toupper(getch());

		if(((cj>='a' && cj<='z')||(cj>='A' && cj<='Z')||(cj==' ')) && (j<size-1))
		{
			*p++=cj;
			j++;
			printf("%c",cj);
		}

		else

		if(cj==8 && j>0)
		{
			printf("%c%c%c",8,32,8);
			j--; p--;
		}

	}while(cj!=13);

	x[j]='\0';
	*p='\0';
}

void check_add(char *p, int size)
{
	int l=0;
	char a[50],ad;

	do
	{

		ad=toupper(getch());

		if(((ad>='a' && ad<='z')||(ad>='A' && ad<='Z')||(ad==' ')||(ad==',')||(ad=='.')||(ad>='0' && ad<='9')) && (l<size-1))
		{
			*p++=ad;
			l++;
			printf("%c",ad);
		}

		else

		if( (ad==8)&&(l>0) )
		{
			printf("%c%c%c",8,32,8);
			l--; p--;
		}

	}while(ad!=13);

	a[l]='\0';   *p='\0';
}
void check_ct(int *p)
{
	int ab=1;
	char ch;
	int aa;

	window(24,18,51,24);
	textbackground(BLACK);
	clrscr();

	window(25,19,50,23);
	textbackground(WHITE);
	textcolor(BLACK);
	clrscr();

	gotoxy(11,2);
	printf("STAR");
	gotoxy(11,4);
	printf("JAZZ");

	     do{
			ch = getch();

			if(ch==0)
			{
				ch = getch();

				if(ch==72)
				{
					ab=ab-1;
				}
			else
				if(ch==80)
				{
					ab=ab+1;
				}
			}

			if(ab<1)
			{
				ab=1;

			}
			else

			if(ab==1)
			{
				window(1,1,80,25);
				window(35,22,40,22);
				textbackground(WHITE);
				textcolor(BLACK);
				clrscr();
				printf("JAZZ");
				window(1,1,80,25);
				window(35,20,41,20);
				textcolor(RED);
				clrscr();
				printf("STAR");
				aa=1;
				window(1,1,80,25);
			}

			else

			if(ab==2)
			{
				window(1,1,80,25);
				window(35,20,41,20);
				textbackground(WHITE);
				textcolor(BLACK);
				clrscr();
				printf("STAR");
				window(1,1,80,25);
				window(35,22,40,22);
				textcolor(RED);
				clrscr();
				aa=2;
				printf("JAZZ");
				window(1,1,80,25);
			}

			if(ab>2)
			{
				ab=2;
			}
	     }while(ch != 13);

	if (aa==1)
	{
		gotoxy(24,12);
		printf("STAR");
		*p=1;
	}
	else

	if (aa==2)
	{
		gotoxy(24,12);
		printf("JAZZ");
		*p=2;
	}


	getch();
	window(24,18,51,24);
	textbackground(LIGHTRED);
	textcolor(LIGHTGRAY);
	clrscr();

}

void empty()
{
     strcpy(rec.id," ");
     strcpy(rec.name," ");
     strcpy(rec.address," ");
     strcpy(rec.phone," ");
     rec.connection=0;
     rec.day=0;
     rec.month=0;
     rec.year=0;
}


int duplicate(char idno[])
{
    FILE *fp;

    fp=fopen("customer.rec","rb");

    while(fread(&rec, sizeof(rec), 1, fp) && strcmp(rec.id, idno));
    fclose(fp);

    if(strcmp(rec.id, idno)==0)
       return 1;
    else
       return 0;
}

 

به این مطلب امتیاز دهید post

راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.

بزرگترین وحرفه ای ترین پکیج آموزشی شبکه و مجازی سازی
دانلود با لینک مستقیم

دسته بندی موضوعات

آخرین محصولات فروشگاه

مشاهده همه

نظرات

  1. یعنی دمت گرم خیلی کد توپی بود

بازخوردهای خود را برای ما ارسال کنید

این سایت از اکیسمت برای کاهش هرزنامه استفاده می کند. بیاموزید که چگونه اطلاعات دیدگاه های شما پردازش می‌شوند.