-
من تصمیم گرفتم پس از یادگیری کار با فایل ها یه برنامه درفترچه تلفن اساسی بنویسم :8: .چون همونطور که می دونید چندتا برنامه دفترچه تلفن توی انجمن بود که دوستان نوشته بودند وقتی اطلاعات جدیدی رو وارد می کردی ذخیره می کرد ولی فقط تا زمان اجرای برنامه وقتی از برنامه خارج می شدی و دوباره وارد می شدی اطلاعات از دست می رفت حالا من می خوام این برنامه رو با قابلیت ذخیره ی دائم بر روی هارد دیسک بنویسم و الان هم کمی از برنامه رو نوشتم (قسمت ذخیره برنامه رو) در ضمن برای صفحه ی اصلی و اولیه برنامه نتونستم از gotoxy استفاده کنم مجبور شدم از space استفاده کنم به صورت آماتوری :31: . حالا شما ببینید برنامه تا الان چطوریه قسمت about برنامه رو هم هنوز تابعش رو ننوشتم برای همین تو case 3 هیچ دستوری رو برای فراخوانی تابعم صادر نگردم |توجه اگه کمی به کد برنامه دقت کنید متوجه عملکرد جالبش میشید! البته قسمت ذخیره هم جای کار داره که در آینده اون رو هم تغییر می دم|کد برنامه :
کد:
#include <iostream>
#include <string.h>
#include <fstream>
#include <conio.h>
using namespace std;
const int NameSize=40;
char Name[NameSize];
string FirstName;
string LastName;
string Telephone;
string Mobile;
string Address;
void QuestionForm (int);
void SaveDataBase();
void ImportDataBase();
void AboutDisplayMassage();
int main () {
int ResumeProgram=true;
while (ResumeProgram) {
int answer;
system("cls");
cout<<"\n\n\n\n";
cout<<" ____________________________ "<<endl;
cout<<" | | "<<endl;
cout<<" | ++ Welcome ++ | "<<endl;
cout<<" | | "<<endl;
cout<<" | ++ Select a modify ++ | "<<endl;
cout<<" | | "<<endl;
cout<<" | 1.Enter Data | "<<endl;
cout<<" | | "<<endl;
cout<<" | 2.Import Data | "<<endl;
cout<<" | | "<<endl;
cout<<" | 3.About | "<<endl;
cout<<" | | "<<endl;
cout<<" | 4.Quit | "<<endl;
cout<<" |____________________________| "<<endl;
cout<<" ";
cin>>answer;
switch (answer) {
case 1 :
QuestionForm(1);
break;
case 2 :
QuestionForm(2);
break;
case 3 :
break;
case 4 :
ResumeProgram=false;
getch();
break;
default :
break;}}
return 0;}
void QuestionForm (int modify){
if (modify==1){
system("cls");
cout<<"\n\n\n\n\n\n";
cout<<" Enter DataBase Name : ";
cin>>Name;
system("cls");
cout<<"\n";
cout<<"First Name : ";
cin.sync();
getline(cin,FirstName);
cout<<"Last Name : ";
getline(cin,LastName);
cout<<"Telephone Number : ";
getline(cin,Telephone);
cout<<"Moblie Number : ";
getline(cin,Mobile);
cout<<"Address : ";
getline(cin,Address);
ofstream DB;
DB.open(Name);
DB<<FirstName<<"\n"<<LastName<<"\n"<<Telephone<<"\n"<<Mobile<<"\n"<<Address;
DB.close();
cout<<"\n\nThe Datas has been saved !...";
getch();}}
-
دوستان عزیز برنامه کامل شد برای کمک به من در امر خطایابی این برنامه به تاپیکی که می زنم مراجعه کنید توی انجمن c.
-
جالبه . من خیلی دنبال این کار می گشتم . مرسی دوست من .:20::31:
راستی مشکلت با gotoxy چیه؟
اگر از .net استفاده میکنی ، gotoxy نداره و باید تابعشو بنویسی
اینم تابعش . امیدوارم به دردت بخوره
کد:
void gotoxy(int x, int y)
{
COORD point;
point.X = x; point.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),
point);
}
-
خیلی ممنون مشکل منو حل کردید. سپاسگزارم
-
سلام
من باید دفترچه تلفن را به زبان سی پلاس پلاس بنویسم ، اما این زبان را در حد اشاره گرها میدونم ، دو کتاب دایتل اند دایتل وجعفرنژاد قمی گرفتم ولی نمیدونم کدوم قسمتش را برای نوشتن این برنامه بخونم ؟ لطفا اگر ممکنه منو سریعتر راهنمایی کنید وقت خیلی کم دارم برای این برنامه !