k4info
Bạn có muốn phản ứng với tin nhắn này? Vui lòng đăng ký diễn đàn trong một vài cú nhấp chuột hoặc đăng nhập để tiếp tục.

THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

+4
augustion_ptn
htdtltn
nhok_lonely207
Minh Huy
8 posters

Go down

Cool THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Minh Huy Thu Sep 22, 2011 12:54 am

ĐỀ: Viết CLASS Món ăn (mã, tên, số lượng, đơn giá). Với hai hàm thành viên là NhapTT(), InTT() thực hiện chức năng nhập, in thông tin của món ăn Dựng menu cho phép người dùng chọn chức năng nhập món ăn với số lượng tối đa là 100. Với các phím để chọn chức năng là:
-I: (insert) nhập món ăn mới
-P: (print) in tất cả các món ăn vừa nhập
-Q: (quit) kết thúc chương trình, in số lượng món đã nhập và danh sách món ăn theo thứ tự đơn giá tăng dần.

*Chú thích: trong phần bài làm của tôi, tôi mở rộng cho phép nhập món ăn với số lượng tùy bạn chọn. Lưu ý nhập I, P, Q là chữ in hoa.

@
Code:
#include<stdio.h>
#include<conio.h>
#include<iostream>
using namespace std;
class mon_an
{
      private:
              char ma[50];
              char ten[50];
              int sl;
      public:
            int gia;
            void nhaptt();
            void intt();
            void swap(mon_an,mon_an);
};
void mon_an::nhaptt()
{
    cout<<"\n\n  +Ma mon:";cin>>ma;
    cout<<"\n  +Ten mon:";cin>>ten;
    cout<<"\n  +So luong:";cin>>sl;
    cout<<"\n  +Don gia:";cin>>gia;
};
void mon_an::intt()
{
    cout<<"\n"<<ma<<"\t"<<ten<<"\t"<<sl<<"\t"<<"("<<gia<<")";
};
void mon_an::swap(mon_an a,mon_an b)
{
    mon_an c;
    c=a;a=b;b=c;
};

int main()
{
    char key;
    mon_an list[100];
    int n,stt=0,i,j;
    key='a';
    cout<<" Ban muon nhap bao nhieu mon an: ";
    cin>>n;
    cout<<"\n -NHAP THONG TIN "<<n<<" MON AN:";
    cout<<"\n  +I: Nhap mon an moi";
    cout<<"\n  +P: In tat ca cac mon an vua nhap";
    cout<<"\n  +Q: De thoat\n";
    while(key!='Q')
    {
          cout<<"\n -Chon thao tac :";
          cin>>key;
          switch(key)
        {
                    case 'I':
                        stt++;
                        if(stt>n)
                        {
                                  cout<<"\n **Canh bao: nhap qua so luong!\n";
                                  break;
                        }
                        cout<<"\n -Nhap thong tin mon an thu "<<stt<<":";
                        list[stt].nhaptt();
                    break;
                    case 'P':
                        cout<<"\n Danh sach mon an da nhap";
                        cout<<"\n\n"<<"ma"<<"\t"<<"ten"<<"\t"<<"sl"<<"\t"<<"("<<"gia"<<")\n";
                        for(i=1;i<=stt;i++)
                                            list[i].intt();
                    break;
        }
    }
    for(i=1;i<stt;i++)
    for(j=i;j<=stt;j++)
                      if(list[i].gia>list[j].gia)
                                                  swap(list[i],list[j]);
    cout<<"\nDanh sach "<<stt<<" mon an da nhap:";
    cout<<"\n\n"<<"ma"<<"\t"<<"ten"<<"\t"<<"sl"<<"\t"<<"("<<"gia"<<")\n";
    for(i=1;i<=stt;i++) list[i].intt();
    getch();
}
Minh Huy
Minh Huy

Posts : 104
Thanked : 12
Gia Nhập 27/08/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by nhok_lonely207 Thu Sep 22, 2011 6:24 am

Góp ý:
Code:
switch(key)
        {
case 'i':         
case 'I':
                      ... 
                    break;
case'p':
case'P':
                      .... 
                    break;

như vậy là có thể gõ i, p hay I, Qgì cũng được!
nhok_lonely207
nhok_lonely207

Posts : 276
Thanked : 35
Gia Nhập 27/08/2010

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Minh Huy Thu Sep 22, 2011 8:32 am

nhok_lonely207 đã viết:Góp ý:
Code:
switch(key)
        {
case 'i':         
case 'I':
                      ... 
                    break;
case'p':
case'P':
                      .... 
                    break;

như vậy là có thể gõ i, p hay I, Qgì cũng được!
Cảm ơn nhá... vậy là khắc phục được cái đó rồi he he... cyclops
Minh Huy
Minh Huy

Posts : 104
Thanked : 12
Gia Nhập 27/08/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by htdtltn Thu Sep 22, 2011 9:06 am

hay đấy thanhku pac
htdtltn
htdtltn

Posts : 76
Thanked : 6
Gia Nhập 21/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by augustion_ptn Thu Sep 22, 2011 10:02 am

Đang nghiên cứu mà thấy chú Huy post rồi nên quá trình nghiên cứu bị gián đoạn! Surprised
augustion_ptn
augustion_ptn

Posts : 634
Thanked : 100
Gia Nhập 27/08/2010

Tài Sản
Thú nuôi:

http://thanhnhancomputer.freevnn.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Minh Huy Thu Sep 22, 2011 10:36 am

THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM 2390395266 vậy là em trước một bước.... pig
Minh Huy
Minh Huy

Posts : 104
Thanked : 12
Gia Nhập 27/08/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by augustion_ptn Thu Sep 22, 2011 10:47 am

Embarassed
augustion_ptn
augustion_ptn

Posts : 634
Thanked : 100
Gia Nhập 27/08/2010

Tài Sản
Thú nuôi:

http://thanhnhancomputer.freevnn.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Admin Thu Sep 22, 2011 10:50 am

Coi chừng rớt cái lưỡi kìa, THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM 3884376900
Admin
Admin

Posts : 1013
Thanked : 47
Gia Nhập 25/08/2010

Tài Sản
Thú nuôi:

https://k4info.forumvi.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by augustion_ptn Thu Sep 22, 2011 10:59 am

Rolling Eyes
augustion_ptn
augustion_ptn

Posts : 634
Thanked : 100
Gia Nhập 27/08/2010

Tài Sản
Thú nuôi:

http://thanhnhancomputer.freevnn.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Kid Fri Sep 23, 2011 12:09 am

Thanks ku nhak!!
Kid
Kid

Posts : 19
Thanked : -2
Gia Nhập 19/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by nhok_lonely207 Fri Sep 23, 2011 9:53 am

Thích cái Avatar của Kiệt Mad ! Nhìn ngu gê! I love you
nhok_lonely207
nhok_lonely207

Posts : 276
Thanked : 35
Gia Nhập 27/08/2010

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by NeverGiveUp Fri Sep 23, 2011 5:45 pm

thằng kiệt nhìn mặt đúng là HÃM TÀI Rolling Eyes
NeverGiveUp
NeverGiveUp

Posts : 83
Thanked : 3
Gia Nhập 12/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by pklove1910 Tue Oct 11, 2011 2:44 pm

Code:
void mon_an::swap(mon_an a,mon_an b)
{
    mon_an c;
    c=a;a=b;b=c;
};
swap là gì thế mọi người... Smile e k hiểu k bít đừng la e.. Smile
pklove1910
pklove1910

Posts : 207
Thanked : 3
Gia Nhập 11/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Admin Tue Oct 11, 2011 3:33 pm

pklove1910 đã viết:
Code:
void mon_an::swap(mon_an a,mon_an b)
{
    mon_an c;
    c=a;a=b;b=c;
};
swap là gì thế mọi người... Smile e k hiểu k bít đừng la e.. Smile


Swap là hàm hoán đổi tại vi tri nếu a[i]>a[j] (theo thứ tự tăng dần) temp =a[i]; a[i] =a[j]; a[j] = temp; VD 4 va 3 đổi lại 3 và 4;
Để Swap tiếng Anh cho sang chứ thật chất là hàm sắp xếp. Cứ nghĩ đơn gian thôi, không có gì phức tạp đâu THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM 3884376900


Được sửa bởi Admin ngày Tue Oct 11, 2011 11:11 pm; sửa lần 1.
Admin
Admin

Posts : 1013
Thanked : 47
Gia Nhập 25/08/2010

Tài Sản
Thú nuôi:

https://k4info.forumvi.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by pklove1910 Tue Oct 11, 2011 7:43 pm

hix...thank bác Tâm nhiều, nghĩ ngời ngợi là sắp xếp ,... Surprised
thay vì phải khởi tạo 2 dòng
for(int i=0;i
Code:
      for(int j=i+1;j<stt;j++)
                                              if(a[i]>a[j]){
                                            tems =a[i];
                                          a[i] =a [j]
                                              tems=a[j]         
}
đúng k bác
pklove1910
pklove1910

Posts : 207
Thanked : 3
Gia Nhập 11/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Minh Huy Tue Oct 11, 2011 7:54 pm

hi.. đúng rùi.. có thể gọi là sắp xếp cũng có thể gọi là hoán đổi vị trí... study
Minh Huy
Minh Huy

Posts : 104
Thanked : 12
Gia Nhập 27/08/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by NeverGiveUp Tue Oct 11, 2011 8:22 pm

Bác Hiếu Quay đầu là pờ Ai di đà phật THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM 2548832203
NeverGiveUp
NeverGiveUp

Posts : 83
Thanked : 3
Gia Nhập 12/09/2011

Tài Sản
Thú nuôi:

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Admin Tue Oct 11, 2011 11:15 pm

pklove1910 đã viết:hix...thank bác Tâm nhiều, nghĩ ngời ngợi là sắp xếp ,... Surprised
thay vì phải khởi tạo 2 dòng
for(int i=0;i
đúng k bác

Cách dùng 2 dòng for là cách dùng trực tiêp thì khỏi làm hàm sắp xếp và gọi lại hàm . Còn nếu không dùng trưc tiếp thì phải làm hàm sắp xếp và gọi lại hàm. Trong hàm sắp xếp vẫn xài 2 dòng for thôi. không có rút gọn đươc gì đâu! THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM 340977901
Admin
Admin

Posts : 1013
Thanked : 47
Gia Nhập 25/08/2010

Tài Sản
Thú nuôi:

https://k4info.forumvi.com

Về Đầu Trang Go down

Cool Re: THỰC HÀNH BUỔI 2- BÀI CUỐI PHẦN TỰ LÀM

Bài gửi by Sponsored content


Sponsored content


Về Đầu Trang Go down

Về Đầu Trang

- Similar topics

 
Permissions in this forum:
Bạn không có quyền trả lời bài viết