Từ 1 tới 9 trên tổng số 9 kết quả

Đề tài: Bài tập C++ | Bài tập lớn tới 500 câu lệnh, giúp mình xem lỗi gì?

  1. #1
    Ngày gia nhập
    04 2007
    Nơi ở
    hà nội
    Bài viết
    9

    Smile Bài tập C++ | Bài tập lớn tới 500 câu lệnh, giúp mình xem lỗi gì?

    Thật ra em định làm một phần mềm nhỏ từ C/C++ .Nhưng gõ xong nhìn lại thì thấy có hơn 500 câu lệnh.Mừng một nỗi là F9 thi Succseful. But ctrl+F9 thì không chạy.Nó quay lại màn hình khởi động ngay.Thế mới đau.
    Mọi người cho em hỏi là hơn 500 câu lệnh thì có ảnh hưởng gì tới chương trình dịch không? (Em dùng Turbo C++ IDE).Vì em bỏ bớt một số câu lệnh xuống còn 400 thì chạy ngon ơ.nhưng không có đầy đủa các tính năng của phần mềm mà em mong muốn.
    vậy thì không biết chương trình C++ lớn nó làm ăn ra sao khi có nhiều câu lệnh. một điều nữa là chương trình của em chạy ngon ơ nhưng một lúc sau thì xung đột với window kô bít tại sao.
    Mọi người và anh Admin giúp em giải đáp thắc mắc này nhé! vì em cũng mới học C++ thui.

    Sau đây em port thử bài của em cho mọi người xem sao !

    C Code:
    1. //Phan Mem Dau Tay
    2. #include<conio.h>
    3. #include<stdlib.h>
    4. #include <dos.h>
    5. #include<iostream.h>
    6. #include<string.h>
    7. #include<ctype.h>
    8. #include<stdio.h>
    9. #include<string.h>
    10. #define INTR 0x1C
    11. #define ATTR 0x7900
    12.  
    13. #ifdef __cplusplus
    14.     #define __CPPARGS ...
    15. #else
    16.     #define __CPPARGS
    17. #endif
    18.  
    19. #define x1 7
    20. #define x2 32
    21. #define x3 58
    22. #define y1 8
    23. #define y2 18
    24. #define y3 28
    25. #define y4 38
    26. #define M 14
    27. #define N 15+128
    28. #define menux 10
    29. #define menuy 15
    30.  
    31. extern unsigned _heaplen = 1024;
    32. extern unsigned _stklen  = 512;
    33. void interrupt ( *oldhandler)(__CPPARGS);
    34. typedef unsigned int (far *s_arrayptr);
    35. struct time t;
    36.  
    37. void interrupt handler(__CPPARGS)
    38. {
    39.   s_arrayptr screen[80];
    40.   static int count,ticker;
    41.   int tam;
    42.   screen[0] = (s_arrayptr) MK_FP(0xB800,0);
    43.   count++;
    44.  
    45.   if (ticker==0)
    46.   {
    47.     t.ti_sec++;
    48.     ticker=( ((count%5)==0)?19:18);
    49.     if (t.ti_sec==60)
    50.       {
    51.         t.ti_sec=0;
    52.         t.ti_min++;
    53.       }
    54.     if (t.ti_min==60)
    55.       {
    56.         t.ti_min=0;
    57.         t.ti_hour++;
    58.       }
    59.     if (t.ti_hour==24)
    60.       t.ti_hour=0;
    61.  
    62.     screen[0][72] = t.ti_hour/10 + '0' + ATTR;
    63.     screen[0][73] = t.ti_hour%10 + '0' + ATTR;
    64.     screen[0][74] = ':' + ATTR;
    65.     screen[0][75] = t.ti_min/10 + '0' + ATTR;
    66.     screen[0][76] = t.ti_min%10 + '0' + ATTR;
    67.     screen[0][77] = ':' + ATTR;
    68.     screen[0][78] = t.ti_sec/10 + '0' + ATTR;
    69.     screen[0][79] = t.ti_sec%10 + '0' + ATTR;
    70.   }
    71.   ticker--;
    72.   oldhandler();
    73. }
    74.  
    75. void main()
    76. {int i,d,m,y,x=0,u=0,nhuan,q,s,v,z,nam;char j,c,ten[7];
    77.  int m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,menu,gioitinh;
    78.  char menu1,menu2,menu3,menu4,menu5,thoat;
    79.  
    80.  char can[][5]={"GIAP","AT","BINH","DINH","MAU","KI","CANH","TAN","NHAM","QUY"};
    81.  char chi[][5]={"TY","SUU","DAN","MAO","THIN","TI","NGO","MUI","THAN","DAU","TUAT","HOI"};
    82.  char n[7][4]={"CN","T2","T3","T4","T5","T6","T7"};
    83.  ra: {          /*NHAN LON CUA CA CHUONG TRINH*/
    84.  textbackground(1);clrscr();
    85.  textcolor(11);
    86.  gotoxy(menux-8,menuy-12);cprintf("Sinh Vien: CHUNG MINH TU");
    87.  gotoxy(menux-8,menuy-10);cprintf("MaSoSV: 506101066");
    88.  gotoxy(menux-8,menuy-8);cprintf("SV Lop Cong Nghe Phan Mem & Quan Tri Mang");
    89.  gotoxy(menux-8,menuy-6);cprintf("Khoa CNTT-Truong DH PHUONG DONG");
    90.  gotoxy(menux-8,menuy-4);cprintf("Giang Vien Huong Dan: TRAN VAN LOC");
    91.  textcolor(10);
    92.  gotoxy(menux,menuy);cprintf("XIN CHAO! CAC BAN DANG SU DUNG PHAN MEM DAU TAY CUA TOI");
    93.  gotoxy(menux+8,menuy+2);cprintf(">> PHAN MEM UNG DUNG LICH DIEN TU <<");
    94.  textcolor(5); gotoxy(menux-2,menuy+4);cprintf("Phan Mem Rat De Su Dung Va Thiet Thuc.Have Fun!");
    95.  textcolor(2);gotoxy(menux-2,menuy+6);cprintf("MENU DE SU DUNG CHUONG TRINH:");
    96.  textcolor(14);
    97.  gotoxy(menux-2,menuy+8);cprintf("1..XEM LICH & NGAY THANG. ");
    98.  gotoxy(menux-2,menuy+10);cprintf("2..XEM NAM THEO CAN CHI CUA MOT NAM NAO DO.");
    99.  gotoxy(menux-2,menuy+12);cprintf("3..XEM THOI GIAN HIEN TAI CUA MAY TINH.");
    100.  gotoxy(menux-2,menuy+14);cprintf("4..XEM SO TU VI GIUM BAN. ");
    101.  gotoxy(menux-2,menuy+16);cprintf("5..MOT GAME NHO NHO DE GIAI TRI. ");
    102.  gotoxy(menux-2,menuy+18);cprintf("An 'Q' De Thoat Chuong Trinh!");
    103.  textcolor(4);gotoxy(menux-2,menuy+20);cprintf("Hay Nhap Vao So Cua Menu De Chon: ");thoat=getch();
    104.    if(thoat=='q') goto ra1;
    105.    if(thoat-'q') cin>>menu;
    106.    if((menu-1)*(menu-2)*(menu-3)*(menu-4)*(menu-5))
    107.      {textcolor(10);gotoxy(menux,menuy+24);cprintf("Xin Loi Vi Menu Moi Chi Co 5 Chuc Nang !");
    108.       gotoxy(menux,menuy+26);cprintf("Hay Chon Lai Chuc Nang Muon Su Dung !");
    109.       getch();
    110.       goto ra; }
    111.  
    112.   if(menu==1)  //bat dau thuc hien menu 1
    113.      { while(i!=27)
    114.        { clrscr();
    115.  textcolor(10);cprintf("Nhap Vao Ngay Thang Nam\n\r");scanf("%d%d%d",&d,&m,&y);
    116.  if(((y%4==0)&&(y%100))||(y%400==0)) nhuan=1;else nhuan=0;
    117.  gotoxy(30,1);textcolor(7);
    118.  switch(m)
    119.   { case 1:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d;}break;
    120.     case 2:{ cprintf("Thang %d Nam %d Co %d Ngay",m,y,28+nhuan);u=d+3;}break;
    121.     case 3:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+3+nhuan;}break;
    122.     case 4:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+6+nhuan;}break;
    123.     case 5:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+1+nhuan;}break;
    124.     case 6:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+4+nhuan;}break;
    125.     case 7:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+6+nhuan;}break;
    126.     case 8:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+2+nhuan;}break;
    127.     case 9:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+5+nhuan;}break;
    128.     case 10:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+nhuan;}break;
    129.     case 11:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+3+nhuan;}break;
    130.     case 12:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+5+nhuan;}break;
    131.   }
    132.   m1=31;m2=28+nhuan;m3=31;m4=30;m5=31;m6=30;m7=31;m8=31;m9=30;m10=31;m11=30;m12=31;
    133.   x=y-1+(y-1)/4-(y-1)/100+(y-1)/400;
    134.   textcolor(13);gotoxy(30,3);cprintf("Ngay %d Thang %d Nam %d La Ngay ",d,m,y);
    135. switch((u+x-1)%7)
    136.  { case 0:{cprintf("THU HAI");}break;
    137.    case 1:{cprintf("THU BA");}break;
    138.    case 2:{cprintf("THU TU");}break;
    139.    case 3:{cprintf("THU NAM");}break;
    140.    case 4:{cprintf("THU SAU");}break;
    141.    case 5:{cprintf("THU BAY");}break;
    142.    case 6:{cprintf("CHU NHAT");}break;
    143.  }
    144. switch(x%7)
    145.  { case 0:s=2;break;
    146.    case 1:s=3;break;
    147.    case 2:s=4;break;
    148.    case 3:s=5;break;
    149.    case 4:s=6;break;
    150.    case 5:s=7;break;
    151.    case 6:s=1;break;
    152.  }
    153. textcolor(6);gotoxy(x2-10,y1-3);cprintf("Ban Co Muon Xem Lich Nam %d Khong(y/n)?",y);
    154. j=getch();
    155. if(j=='y'){
    156. gotoxy(x2-10,y1-3); clreol();
    157. textcolor(3);gotoxy(x2-10,y1-3);cprintf("BAN DANG XEM LICH CUA NAM %d",y);
    158.  
    159. //In To Lich Thang Mot
    160. textcolor(11);gotoxy(x1,y1);cprintf("THANG MOT");
    161. gotoxy(x1,y1+2);
    162. for(i=0;i<7;i++)
    163.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    164.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    165.     if(i*(i-6)){textcolor(M);cprintf("%-2s ",n[i]);} }
    166. gotoxy(x1,y1+4);
    167. for(i=1;i<s;i++) printf("   ");
    168. for(i=1,v=1;i<=m1;i++,s++)
    169.   {
    170.     if(s==1) {textcolor(4);cprintf("%2d ",i);}
    171.     if((s-7)*(s-1)){textcolor(M);cprintf("%2d ",i);}
    172.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    173.     if(s==7) {printf("\n");gotoxy(x1,y1+4+v);s=0;v++;}
    174.     if((i==d)&&(m==1)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    175.   }
    176.  
    177. //In To Lich Thang Hai
    178. textcolor(11);gotoxy(x2,y1);cprintf("THANG HAI");
    179. gotoxy(x2,y1+2);
    180. for(i=0;i<7;i++)
    181.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    182.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    183.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]);} }
    184. gotoxy(x2,y1+4);
    185. for(i=1;i<s;i++) printf("   ");
    186. for(i=1,v=1;i<=m2;i++,s++)
    187.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    188.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    189.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    190.     if(s==7) {printf("\n");gotoxy(x2,y1+4+v);s=0;v++;}
    191.     if((i==d)&&(m==2)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    192.   }
    193.  
    194. //In To Lich Thang Ba
    195. textcolor(11);gotoxy(x3,y1);cprintf("THANG BA");
    196. gotoxy(x3,y1+2);
    197. for(i=0;i<7;i++)
    198.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    199.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    200.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    201. gotoxy(x3,y1+4);
    202. for(i=1;i<s;i++) printf("   ");
    203. for(i=1,v=1;i<=m3;i++,s++)
    204.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    205.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    206.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    207.     if(s==7) {printf("\n");gotoxy(x3,y1+4+v);s=0;v++;}
    208.     if((i==d)&&(m==3)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    209.   }
    210.  
    211. //In To Lich Thang Tu
    212. textcolor(11);gotoxy(x1,y2);cprintf("THANG TU");
    213. gotoxy(x1,y2+2);
    214. for(i=0;i<7;i++)
    215.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    216.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    217.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    218. gotoxy(x1,y2+4);
    219. for(i=1;i<s;i++) printf("   ");
    220. for(i=1,v=1;i<=m4;i++,s++)
    221.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    222.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    223.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    224.     if(s==7) {printf("\n");gotoxy(x1,y2+4+v);s=0;v++;}
    225.     if((i==d)&&(m==4)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    226.   }
    227.  
    228. //In To Lich Thang Nam
    229. textcolor(11);gotoxy(x2,y2);cprintf("THANG NAM");
    230. gotoxy(x2,y2+2);
    231. for(i=0;i<7;i++)
    232.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    233.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    234.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    235. gotoxy(x2,y2+4);
    236. for(i=1;i<s;i++) printf("   ");
    237. for(i=1,v=1;i<=m5;i++,s++)
    238.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    239.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    240.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    241.     if(s==7) {printf("\n");gotoxy(x2,y2+4+v);s=0;v++;}
    242.     if((i==d)&&(m==5)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    243.   }
    244.  
    245. //In To Lich Thang Sau
    246. textcolor(11);gotoxy(x3,y2);cprintf("THANG SAU");
    247. gotoxy(x3,y2+2);
    248. for(i=0;i<7;i++)
    249.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    250.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    251.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    252. gotoxy(x3,y2+4);
    253. for(i=1;i<s;i++) printf("   ");
    254. for(i=1,v=1;i<=m6;i++,s++)
    255.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    256.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    257.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    258.     if(s==7) {printf("\n");gotoxy(x3,y2+4+v);s=0;v++;}
    259.     if((i==d)&&(m==6)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    260.   }
    261.  
    262. //In To Lich Thang Bay
    263. textcolor(11);gotoxy(x1,y3);cprintf("THANG TAM");
    264. gotoxy(x1,y3+2);
    265. for(i=0;i<7;i++)
    266.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    267.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    268.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    269. gotoxy(x1,y3+4);
    270. for(i=1;i<s;i++) printf("   ");
    271. for(i=1,v=1;i<=m7;i++,s++)
    272.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    273.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    274.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    275.     if(s==7) {printf("\n");gotoxy(x1,y3+4+v);s=0;v++;}
    276.     if((i==d)&&(m==7)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    277.   }
    278.  
    279. //In To Lich Thang Tam
    280. textcolor(11);gotoxy(x2,y3);cprintf("THANG TAM");
    281. gotoxy(x2,y3+2);
    282. for(i=0;i<7;i++)
    283.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    284.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    285.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    286. gotoxy(x2,y3+4);
    287. for(i=1;i<s;i++) printf("   ");
    288. for(i=1,v=1;i<=m8;i++,s++)
    289.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    290.     if((s-7)*(s-1)){textcolor(M);cprintf("%2d ",i);}
    291.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    292.     if(s==7) {printf("\n");gotoxy(x2,y3+4+v);s=0;v++;}
    293.     if((i==d)&&(m==8)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    294.   }
    295.  
    296. //In To Lich Thang Chin
    297. textcolor(11);gotoxy(x3,y3);cprintf("THANG CHIN");
    298. gotoxy(x3,y3+2);
    299. for(i=0;i<7;i++)
    300.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    301.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    302.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    303. gotoxy(x3,y3+4);
    304. for(i=1;i<s;i++) printf("   ");
    305. for(i=1,v=1;i<=m9;i++,s++)
    306.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    307.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    308.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    309.     if(s==7) {printf("\n");gotoxy(x3,y3+4+v);s=0;v++;}
    310.     if((i==d)&&(m==9)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    311.   }
    312.  
    313. //In To Lich Thang Muoi
    314. textcolor(11);gotoxy(x1,y4);cprintf("THANG MUOI");
    315. gotoxy(x1,y4+2);
    316. for(i=0;i<7;i++)
    317.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    318.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    319.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    320. gotoxy(x1,y4+4);
    321. for(i=1;i<s;i++) printf("   ");
    322. for(i=1,v=1;i<=m10;i++,s++)
    323.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    324.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    325.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    326.     if(s==7) {printf("\n");gotoxy(x1,y4+4+v);s=0;v++;}
    327.     if((i==d)&&(m==10)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    328.   }
    329.  
    330. //In To Lich Thang Muoi Mot
    331. textcolor(11);gotoxy(x2,y4);cprintf("THANG MUOI MOT");
    332. gotoxy(x2,y4+2);
    333. for(i=0;i<7;i++)
    334.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    335.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    336.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    337. gotoxy(x2,y4+4);
    338. for(i=1;i<s;i++) printf("   ");
    339. for(i=1,v=1;i<=m11;i++,s++)
    340.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    341.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    342.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    343.     if(s==7) {printf("\n");gotoxy(x2,y4+4+v);s=0;v++;}
    344.     if((i==d)&&(m==11)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    345.   }
    346.  
    347. //In To Lich Thang Muoi Hai
    348. textcolor(11);gotoxy(x3,y4);cprintf("THANG MUOI HAI");
    349. gotoxy(x3,y4+2);
    350. for(i=0;i<7;i++)
    351.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    352.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    353.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    354. gotoxy(x3,y4+4);
    355. for(i=1;i<s;i++) printf("   ");
    356. for(i=1,v=1,z=1;i<=m12;i++,s++)
    357.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    358.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    359.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    360.     if(s==7) {printf("\n");gotoxy(x3,y4+4+v);s=0;v++;z++;}
    361.     if((i==d)&&(m==12)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    362.   }
    363. printf("\n\n");printf("De Thoat Khoi Menu Hay An 'ESC'....");
    364. printf("\nDe Tiep Tuc Xem Hay An 'ENTER'....");getch(); }//ket thuc if(j=='y')
    365. else goto ra;
    366.     menu1=getch();i=toascii(menu1);
    367.        }
    368.      goto ra;  }//ket thuc menu 1
    369.  
    370.  
    371.    if(menu==2)  //bat dau thuc hien menu 2
    372.     { while(i!=27)
    373.        {clrscr();
    374. textcolor(2);gotoxy(2,6);cprintf("Hay Nhap Vao Mot Nam Nao Do  ");cin>>nam;
    375. textcolor(3);gotoxy(2,8);cprintf("\nNam %d La Nam %s %s Theo Can Chi",nam,can[(nam+6)%10],chi[(nam+8)%12]);
    376. textcolor(15);gotoxy(2,40);cprintf("An 'ESC' De Thoat Khoi Menu");
    377.          gotoxy(2,42);cprintf("An 'ENTER' De Tiep Tuc Xem ");
    378.     menu2=getch();i=toascii(menu2);}
    379.      goto ra;
    380.      }  //ket thuc menu 2
    381.    if(menu==3)  //bat dau thuc hien menu 3
    382.      { do
    383.        {clrscr();
    384.   gettime(&t);
    385.   oldhandler = getvect(INTR);
    386.   setvect(INTR, handler);
    387.   menu=getch();i=toascii(menu);goto ra;
    388.   setvect(INTR,oldhandler);
    389.   keep(0, (_SS + (_SP/16) - _psp));
    390.    }
    391.     while(i!=27);
    392.      }  //ket thuc menu 3
    393.    if(menu==4)
    394.      {textcolor(10);gotoxy(menux,menuy+24);cprintf("Menu Dang Trong Thoi Gian Hoan Thien.");
    395.       gotoxy(menux,menuy+26);cprintf("Vui Long Chon Lai Chuc Nang Muon Su Dung !");
    396.       getch();
    397.       goto ra; }
    398.    if(menu==5)
    399.      {textcolor(10);gotoxy(menux,menuy+24);cprintf("Menu Dang Trong Thoi Gian Hoan Thien.");
    400.       gotoxy(menux,menuy+26);cprintf("Vui Long Chon Lai Chuc Nang Muon Su Dung !");
    401.       getch();
    402.       goto ra; }
    403.  
    404.    }    //ket thuc nhan 'ra:'
    405.  
    406. /*Doan Cuoi Chuong trinh Khi thoat ra*/
    407. ra1: { textcolor(10);gotoxy(menux,menuy+24);cprintf("Ban Co That Su Muon Thoat Chuong Trinh Khong(y/n)? " );thoat=getch();
    408. if(thoat=='y') {gotoxy(menux,menuy+24);clreol();
    409.         textcolor(3);gotoxy(menux,menuy+25);cprintf("Cam On Ban Da Su Dung Chuong Trinh Cua Toi !");
    410.         gotoxy(menux,menuy+27);cprintf("Chuc Ban Mot Ngay Tot Lanh.... "); }
    411. if(thoat!='y') goto ra;
    412. getch();  }//ket thuc nhan 'ra1:'
    413.  
    414. }//ket thuc Ham main chinh
    Đã được chỉnh sửa lần cuối bởi Kevin Hoang : 03-04-2009 lúc 10:28 PM. Lý do: chỉnh lại một chút!
    >> Yêu nhau cởi áo cho nhau, Ghét nhau trợn mắt : "Áo đâu ? Mặc vào !!! <<

  2. #2
    Ngày gia nhập
    01 2007
    Bài viết
    412

    Trích dẫn Nguyên bản được gửi bởi hikaru007 Xem bài viết
    Thật ra em định làm một phần mềm nhỏ từ C/C++ .Nhưng gõ xong nhìn lại thì thấy có hơn 500 câu lệnh.Mừng một nỗi là F9 thi Succseful. But ctrl+F9 thì không chạy.Nó quay lại màn hình khởi động ngay.Thế mới đau.
    Mọi người cho em hỏi là hơn 500 câu lệnh thì có ảnh hưởng gì tới chương trình dịch không? (Em dùng Turbo C++ IDE).Vì em bỏ bớt một số câu lệnh xuống còn 400 thì chạy ngon ơ.nhưng không có đầy đủa các tính năng của phần mềm mà em mong muốn.
    vậy thì không biết chương trình C++ lớn nó làm ăn ra sao khi có nhiều câu lệnh. một điều nữa là chương trình của em chạy ngon ơ nhưng một lúc sau thì xung đột với window kô bít tại sao.
    Mọi người và anh Admin giúp em giải đáp thắc mắc này nhé! vì em cũng mới học C++ thui.
    Mình đã test chương trình, nó chạy được mà, chạy bằng Ctrl+F9 luôn á.
    Còn về câu hỏi của bạn: cho dù chương trình đó có triệu lệnh nó cũng vẫn chạy như thường, ko bit trình biên dịch của bạn gặp lỗi gì nữa, bạn thử copy đoạn code đó sang máy người khác xem, không chừng lại được.

  3. #3
    Ngày gia nhập
    04 2007
    Nơi ở
    hà nội
    Bài viết
    9

    Xin lỗi bạn neverland87 vì tôi port nhầm bài đã được sửa của tui. Bài trên là bài tui rút bớt câu lệnh xuống còn 413 thui thì nó chạy ngon lành.Nhưng bài port sau này được thêm một số chức năng cho Menu(Thêm một chương trình con ) thì không báo lỗi nhưng không chạy mà quay lại màn hình soạn thảo luôn.
    Đây bạn xem thử giúp

    C Code:
    1. //Bai Tap Lon Ve Lam Lich
    2. #include<conio.h>
    3. #include<stdlib.h>
    4. #include <dos.h>
    5. #include<iostream.h>
    6. #include<string.h>
    7. #include<ctype.h>
    8. #include<stdio.h>
    9. #include<string.h>
    10. #define INTR 0x1C
    11. #define ATTR 0x7900
    12.  
    13. #define XSTART 30
    14.  
    15. #ifdef __cplusplus
    16.     #define __CPPARGS ...
    17. #else
    18.     #define __CPPARGS
    19. #endif
    20.  
    21. #define x1 7
    22. #define x2 32
    23. #define x3 58
    24. #define y1 8
    25. #define y2 18
    26. #define y3 28
    27. #define y4 38
    28. #define M 14
    29. #define N 15+128
    30. #define menux 10
    31. #define menuy 15
    32.  
    33.  
    34. int board[4][4];
    35. int xspace, yspace;
    36.  
    37. void khoitao()
    38. {
    39.   int i, j;
    40.   for (i=0; i<4; i++)
    41.     for (j=0; j<4; j++)
    42.       board[i][j] = i*4 + j + 1;
    43.   board[3][3] = 0;
    44. }
    45.  
    46. void veboard()
    47. {
    48.   int i, j;
    49.   textattr(2);
    50.   clrscr();
    51.   gotoxy(XSTART, 2);
    52.   cprintf("ÉÍÍÍÍËÍÍÍÍËÍÍÍÍËÍÍÍÍ»");
    53.   for (i=0; i<4; i++)
    54.   {
    55.     gotoxy(XSTART, 2*i+3);
    56.     cprintf("º    º    º    º    º");
    57.     gotoxy(XSTART, 2*i+4);
    58.     cprintf("ÌÍÍÍÍÎÍÍÍÍÎÍÍÍÍÎÍÍÍ͹");
    59.   }
    60.   gotoxy(XSTART, 10);
    61.   cprintf("ÈÍÍÍÍÊÍÍÍÍÊÍÍÍÍÊÍÍÍͼ");
    62.   for(i=0; i<4; i++)
    63.     for (j=0; j<4; j++)
    64.     {
    65.       gotoxy(XSTART+1 + j*5, i*2+3);
    66.       cprintf("%3d", board[i][j]);
    67.     }
    68.   gotoxy(XSTART+16, 9);
    69.   cprintf("   ");
    70.   gotoxy(XSTART, 14);
    71.   cprintf("Nhan S de bat dau.");
    72.   gotoxy(XSTART, 16);
    73.   cprintf("ESC de ket thuc.");
    74.   xspace = 3;
    75.   yspace = 3;
    76. }
    77.  
    78. void dichtrai()
    79. {
    80.   if (xspace < 3 )
    81.   {
    82.     board[yspace][xspace] = board[yspace][xspace+1];
    83.     board[yspace][xspace+1] = 0;
    84.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    85.     cprintf("%3d", board[yspace][xspace]);
    86.     xspace++;
    87.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    88.     cprintf("   ");
    89.   }
    90. }
    91.  
    92. void dichphai()
    93. {
    94.   if (xspace > 0 )
    95.   {
    96.     board[yspace][xspace] = board[yspace][xspace-1];
    97.     board[yspace][xspace-1] = 0;
    98.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    99.     cprintf("%3d", board[yspace][xspace]);
    100.     xspace--;
    101.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    102.     cprintf("   ");
    103.   }
    104. }
    105.  
    106. void dichlen()
    107. {
    108.   if (yspace < 3 )
    109.   {
    110.     board[yspace][xspace] = board[yspace+1][xspace];
    111.     board[yspace+1][xspace] = 0;
    112.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    113.     cprintf("%3d", board[yspace][xspace]);
    114.     yspace++;
    115.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    116.     cprintf("   ");
    117.   }
    118. }
    119.  
    120. void dichxuong()
    121. {
    122.   if (yspace > 0 )
    123.   {
    124.     board[yspace][xspace] = board[yspace-1][xspace];
    125.     board[yspace-1][xspace] = 0;
    126.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    127.     cprintf("%3d", board[yspace][xspace]);
    128.     yspace--;
    129.     gotoxy(XSTART+1 + xspace*5, yspace*2+3);
    130.     cprintf("   ");
    131.   }
    132. }
    133.  
    134. int test()
    135. {
    136.   int i, j;
    137.  
    138.   for (i=0; i<4; i++)
    139.     for (j=0; j<4; j++)
    140.       if (i!=yspace || j!=xspace)
    141.     if (board[i][j] != i*4 + j + 1)
    142.       return 0;
    143.   textattr(11);
    144.   gotoxy(XSTART, 18);
    145.   cprintf("XIN CHUC MUNG ! BAN DA CHIEN THANG");
    146.   getch();
    147.   return 1;
    148. }
    149.  
    150. void run()
    151. {
    152.   int done = 0, sobuoc = 0, i, n = 0;
    153.   char c;
    154.   randomize();
    155.   while (n < 100)
    156.   {
    157.     i = random(4);
    158.     switch(i)
    159.     {
    160.        case(0) : dichtrai();
    161.          break;
    162.        case(1) : dichphai();
    163.          break;
    164.        case(2) : dichlen();
    165.          break;
    166.        case(3) : dichxuong();
    167.          break;
    168.     }
    169.     n++;
    170.   }
    171.   gotoxy(XSTART, 14);
    172.   cprintf("%c %c %c %c de di chuyen.", 24, 25, 26, 27);
    173.   do {
    174.     c = getch();
    175.     if (c == 0)
    176.       c = getch();
    177.     switch(c)
    178.     {
    179.       case 27 : done = 1;
    180.         break;
    181.       case 75 : dichtrai();
    182.         break;
    183.       case 77 : dichphai();
    184.         break;
    185.       case 72 : dichlen();
    186.         break;
    187.       case 80 : dichxuong();
    188.         break;
    189.     }
    190.     sobuoc++;
    191.     gotoxy(XSTART, 12);
    192.     cprintf("So buoc : %d", sobuoc);
    193.     if (!done)
    194.       done = test();
    195.   } while (!done);
    196. }
    197.  
    198.  
    199. extern unsigned _heaplen = 1024;
    200. extern unsigned _stklen  = 512;
    201. void interrupt ( *oldhandler)(__CPPARGS);
    202. typedef unsigned int (far *s_arrayptr);
    203. struct time t;
    204.  
    205. void interrupt handler(__CPPARGS)
    206. {
    207.   s_arrayptr screen[80];
    208.   static int count,ticker;
    209.   int tam;
    210.   screen[0] = (s_arrayptr) MK_FP(0xB800,0);
    211.   count++;
    212.  
    213.   if (ticker==0)
    214.   {
    215.     t.ti_sec++;
    216.     ticker=( ((count%5)==0)?19:18);
    217.     if (t.ti_sec==60)
    218.       {
    219.         t.ti_sec=0;
    220.         t.ti_min++;
    221.       }
    222.     if (t.ti_min==60)
    223.       {
    224.         t.ti_min=0;
    225.         t.ti_hour++;
    226.       }
    227.     if (t.ti_hour==24)
    228.       t.ti_hour=0;
    229.  
    230.     screen[0][72] = t.ti_hour/10 + '0' + ATTR;
    231.     screen[0][73] = t.ti_hour%10 + '0' + ATTR;
    232.     screen[0][74] = ':' + ATTR;
    233.     screen[0][75] = t.ti_min/10 + '0' + ATTR;
    234.     screen[0][76] = t.ti_min%10 + '0' + ATTR;
    235.     screen[0][77] = ':' + ATTR;
    236.     screen[0][78] = t.ti_sec/10 + '0' + ATTR;
    237.     screen[0][79] = t.ti_sec%10 + '0' + ATTR;
    238.   }
    239.   ticker--;
    240.   oldhandler();
    241. }
    242.  
    243.  
    244. void main()
    245. {int i,d,m,y,x=0,u=0,nhuan,q,s,v,z,nam;char j,c,ten[7];
    246.  int m1,m2,m3,m4,m5,m6,m7,m8,m9,m10,m11,m12,menu,gioitinh;
    247.  char menu1,menu2,menu3,menu4,menu5,thoat;
    248.  
    249.  char can[][5]={"GIAP","AT","BINH","DINH","MAU","KI","CANH","TAN","NHAM","QUY"};
    250.  char chi[][5]={"TY","SUU","DAN","MAO","THIN","TI","NGO","MUI","THAN","DAU","TUAT","HOI"};
    251.  char n[7][4]={"CN","T2","T3","T4","T5","T6","T7"};
    252.  ra: {          /*NHAN LON CUA CA CHUONG TRINH*/
    253.  textbackground(1);clrscr();
    254.  textcolor(11);
    255.  gotoxy(menux-8,menuy-12);cprintf("Sinh Vien: CHUNG MINH TU");
    256.  gotoxy(menux-8,menuy-10);cprintf("MaSoSV: 506101066");
    257.  gotoxy(menux-8,menuy-8);cprintf("SV Lop Cong Nghe Phan Mem & Quan Tri Mang");
    258.  gotoxy(menux-8,menuy-6);cprintf("Khoa CNTT-Truong DH PHUONG DONG");
    259.  gotoxy(menux-8,menuy-4);cprintf("Giang Vien Huong Dan: TRAN VAN LOC");
    260.  textcolor(10);
    261.  gotoxy(menux,menuy);cprintf("XIN CHAO! CAC BAN DANG SU DUNG PHAN MEM DAU TAY CUA TOI");
    262.  gotoxy(menux+8,menuy+2);cprintf(">> PHAN MEM UNG DUNG LICH DIEN TU <<");
    263.  textcolor(5); gotoxy(menux-2,menuy+4);cprintf("Phan Mem Rat De Su Dung Va Thiet Thuc.Have Fun!");
    264.  textcolor(2);gotoxy(menux-2,menuy+6);cprintf("MENU DE SU DUNG CHUONG TRINH:");
    265.  textcolor(14);
    266.  gotoxy(menux-2,menuy+10);cprintf("1..XEM LICH & NGAY THANG. ");
    267.  gotoxy(menux-2,menuy+12);cprintf("2..XEM THOI GIAN HIEN TAI CUA MAY TINH.");
    268.  gotoxy(menux-2,menuy+14);cprintf("3..XEM SO TU VI GIUM BAN. ");
    269.  gotoxy(menux-2,menuy+16);cprintf("4..MOT GAME NHO NHO DE GIAI TRI. ");
    270.  gotoxy(menux-2,menuy+18);cprintf("An 'Q' De Thoat Chuong Trinh!");
    271.  textcolor(4);gotoxy(menux-2,menuy+20);cprintf("Hay Nhap Vao So Cua Menu De Chon: ");thoat=getch();
    272.    if(thoat=='q') goto ra1;
    273.    if(thoat-'q') cin>>menu;
    274.    if((menu-1)*(menu-2)*(menu-3)*(menu-4))
    275.      {textcolor(10);gotoxy(menux,menuy+24);cprintf("Xin Loi Vi Menu Moi Chi Co 4 Chuc Nang !");
    276.       gotoxy(menux,menuy+26);cprintf("Hay Chon Lai Chuc Nang Muon Su Dung !");
    277.       getch();
    278.       goto ra; }
    279.  
    280.   if(menu==1)  //bat dau thuc hien menu 1
    281.      { while(i!=27)
    282.        { clrscr();
    283.  textcolor(10);cprintf("Nhap Vao Ngay Thang Nam\n\r");scanf("%d%d%d",&d,&m,&y);
    284.  if(((y%4==0)&&(y%100))||(y%400==0)) nhuan=1;else nhuan=0;
    285.  gotoxy(30,1);textcolor(7);
    286.  switch(m)
    287.   { case 1:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d;}break;
    288.     case 2:{ cprintf("Thang %d Nam %d Co %d Ngay",m,y,28+nhuan);u=d+3;}break;
    289.     case 3:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+3+nhuan;}break;
    290.     case 4:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+6+nhuan;}break;
    291.     case 5:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+1+nhuan;}break;
    292.     case 6:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+4+nhuan;}break;
    293.     case 7:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+6+nhuan;}break;
    294.     case 8:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+2+nhuan;}break;
    295.     case 9:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+5+nhuan;}break;
    296.     case 10:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+nhuan;}break;
    297.     case 11:{ cprintf("Thang %d Nam %d Co 30 Ngay",m,y);u=d+3+nhuan;}break;
    298.     case 12:{ cprintf("Thang %d Nam %d Co 31 Ngay",m,y);u=d+5+nhuan;}break;
    299.   }
    300.   m1=31;m2=28+nhuan;m3=31;m4=30;m5=31;m6=30;m7=31;m8=31;m9=30;m10=31;m11=30;m12=31;
    301.   x=y-1+(y-1)/4-(y-1)/100+(y-1)/400;
    302.   textcolor(13);gotoxy(30,3);cprintf("Ngay %d Thang %d Nam %d La Ngay ",d,m,y);
    303. switch((u+x-1)%7)
    304.  { case 0:{cprintf("THU HAI");}break;
    305.    case 1:{cprintf("THU BA");}break;
    306.    case 2:{cprintf("THU TU");}break;
    307.    case 3:{cprintf("THU NAM");}break;
    308.    case 4:{cprintf("THU SAU");}break;
    309.    case 5:{cprintf("THU BAY");}break;
    310.    case 6:{cprintf("CHU NHAT");}break;
    311.  }
    312. switch(x%7)
    313.  { case 0:s=2;break;
    314.    case 1:s=3;break;
    315.    case 2:s=4;break;
    316.    case 3:s=5;break;
    317.    case 4:s=6;break;
    318.    case 5:s=7;break;
    319.    case 6:s=1;break;
    320.  }
    321. textcolor(6);gotoxy(x2-10,y1-3);cprintf("Ban Co Muon Xem Lich Nam %d Khong(y/n)?",y);
    322. j=getch();
    323. if(j=='y'){
    324. gotoxy(x2-10,y1-3); clreol();
    325. textcolor(3);gotoxy(x2-10,y1-3);cprintf("BAN DANG XEM LICH CUA NAM %s %s - %d",can[(nam+6)%10],chi[(nam+8)%12],y);
    326.  
    327. //In To Lich Thang Mot
    328. textcolor(11);gotoxy(x1,y1);cprintf("THANG MOT");
    329. gotoxy(x1,y1+2);
    330. for(i=0;i<7;i++)
    331.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    332.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    333.     if(i*(i-6)){textcolor(M);cprintf("%-2s ",n[i]);} }
    334. gotoxy(x1,y1+4);
    335. for(i=1;i<s;i++) printf("   ");
    336. for(i=1,v=1;i<=m1;i++,s++)
    337.   {
    338.     if(s==1) {textcolor(4);cprintf("%2d ",i);}
    339.     if((s-7)*(s-1)){textcolor(M);cprintf("%2d ",i);}
    340.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    341.     if(s==7) {printf("\n");gotoxy(x1,y1+4+v);s=0;v++;}
    342.     if((i==d)&&(m==1)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    343.   }
    344.  
    345. //In To Lich Thang Hai
    346. textcolor(11);gotoxy(x2,y1);cprintf("THANG HAI");
    347. gotoxy(x2,y1+2);
    348. for(i=0;i<7;i++)
    349.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    350.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    351.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]);} }
    352. gotoxy(x2,y1+4);
    353. for(i=1;i<s;i++) printf("   ");
    354. for(i=1,v=1;i<=m2;i++,s++)
    355.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    356.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    357.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    358.     if(s==7) {printf("\n");gotoxy(x2,y1+4+v);s=0;v++;}
    359.     if((i==d)&&(m==2)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    360.   }
    361.  
    362. //In To Lich Thang Ba
    363. textcolor(11);gotoxy(x3,y1);cprintf("THANG BA");
    364. gotoxy(x3,y1+2);
    365. for(i=0;i<7;i++)
    366.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    367.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    368.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    369. gotoxy(x3,y1+4);
    370. for(i=1;i<s;i++) printf("   ");
    371. for(i=1,v=1;i<=m3;i++,s++)
    372.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    373.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    374.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    375.     if(s==7) {printf("\n");gotoxy(x3,y1+4+v);s=0;v++;}
    376.     if((i==d)&&(m==3)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    377.   }
    378.  
    379. //In To Lich Thang Tu
    380. textcolor(11);gotoxy(x1,y2);cprintf("THANG TU");
    381. gotoxy(x1,y2+2);
    382. for(i=0;i<7;i++)
    383.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    384.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    385.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    386. gotoxy(x1,y2+4);
    387. for(i=1;i<s;i++) printf("   ");
    388. for(i=1,v=1;i<=m4;i++,s++)
    389.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    390.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    391.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    392.     if(s==7) {printf("\n");gotoxy(x1,y2+4+v);s=0;v++;}
    393.     if((i==d)&&(m==4)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    394.   }
    395.  
    396. //In To Lich Thang Nam
    397. textcolor(11);gotoxy(x2,y2);cprintf("THANG NAM");
    398. gotoxy(x2,y2+2);
    399. for(i=0;i<7;i++)
    400.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    401.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    402.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    403. gotoxy(x2,y2+4);
    404. for(i=1;i<s;i++) printf("   ");
    405. for(i=1,v=1;i<=m5;i++,s++)
    406.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    407.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    408.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    409.     if(s==7) {printf("\n");gotoxy(x2,y2+4+v);s=0;v++;}
    410.     if((i==d)&&(m==5)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    411.   }
    412.  
    413. //In To Lich Thang Sau
    414. textcolor(11);gotoxy(x3,y2);cprintf("THANG SAU");
    415. gotoxy(x3,y2+2);
    416. for(i=0;i<7;i++)
    417.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    418.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    419.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    420. gotoxy(x3,y2+4);
    421. for(i=1;i<s;i++) printf("   ");
    422. for(i=1,v=1;i<=m6;i++,s++)
    423.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    424.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    425.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    426.     if(s==7) {printf("\n");gotoxy(x3,y2+4+v);s=0;v++;}
    427.     if((i==d)&&(m==6)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    428.   }
    429.  
    430. //In To Lich Thang Bay
    431. textcolor(11);gotoxy(x1,y3);cprintf("THANG TAM");
    432. gotoxy(x1,y3+2);
    433. for(i=0;i<7;i++)
    434.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    435.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    436.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    437. gotoxy(x1,y3+4);
    438. for(i=1;i<s;i++) printf("   ");
    439. for(i=1,v=1;i<=m7;i++,s++)
    440.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    441.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    442.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    443.     if(s==7) {printf("\n");gotoxy(x1,y3+4+v);s=0;v++;}
    444.     if((i==d)&&(m==7)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    445.   }
    446.  
    447. //In To Lich Thang Tam
    448. textcolor(11);gotoxy(x2,y3);cprintf("THANG TAM");
    449. gotoxy(x2,y3+2);
    450. for(i=0;i<7;i++)
    451.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    452.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    453.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    454. gotoxy(x2,y3+4);
    455. for(i=1;i<s;i++) printf("   ");
    456. for(i=1,v=1;i<=m8;i++,s++)
    457.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    458.     if((s-7)*(s-1)){textcolor(M);cprintf("%2d ",i);}
    459.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    460.     if(s==7) {printf("\n");gotoxy(x2,y3+4+v);s=0;v++;}
    461.     if((i==d)&&(m==8)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    462.   }
    463.  
    464. //In To Lich Thang Chin
    465. textcolor(11);gotoxy(x3,y3);cprintf("THANG CHIN");
    466. gotoxy(x3,y3+2);
    467. for(i=0;i<7;i++)
    468.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    469.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    470.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    471. gotoxy(x3,y3+4);
    472. for(i=1;i<s;i++) printf("   ");
    473. for(i=1,v=1;i<=m9;i++,s++)
    474.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    475.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    476.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    477.     if(s==7) {printf("\n");gotoxy(x3,y3+4+v);s=0;v++;}
    478.     if((i==d)&&(m==9)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    479.   }
    480.  
    481. //In To Lich Thang Muoi
    482. textcolor(11);gotoxy(x1,y4);cprintf("THANG MUOI");
    483. gotoxy(x1,y4+2);
    484. for(i=0;i<7;i++)
    485.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    486.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    487.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    488. gotoxy(x1,y4+4);
    489. for(i=1;i<s;i++) printf("   ");
    490. for(i=1,v=1;i<=m10;i++,s++)
    491.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    492.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    493.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    494.     if(s==7) {printf("\n");gotoxy(x1,y4+4+v);s=0;v++;}
    495.     if((i==d)&&(m==10)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    496.   }
    497.  
    498. //In To Lich Thang Muoi Mot
    499. textcolor(11);gotoxy(x2,y4);cprintf("THANG MUOI MOT");
    500. gotoxy(x2,y4+2);
    501. for(i=0;i<7;i++)
    502.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    503.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    504.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    505. gotoxy(x2,y4+4);
    506. for(i=1;i<s;i++) printf("   ");
    507. for(i=1,v=1;i<=m11;i++,s++)
    508.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    509.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    510.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    511.     if(s==7) {printf("\n");gotoxy(x2,y4+4+v);s=0;v++;}
    512.     if((i==d)&&(m==11)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    513.   }
    514.  
    515. //In To Lich Thang Muoi Hai
    516. textcolor(11);gotoxy(x3,y4);cprintf("THANG MUOI HAI");
    517. gotoxy(x3,y4+2);
    518. for(i=0;i<7;i++)
    519.   { if(i==0){textcolor(4);cprintf("%-2s " ,n[i]);}
    520.     if(i==6){textcolor(2);cprintf("%-2s " ,n[i]);}
    521.     if(i*(i-6)) {textcolor(M);cprintf("%-2s ",n[i]); }}
    522. gotoxy(x3,y4+4);
    523. for(i=1;i<s;i++) printf("   ");
    524. for(i=1,v=1,z=1;i<=m12;i++,s++)
    525.   { if(s==1) {textcolor(4);cprintf("%2d ",i);}
    526.     if((s-7)*(s-1)) {textcolor(M);cprintf("%2d ",i);}
    527.     if(s==7) {textcolor(2);cprintf("%2d ",i);}
    528.     if(s==7) {printf("\n");gotoxy(x3,y4+4+v);s=0;v++;z++;}
    529.     if((i==d)&&(m==12)&&(s-7)){textcolor(N);cprintf("\b\b\b%2d ",i);}
    530.   }
    531. printf("\n\n");printf("De Thoat Khoi Menu Hay An 'ESC'....");
    532. printf("\nDe Tiep Tuc Xem Hay An 'ENTER'....");getch(); }//ket thuc if(j=='y')
    533. else goto ra;
    534.     menu1=getch();i=toascii(menu1);
    535.        }
    536.      goto ra;  }//ket thuc menu 1
    537.  
    538.  
    539.    if(menu==2)  //bat dau thuc hien menu 2
    540.      { do
    541.        {clrscr();
    542.   gettime(&t);
    543.   oldhandler = getvect(INTR);
    544.   setvect(INTR, handler);
    545.   menu=getch();i=toascii(menu);goto ra;
    546.   setvect(INTR,oldhandler);
    547.   keep(0, (_SS + (_SP/16) - _psp));
    548.    }
    549.     while(i!=27);
    550.      }  //ket thuc menu 2
    551.    if(menu==3)
    552.      {textcolor(10);gotoxy(menux,menuy+24);cprintf("Menu Dang Trong Thoi Gian Hoan Thien.");
    553.       gotoxy(menux,menuy+26);cprintf("Vui Long Chon Lai Chuc Nang Muon Su Dung !");
    554.       getch();
    555.       goto ra; }
    556.  
    557. if(menu==4)  //bat dau thuc hien menu 4
    558.    {clrscr();
    559.    void  khoitao();
    560.    void  veboard();
    561.    while(i==27)
    562.    { c = toupper(getch());
    563.      if (c == 'S') run();
    564.      i=toascii(getch());}
    565.     goto ra;
    566.    }  //ket thuc menu 4 >> if(menu==4)
    567.  
    568.  
    569.  
    570.  
    571.    }    //ket thuc nhan 'ra:'
    572.  
    573. /*Doan Cuoi Chuong trinh Khi thoat ra*/
    574. ra1: { textcolor(10);gotoxy(menux,menuy+24);cprintf("Ban Co That Su Muon Thoat Chuong Trinh Khong(y/n)? " );thoat=getch();
    575. if(thoat=='y') {gotoxy(menux,menuy+24);clreol();
    576.         textcolor(3);gotoxy(menux,menuy+25);cprintf("Cam On Ban Da Su Dung Chuong Trinh Cua Toi !");
    577.         gotoxy(menux,menuy+27);cprintf("Chuc Ban Mot Ngay Tot Lanh.... "); }
    578. if(thoat!='y') goto ra;
    579. getch();  }//ket thuc nhan 'ra1:'
    580.  
    581. }//ket thuc Ham main chinh
    Đã được chỉnh sửa lần cuối bởi hikaru007 : 15-04-2007 lúc 10:14 PM.
    >> Yêu nhau cởi áo cho nhau, Ghét nhau trợn mắt : "Áo đâu ? Mặc vào !!! <<

  4. #4
    Ngày gia nhập
    10 2006
    Nơi ở
    In Your Bugs
    Bài viết
    823

    Uhm ! Cũng muốn chạy thử xem thía nào nhưng khổ nỗi lại không có USB để cop về máy chán thiệt . Tuy nhiên có nhận xét sơ qua thế này ( không phải là sửa lỗi ) .

    1. Không hiểu trong chương trình bạn gọi ngắt để làm gì , và có thể ngắt của bạn chính là lí do mà chương trình bị lỗi , bạn nên sử dụng cách ngắt thứ 2 hơn là cách ngắt dùng interrup() .
    2. Trong chương trình chính ở phần menu bạn nên xem lại cách viết các hàm, mình nghĩ rằng nên viết các hàm con , sau đó gọi tại hàm main , như thế dễ kiểm tra hơn , và nhiều lợi ích hơn nữa .
    3. Tại menu thứ 2 bạn dùng ngắt để lấy thời gian hệ thống , thật chất nó không phải là 1 điều "quá" cần thiết , bạn có thể sử dụng hàm gettime với 1 cấu trúc cho sẵn để dùng thì có lẽ tốt hơn .
    4. Còn cuối cùng là cái trò chơi của bạn , chưa chạy thử nên không biết là trò gì có thể giới thiệu nó 1 chút không ? Gì chứ viết trò chơi tớ khoái .

  5. #5
    Ngày gia nhập
    04 2007
    Nơi ở
    hà nội
    Bài viết
    9

    Vâng cám ơn mọi người đã góp ý! tôi sẽ sửa đổi nó lại xem sao.Nhưng vẫn khúc mắc một điều.Là vì chương trình can thiệp vào bộ nhớ hệ thống để sử dụng gettime.Không biết có phải do vậy mà khi chạy chương trình thì xẩy ra hiện tượng lỗi sau 2 đến 3 lần thực hiện hay không?Nếu ai đó chạy thử Đoạn mã đầu tiên có thể thấy điều đó.Nếu các bạn giúp tôi giải đáp thắc mắc này thì tốt quá!
    >> Yêu nhau cởi áo cho nhau, Ghét nhau trợn mắt : "Áo đâu ? Mặc vào !!! <<

  6. #6
    Ngày gia nhập
    04 2007
    Nơi ở
    hà nội
    Bài viết
    9

    Mặc định Bài tập C++ | Bài tập lớn tới 500 câu lệnh, giúp mình xem lỗi gì?

    Vẫn chạy đấy chứ bạn! đoạn code đầu tiên ấy.Nhưng nó vẫn bị lỗi hệ thống nên mình hi vọng ai đó sửa giúp.thank trước!
    >> Yêu nhau cởi áo cho nhau, Ghét nhau trợn mắt : "Áo đâu ? Mặc vào !!! <<

  7. #7
    Ngày gia nhập
    08 2006
    Nơi ở
    TpHCM
    Bài viết
    202

    gettime thì có lẽ không gây ra lỗi, mà có thể là các lệnh ngắt hoặc truy suất I/O port gây ra lỗi

  8. #8
    Ngày gia nhập
    07 2006
    Nơi ở
    Hanoi, Vietnam
    Bài viết
    2,750

    Dreaminess đã tiến hành kiểm tra với Borland C++ 3.1 (trên nền DOS) thấy nó chạy được đó chứ? Vấn đề của bạn có lẽ là do việc cấp phát bộ nhớ ko tốt, dẫn đến có một số vùng nhớ ghi vào vùng nhớ đã được sử dụng. Sử dụng debug, kiểm tra từng dòng xem thế nào?

    Thực chất thì 500 dòng không phải là lớn! Để dễ dàng quản lý code bạn có thể chia thành nhiều file nhỏ hơn thay vì một file. (Xem thêm code của Pete đã post lên để biết về điều này)
    Email: admin[@]congdongcviet.com | CC to: info[@]congdongcviet.com
    Phone: 0972 89 7667 (Office: 04 6329 2380)
    Yahoo & Skype: dreaminess_world (Vui lòng chỉ rõ mục đích ngay khi liên hệ, cảm ơn!)

    Một người nào đó coi thường ý thức kỷ luật cũng có nghĩa là người đó đã coi thường tương lai số phận của chính bản thân người đó. Những người coi thường ý thức kỷ luật sẽ không bao giờ có được sự thành công trong sự nghiệp!

  9. #9
    Ngày gia nhập
    04 2009
    Bài viết
    1

    Bạn chạy trên Win thì bỏ dòng khai báo ban đầu conio.h hay stdio.h và cuối ct bỏ getch() đi, lâu rồi ko nhớ lắm nhưng cứ thử bỏ lần lượt xem, chắc là ok. Hồi trước tớ cũng bị lỗi này. Nếu sai đừng giận nha, tớ chỉ nhớ mang máng...!

Các đề tài tương tự

  1. Sự cố Nhờ mod chuyển giúp bài "Sắp xếp số thứ tự ngay trong bảng của 1 database?" từ MySQL sang MSSQL giúp!
    Gửi bởi hu-xeko trong diễn đàn Ý kiến, đề xuất và khiếu nại
    Trả lời: 1
    Bài viết cuối: 12-03-2012, 07:48 PM
  2. Mới nhập môn khó quá , cần trợ giúp [Vấn đề của bạn cần muốn giúp là gì ?]
    Gửi bởi cuingo212 trong diễn đàn Nhập môn lập trình C#, ASP.NET
    Trả lời: 5
    Bài viết cuối: 22-10-2011, 08:43 AM
  3. Chương trình giúp một học sinh cấp 1 học phép nhân, xử lý hàm rand, giúp mình với?
    Gửi bởi chankx trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 2
    Bài viết cuối: 12-05-2009, 08:52 PM
  4. Code giúp add một key vào registry, ai giúp em?
    Gửi bởi olavien trong diễn đàn Nhập môn lập trình C/C++
    Trả lời: 5
    Bài viết cuối: 12-12-2007, 08:45 AM

Quyền hạn của bạn

  • Bạn không thể gửi đề tài mới
  • Bạn không thể gửi bài trả lời
  • Bạn không thể gửi các đính kèm
  • Bạn không thể chỉnh sửa bài viết của bạn