poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ [h=2]سورس برنامه ی هشت وزیر برای Dev C++[/h] این برنامه که برای کامپایل در Dev C++ نوشته شده، طول اضلاع صفحه شطرنج و تعداد وزیر ها رو گرفته و سپس به کمک توابع بازگشتی، تمامی حالات قرار گرفتن اونها رو طوری که یکدیگر رو تهدید نکنند، با زدن یک کلید نمایش میده. #include #include #include #include const int m=20; int k[m][m]; int Count=0; int v=0 , n=0 , i=0 , j=0 , state=0; void remove(int i,int j) { int p,q; k[j]=0; Count--; for(p=0;p if(p!=i) k[p][j]--; for(p=0;p if(p!=j) k[p]--; p=i+1; q=j+1; while(p { k[p++][q++]--; } p=i-1; q=j-1; while(p>=0 && q>=0) { k[p--][q--]--; } p=i+1; q=j-1; while(p=0) { k[p++][q--]--; } p=i-1; q=j+1; while(p>=0 && q { k[p--][q++]--; } } int apply(int i,int j) { int p,q; k[j]=1; Count++; for(p=0;p if(p!=i) k[p][j]++; for(p=0;p if(p!=j) k[p]++; p=i+1; q=j+1; while(p { k[p++][q++]++; } p=i-1; q=j-1; while(p>=0 && q>=0) { k[p--][q--]++; } p=i+1; q=j-1; while(p=0) { k[p++][q--]++; } p=i-1; q=j+1; while(p>=0 && q { k[p--][q++]++; } return 0; } void draw() { clrscr(); for(int p=0;p { for(int q=0;q { if(k[p][q]!=1) cout else cout } cout } cout } void check() { if(Count==v) { state++; draw(); cout int c=getch(); if(c=='q')exit(0); } } void move(int p,int q) { apply(p,q); check(); for(int i=p;i { for(int j=0;j if(k[j]==0) move(i,j); } remove(p,q); } int main() { cout cout cin>>n; cout cin>>v; clrscr; draw(); for(i=0;i for(j=0;j move(i,j); clrscr; cout getch(); return 0; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تمرین برنامه ای ساده با حلقه و شرط 41- برنامه ای بنویسید که یک عدد از ورودی گرفته و تمام مقسوم علیه های آن را با فرمت مناسبی در خروجی نمایش دهد. #include #include int main() { int a, b=1, c; cout cin>>a; cout while(b { c=a%b; if(c==0) cout b++; } cout getch(); return b; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ برنامه ی بدست آوردن تمام زیر مجموعه های n عضوی یک مجموعه با استفاده از توابع #include #include #include using namespace std; int **m; long q=0; long num=0; long number=0; long fact( long n ) { return ( n > 0 ? n*fact(n-1) : 1 ); } long C( long n , long r ) { return ( fact(n)/(fact®*fact(n-r)) ); } bool isPrinted(int *a, long n) { bool is=true; for(long i=0;i { is=true; for(long j=0;j { if(a[j]!=m[j]) { is=false; } } if(is)return true; } return false; } void print(int *a,long n) { int swap=0; for(long i=0;i { for(long j=i;j { if(a[j] { swap=a; a=a[j]; a[j]=swap; } } } if(!isPrinted(a,n)) { number++; cout for(long i=0;i { cout m[q]=a; if(i!=n-1) { cout } } q++; cout } } void printAll(int *a,int *b,long n,long k) { if(q { if(k==1) { print(a,n); } if(k==0) { print(a,n); } else if(k>0) { int *c, *d; long p=0; for(long j=0;j { p=0; c=new int[k-1]; for(long t=0;t { if(t!=j) { c[p]=b[t]; p++; } } d=new int[n]; for(long i=-1;i { for(long t=0;t { d[t]=a[t]; } if(i!=-1) { d=b[j]; } printAll(d,c,n,k-1); } } delete c , d; } } } int main() { time_t start , end; long n = 0 , k = 0; cout cin>>n; cout cin>>k; cout int *a=new int[n]; for(long i=0;i { cin>>a; } int *b=new int[k]; int *c=new int[n-k]; for(long i=0;i { if(i { b=a; } else { c[n-i-1]=a; } } system("cls"); cout for( long i = 0 ; i { cout if( i != n-1 ) cout } cout num=C(n,k); m=new int*[C(n,k)]; for(long i=0;i { m=new int[k]; } printAll(b,c,k,n-k); delete a , b , c; getch(); return 0; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ [h=2]الگوریتم و سورس برج هانوی در c++ (سی پلاس پلاس)[/h] سورس برنامه ی معروف برج هانوی البته بصورت تکستی و غیر ویژوال که طرز کار آن از شکل بالا پیداست. /* Sepehr Mohammad برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید. ورود یا ثبت نام Algorithmic solution is as follows 1) if TopN==1, move the single disc from A to C and stop. 2) Move the top n-1 discs from A to B, using C as Inter. 3) Move the remaining disc from A to C. 4) Move the n-1 discs from B to C, using A as destination(dest). */ #include #include #include void tower(int,char,char,char); /*prototype*/ int main() { int ndisk; clrscr(); cout cin>>ndisk; tower(ndisk,'A','B','C'); /*Calling Function*/ getch(); return 0; } /* End of program */ /********************************************/ // src = Source | aux = Auxiliry | dest = Destination void tower(int topN, char src,char aux,char dest) { if(topN == 1) { cout } else { tower(topN-1,src,dest,aux); //src to aux cout tower(topN-1,aux,src,dest); //aux to dest } } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ برنامه بدست آوردن تمام زیر مجموعه های یک مجموعه (هر تعداد عضو) با استفاده از توابع #include #include #include int power(int a,int b) { int k=1; for(int i=0;i k=a*k; return k; } void print(char aray[][10],int s1,int ar[],int s2) { int h=1; for(int i=0;i { cout for(int j=0;j { if(aray[j]=='1') { cout } } cout h++; } } int main() { int size; cout cin>>size; int ar[10]; cout for(int i=0;i cin>>ar; cout for(i=1;i cout cout int s1; s1=power(2,size); char aray[50][10]; strcpy(aray[0],"0"); strcpy(aray[1],"1"); cout int b=0; int j=0; while(power(2,j+1) { b=0; j++; for(int i=0;i { for(int l=0;l { if(l==0) { strcpy(aray[b+power(2,j)],aray); strcat(aray[b+power(2,j)],"0"); } else strcat(aray,"1"); } b++; } } print(aray,s1,ar,size); return 0;} //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تعریف رشته ها: رشته ها در زبان c++ به سه شکل زیر تعریف و معرفی میشوند: 1.آرایه کاراکتری(رشته محدود) 2.اشاره گر کاراکتری (رشته ی نا محدود)(در جلسات آینده با فراگیری اشاره گر ها کاملا با این موضوع آشنا خواهید شد) 3.کلاس استاندارد string (در جلسه آینده) مثال: char s[10]; char s[5][10]; //end نکته: در زبان C++، انتها ی رشته عدد 0 یا کاراکتر '\0' یا 'x0' قرار دارد و علامت پایان رشته جزو طول رشته خواهد بود ولی قابل استفاده نیست. یعنی هنگامی که داشته باشیم: char ch[10]; //end فقط می توانیم از 9 کاراکتر در رشته ی فوق استفاده کنیم زیرا کاراکتر آخر مربوط به علامت انتهای رشته به نام تهی(NULL) است. 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ سورس برنامه ی مثلث خیام یا مثلث پاسکال که در آن هر خانه حاصل جمع دو خانه ی بالایش است. #include #include int *charger(int *x , int *y) { for(int i=1;i { y=x[i-1]+x; } return y; } int main() { cout int rows=0; int *a=new int[100]; int *b=new int[100]; for(int i=0;i { a=0; b=0; } char answer='u'; error: cout cin>>rows; if(rows>34) { cout cout cout cout cin>>answer; if(answer=='y') { goto error; } } a[1]=1; cout while(rows>0) { for(int i=1;i { if(a!=0) cout else break; } b=charger(a,b); cout rows--; if(rows>0) { for(int i=1;i { if(b!=0) cout else break; } cout rows--; a=charger(b,a); } } getch(); return 0; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تمرین یه تمرین برای حلقه ها و شرط ها: 42- برنامه ای بنویسید که عددی از ورودی گرفته و تمام اعداد اول کوچکتر از ورودی را چاپ کند. #include void main() { int c=0,x; register j; cout cin>>x; cout for(register int i=3;i { for(j=2;j if((i%j)==0) { c=1; break; } if(c==0) cout c=0; } } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ سورس بازی "سنگ کاغذ قیچی" به زبان c++ و غیر ویژوال #include #include #include #define WINSCORE 3 // Function PickRandomOption // * Returns a random character between 's', 'x', and 'p' char PickRandomOption (void) { char option; srand ( time (NULL) ); // (re)initialize random number generator int value = rand()%3; // Generate random number between 0 and 2 switch (value) { case 0: option='s'; break; case 1: option='x'; break; case 2: option='p'; break; } return option; } // Function WhoWins // * check which of the characters passed wins. // return values: // 0= tie, 1=the first, 2=the second, -1=error int WhoWins (char a, char b) { switch (a) { case 's': if (b=='x') return 1; else if (b=='p') return 2; else return 0; case 'x': if (b=='p') return 1; else if (b=='s') return 2; else return 0; case 'p': if (b=='s') return 1; else if (b=='x') return 2; else return 0; default: return -1; } // NOTE: no break instructions were included in this switch statement // because a break instruction at the end of a case would never // been executed because there would always be a return statement // executed before. // For the same reason this peculiar function has no explicit ending // return statement. } main () { char you, me; int mypoints=0; int yourpoints=0; int winner; do { //prompt user. cout cout cin >> you; //decide computer's option and say it me = PickRandomOption(); cout // check who is the winner winner = WhoWins (you,me); // show appropiate message: if (winner==0) cout else if (winner==1) { cout else if (winner==2) { cout else cout // show current scoreboard. cout cout } while (yourpoints if (yourpoints>mypoints) cout else cout return 0; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ مقدار دهی اولیه به آرایه های کاراکتری: برای مقدار دهی اولیه به آرایه های کاراکتری دو روش وجود دارد: 1. char ch[4] = "ali"; char ch[] = "computer"; //end 2. char ch[8] = {'p','r','o','g','r','a','m','\0'}; char ch[] = {'a','l','i','\0'}; //end ورودی - خروجی رشته ها: قبلا دستورات cin و cout را برای ورودی و خروجی داده ها بررسی کرده ایم. از همین دستورات می توان برای ورودی - خروجی رشته ها استفاده کرد. در دستورات زیر cin رشته ی ch را می خواند و cout آن را در صفحه نمایش میدهد: char ch[31]; cin>>ch; cout //end خواندن رشته ها با تابع get(): get یک تابع عضو(Member Function) شی(Object) ورودی cin است و کاربرد های مختلفی دارد: 1. کاربرد cin.get() برای خواندن یک کاراکتر: char ch; ch=cin.get(); //end 2. کاربرد cin.get() برای خواندن رشته ها: 1)cin.get(نام رشته, طول رشته); 2)cin.get(نام رشته, طول رشته, 'جدا کننده'); //end مثال: char x[20]; cin.get(8,15); cin.get(5,15,'.'); //end تقاوت cin و cin.get() در خواندن رشته ها: در دستور cin.get فقط کلید Enter، انتهای رشته را مشخص میکند، مگر اینکه برنامه نویس کاراکتر دیگری را برای این منظور مشخص کند. در این دستور رشته میتواند حاوی فاصله(Space) و یا Tab باشد. در حالی که در دستور cin، فاصله(Space) و Tab نیز به عنوان جدا کننده تلقّی شده، انتهای رشته را مشخص می کنند. 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ آرایه های کاراکتری به عنوان آرگومان تابع: چون رشته ها در زبان C++ همان آرایه های یک بعدی است که از نوع کاراکتری است. شیوه ی ارسال رشته ها به توابع همانند آرایه است، یعنی در آرگومان تابع نام رشته ذکر میشود و پارامتر معادل آن میتواند آرایه ای از کاراکتر ها با طول معیّن باشد. شکل کلی: void f1(char []); int main() { char s[21]; ... f1(s); return 0; } void f1(char s[]) { ... } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تمرین یه تمرین با حلقه ها: 43- برنامه ای بنویسید که با استفاده از حلقه ها، یک جدول ضرب 10*10 نمایش دهد. #include int main() { for(int i=1; i { for (int j=1; j cout cout } return 0; } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تمرین اینم یه تمرین برای کاراکتر ها: 44- برنامه ای بنویسید که یک متن از ورودی گرفته(انتهای متن Enter باشد) و تعداد کاراکتر های استفاده شده در آن را نمایش دهد.(با حداکثر 2 متغیر) #include #include void main() { int c=-1; char ch; cout do { ch=getche(); c++; }while(ch!=13); cout } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ اینم سورس برنامه ی معروف کوله پشتی به زبان C++ #include #include #include void sortbypw(int p[],int w[],int n) { int i,t,j; for (i=0;i for (j=i+1;j if(((float)p/w) { t=p; p=p[j]; p[j]=t; t=w; w=w[j]; w[j]=t; } } float knapsack(int p[],int w[],int n,int m) { sortbypw(p,w,n); int w1=m; int i=0; float pp=0; while (i0) { if (w { cout w1-=w; pp+=p; i++; } else { cout pp+=w1*((float)p/w); w1=0; } } return pp; } void main() { int p[100]={6,12,7,18,9,30}; int w[100]={1,5,3,9,5,20}; clrscr(); cout char ch=getche(); if (ch=='n') cout else { int n,m; cout cin>>m; cout cin>>n; for (int i=0;i { cout cin>>p; cout cin>>w; gotoxy(20,wherey()-2); cout gotoxy(1,wherey()+2); cout } cout } getch(); } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ به در خواست یکی از دوستان الگوریتم پیچیده و کارآمد کد گذاری هافمن رو میزارم. #include #include #include #include #include struct treenode{ int data; int num; treenode *next; treenode *right; treenode *left; }*start=NULL,*end=NULL,*p; struct code{ char bcode[12]; int ch; }coding[256]; struct tree{ int data; int num; }atree[512]; int o=0; int search(int i); void insert(int i); void insertm(struct treenode *l); void sort(); void create(); void binary(struct treenode *n,char byte[],int i); int searchc(int i); void write(); void read(); void tree(struct treenode *n,int i); int numnode=0; int numchar=0; char filename[25]; void main() { clrscr(); FILE *fp1,*fp2; cout cin>>filename; fp1=fopen(filename,"r+b"); if (fp1==NULL) { cout getch(); exit(1); } int i=getc(fp1); while (i!=-1) { numchar++; if (search(i)==-1) insert(i); i=getc(fp1); } fclose(fp1); sort(); create(); char byte[20]={0}; binary(start,byte,0); tree(start,1); write(); cout read(); cout getch(); } //*************************search****************************** int search(int i) { struct treenode *h; h=start; while(h) { if (h->data==i) { h->num=h->num+1; return 0; } h=h->next; } return -1; } //**************************insert****************************** void insert(int i) { p=new treenode; p->data=i; p->num=1; p->right=p->left=p->next=NULL; if (start==NULL) { start=p; end=p; } else { end->next=p; end=p; } } //******************************Sort******************* void sort() { struct treenode *h1,*h2,*n2,*right,*left; int d,n; n2=start; while(n2) { h1=start; h2=start->next; while(h2) { if (h1->num > h2->num) { d=h1->data; n=h1->num; right=h1->right; left=h1->left; h1->data=h2->data; h1->num=h2->num; h1->right=h2->right; h1->left=h2->left; h2->data=d; h2->num=n; h2->right=right; h2->left=left; } h1=h2; h2=h2->next; } n2=n2->next; } } //****************Create******************************* void create() { struct treenode *h; while (start->next) { int i1,i2; p=new treenode; p->left=start; p->right=start->next; p->num=start->num+start->next->num; p->data=-1; p->next=NULL; h=start; start=start->next->next; h->next->next=NULL; h->next=NULL; insertm(p); sort(); }} //********************Insertm**************************** void insertm(struct treenode *l) { if (start==NULL) { start=l; end=l; } else { end->next=l; end=l; } } //********************Binary**************************** void binary(struct treenode *n,char byte[],int i) { if (n->data==-1) { char b1[20]={0},b2[20]={0}; strcpy(b1,byte); strcpy(b2,byte); b1='1'; binary(n->right,b1,i+1); b2='0'; binary(n->left,b2,i+1); } else { coutdata strcpy(coding[o].bcode,byte); coding[o++].ch=n->data; } } //*********************Coding******************************* void write() { FILE *fp1,*fp2; fp1=fopen(filename,"r+b"); fp2=fopen("Code.txt","w+b"); //************************************************************** int i=1; while (i { fprintf(fp2,"%d",atree.data); i++; } //***************************************************************** i=getc(fp1); int j=0,place=1; unsigned char bytebuf=0; while (i!=-1) { j=searchc(i); int y=0; while (coding[j].bcode[y]) { if (coding[j].bcode[y]=='1') bytebuf |= place; if (place==128) { putc(bytebuf,fp2); place=1; bytebuf=0; } else place y++; } i=getc(fp1); } if (place fclose(fp1); fclose(fp2); } //********************searchcode*************************** int searchc(int i) { int j=0; while (j if (coding[j].ch==i) return j; else j++; } //**********************Encode***************************** void read() { FILE *fp1,*fp2; fp1=fopen("Decode.txt","w+b"); fp2=fopen("Code.txt","r+b"); //************************************************ int i=1,a; while (i { fscanf(fp2,"%d",&a); i++; } //************************************************ i=getc(fp2); int j=0,place=1; struct treenode *n; unsigned char bytebuf=0; while (i!=-1) { n=start; while (n->data==-1) { int x=(place & i)?1:0; if (x==1) n=n->right; else n=n->left; if (place==128) {i=getc(fp2); place=1; } else place } if (j++ putc(n->data,fp1); } fclose(fp1); fclose(fp2); } //********************************************************* void tree(struct treenode *n,int i) { atree.data=n->data; atree.num=n->num; numnode=i; if (n->left!=NULL) tree(n->left,2*i); if (n->right!=NULL) tree(n->right,2*i+1); } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ رشته هایی که تا اینجا بر روی آنها بحث کردیم، به رشته های زبان C معروف هستند، چرا که از زبان C به C++ انتقال یافته اند. هم چنین هیچ یک از عملگر های C++ بر روی رشته های C عمل نمی کنند. اما در C++ استاندارد کلاسی با نام string در سرفایل string.h یا cstring.h فراهم شده تا بسیاری از عملیات روی رشته هایی که بصورت آرایه ای از کاراکتر ها هستند را تسهیل کند. تعریف رشته ای از نوع string: تعریف رشته از نوع string بسیار آسان و به صورت کلی زیر است: ;نام رشته string چنانکه در دستور فوق مشاهده میکنید، در هنگام تعریف اینگونه رشته ها طول رشته به هیچ عنوان ذکر نمیشود و مدیریت حافظه از نظر میزان فضای لازم برای یک رشته به عهده ی خود کامپایلر میباشد. مقدار دهی به رشته های string: 1.می توان رشته را بهصورت مستقیم مقدار دهی اولیه کرد: string str="Hello"; //end 2.می توان رشته را به واسطه ی رشته ی دیگری مقدار دهی کرد: char s[]="Hello"; string str=s; string s1="Hello"; string s2=s1; //end هم چنین می توان رشته ای از نوع string را در هر کجای برنامه به رشته ی دیگری با طول متفاوت مقدار دهی کرد و چنانچه پیشتر گفته شد، مدیریت حافظه از نظر طول رشته بر عهده ی برنامه نویس نیست. 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ این برنامه با استفاده از ساختار ها ابتدا یک عدد به عنوان عدد اتمی گرفته و اتم مربوط به آن عدد اتمی را نمایش میدهد. //build a struct for elements #include #include struct Element { int atomicNumber; char* name; }; // end struct Element void setData(int a , Element &e) { e.atomicNumber=a; switch(a) { case 1 : e.name="Hydrogen";break; case 2 : e.name="Helium";break; case 3 : e.name="Lithium";break; case 4 : e.name="Beryllium";break; case 5 : e.name="Boron";break; case 6 : e.name="Carbon";break; case 7 : e.name="Nitrogen";break; case 8 : e.name="Oxygen";break; case 9 : e.name="Flourine";break; case 10 : e.name="Neon";break; case 11 : e.name="Sodium";break; case 12 : e.name="Magnesium";break; case 13 : e.name="Aluminium";break; case 14 : e.name="Silicon";break; case 15 : e.name="Phosphorus";break; case 16 : e.name="Sulfur";break; case 17 : e.name="Chlorine";break; case 18 : e.name="Argon";break; case 19 : e.name="Potassium";break; case 20 : e.name="Calcium";break; case 21 : e.name="Scandium";break; case 22 : e.name="Titanium";break; case 23 : e.name="Vanadium";break; case 24 : e.name="Chromium";break; case 25 : e.name="Manganese";break; case 26 : e.name="Iron";break; case 27 : e.name="Cobalt";break; case 28 : e.name="Nickel";break; case 29 : e.name="Copper";break; case 30 : e.name="Zinc";break; case 31 : e.name="Gallium";break; case 32 : e.name="Germanium";break; case 33 : e.name="Arsenic";break; case 34 : e.name="Selenium";break; case 35 : e.name="Bromine";break; case 36 : e.name="Krypton";break; case 37 : e.name="Rubidium";break; case 38 : e.name="Strontium";break; case 39 : e.name="Yttrium";break; case 40 : e.name="Zirconium";break; case 41 : e.name="Niobium";break; case 42 : e.name="Molybdenum";break; case 43 : e.name="Technetium";break; case 44 : e.name="Ruthenium";break; case 45 : e.name="Rhodium";break; case 46 : e.name="Palladium";break; case 47 : e.name="Silver";break; case 48 : e.name="Cadmium";break; case 49 : e.name="Indium";break; case 50 : e.name="Tin";break; case 51 : e.name="Antimony";break; case 52 : e.name="Tellurium";break; case 53 : e.name="Iodine";break; case 54 : e.name="Xenon";break; case 55 : e.name="Cesium";break; case 56 : e.name="Barium";break; case 57 : e.name="Lanthanum";break; case 58 : e.name="Cerium";break; case 59 : e.name="Praseodymium";break; case 60 : e.name="Neodymium";break; case 61 : e.name="Promethium";break; case 62 : e.name="Samarium";break; case 63 : e.name="Europium";break; case 64 : e.name="Gadolinium";break; case 65 : e.name="Terbium";break; case 66 : e.name="Dysprosium";break; case 67 : e.name="Holmium";break; case 68 : e.name="Thulium";break; case 69 : e.name="Ytterbium";break; case 70 : e.name="Lutetium";break; case 71 : e.name="Hafnium";break; case 72 : e.name="Tantalum";break; case 73 : e.name="Tungsten";break; case 74 : e.name="Rhenium";break; case 75 : e.name="Osmium";break; case 76 : e.name="Iridium";break; case 78 : e.name="Platinum";break; case 79 : e.name="Gold";break; case 80 : e.name="Mercury";break; case 81 : e.name="Thalium";break; case 82 : e.name="Lead";break; case 83 : e.name="Bismuth";break; case 84 : e.name="Polonium";break; case 85 : e.name="Astatine";break; case 86 : e.name="Radon";break; case 87 : e.name="Francium";break; case 88 : e.name="Radium";break; case 89 : e.name="Actinium";break; case 90 : e.name="Thorium";break; case 91 : e.name="Protactinium";break; case 92 : e.name="Uranium";break; case 93 : e.name="Neptunium";break; case 94 : e.name="Plutinium";break; case 95 : e.name="Americium";break; case 96 : e.name="Curium";break; case 97 : e.name="Berkelium";break; case 98 : e.name="Californium";break; case 99 : e.name="Einsteinium";break; case 100 : e.name="Fermium";break; case 101 : e.name="Mendelevium";break; case 102 : e.name="Nobelium";break; case 103 : e.name="Lawrencium";break; case 104 : e.name="Rutherfordium";break; case 105 : e.name="Dubnium";break; case 106 : e.name="Seaborgium";break; case 107 : e.name="Bohrium";break; case 108 : e.name="Hassium";break; case 109 : e.name="Meitnerium";break; case 110 : e.name="Darmstadtium(Ununnilium)";break; case 111 : e.name="Roentgenium(Unununium)";break; case 112 : e.name="Ununbium";break; } } void viewData(Element e) { cout } void mainMenu() { cout cout cout cout cout cout cout } int main() { int anumber; getData: clrscr(); mainMenu(); cout Element element; cin>>anumber; if(anumber0) { setData(anumber,element); clrscr(); viewData(element); getch(); goto getData; } else if(anumber==113) { clrscr(); cout getch(); return 0; } else { cout getch(); goto getData; } } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ تمرین یکی از دوستان یه برنامه خواسته بودن که چون دیدم تمرین خیلی خوبیه، اینجا میزارمش: 45- برنامه ای بنویسید که عددی از ورودی گرفته و بر اساس آن جدولی به شکل زیر نشان دهد. مثال برای ورودی 3: #include void main() { int n1,n2,tab,temp=1; cout cin>>n1; n2=n1; tab=n1-1; for(;n2>0;n2--) { for(int tab2=tab;tab2>0;tab2--) cout tab--; for(int i=temp;i>0;i--) cout temp++; cout } } //end 2 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ این برنامه ی جالب دو عدد صحیح مثبت از کاربر میگیره و جمعشون رو بصورت یک عدد صحیح چاپ میکنه و تا 99 رقم کاربرد داره! #include #include void main() { int x1[99]={0}, x2[99]={0}, out[99]={0},i=-1,i2=-1,count; char temp[99]; cout do //get it using getche() { i++; temp=getche(); }while(temp!=13); i--; int ii=i; for(int c=0;c { x1[c]=temp[ii]-48; ii--; } ii=i; cout for(;ii>=0;ii--) cout cout cout do //get it using getche() { i2++; temp[i2]=getche(); }while(temp[i2]!=13); i2--; ii=i2; for(c=0;c { x2[c]=temp[ii]-48; ii--; } cout ii=i2; for(;ii>=0;ii--) cout count=(i>i2)?i:i2; //recognize biggest array int ex=0, temp2, temp3; //define some vars for temporary number and the extra for(ii=0;ii { temp2=(x1[ii]+x2[ii]); temp2+=ex; if(temp2 out[ii]=temp2; else { temp3=(temp2/10); ex=temp3; temp3*=10; out[ii]=(temp2-temp3); } } cout for(;count>=0;count--) cout } //end 1 لینک به دیدگاه
poor!a 15130 مالک اشتراک گذاری ارسال شده در 3 آذر، ۱۳۹۰ strcpy تابع انتساب رشته های کاراکتری، موجود در cstring.h شکل کلی تابع: ;(رشته مبدا ،رشته مقصد)strcpy مثال: strcpy(str1, str2); strcpy(str, "Computer"); //end تذکر: 1. کپی کردن هر گونه رشته در رشته ای از نوع string به واسطه ی دستور انتساب(=) صورت میگیرد. بنابراین هیچ یک از پارامتر ها strcpy نمی تواند از نوع string باشد. 2. مراقب باشید که رشته ی مقصد طول کوچکتری نسبت به رشته ی مبدا نداشته باشد. 3 لینک به دیدگاه
ارسال های توصیه شده