lpforever
Junior Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору #include <iostream> #include <fstream> using namespace std; float a[21]; int i; void gen(); void sp(); void sv(); int main() { int n; // system("clear"); while (1) { cout<<"\n\nSelect menu item:\n\n1: Sgenerit' chisla\n2: Sortirovka po ubivaniyu puzyrkom\n3: Sortirovka po vozrostaniyu viborom\n4: Exit\n\n"; cin>>n; switch (n){ case 1:{ gen(); break; } case 2: { sp(); break; } case 3: { sv(); break; } case 4: { cout<<"\ngood bUy\n"; exit(0); } default : { cout<<"\nError! Try again...\n"; break; } } } system("PAUSE"); return 0; } void gen() { srand(time(NULL)); ofstream file ("binarydata", ios::out|ios::binary|ios::ate); if (file.is_open()) { for(i=0;i<=20;i++) { a[i]=rand()/((float)RAND_MAX)*(130-30)+30; file.write((char*)&a[i],sizeof((char*)&a[i])); cout<<"a["<<i+1<<"]="<<a[i]<<"\n"; } file.close(); cout << "the complete file content is in memory"; } return; } void sp() { int s,j,k; float max,t; if (i==0) printf("\nSgener'te chisla!\n"); else { printf("\nBefore:\n"); for(s=0;s<=20;s++) printf("a[%2d]=%5.2f\n",s+1,a[s]); for(s=0;s<=20;s++) { max=a[s]; k=s; for(j=s;j<=20;j++) if(max<a[j]) { max=a[j]; k=j; } t=a[s]; a[s]=a[k]; a[k]=t; } printf("\nAfter:\n"); for(s=0;s<=20;s++) printf("a[%2d]=%5.2f\n",s+1,a[s]); } return; } void sv() { int j,k; float t; if (i==0) printf("\nSgener'te chisla!\n"); else { printf("\nBefore:\n"); for(j=0;j<=20;j++) printf("a[%2d]=%5.2f\n",j+1,a[j]); for(j=0;j<20;j++) for(k=0;k<20;k++) if(a[k]<a[k+1]) { t=a[k]; a[k]=a[k+1]; a[k+1]=t; } printf("\nAfter:\n"); for(j=0;j<=20;j++) printf("a[%2d]=%5.2f\n",j+1,a[j]); } return; } | Всего записей: 154 | Зарегистр. 14-12-2005 | Отправлено: 13:18 03-12-2006 | Исправлено: lpforever, 13:29 03-12-2006 |
|