Giúp em với,C+ bài tập về mảng 2 chiều

Thảo luận trong 'Lập trình & Đồ hoạ' bắt đầu bởi buitrungthanh, 24/11/06.

  1. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
    Cảm ơn bạn "Brianlam" đã ủng hộ. Trong các ngôn ngữ(trừ...!!!) người ta đều cung cấp từ khóa "goto" cho những người "biết xài" xử lý chương trình của mình -> rút gọn code. Hè hè!
     
  2. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
  3. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
  4. DevVn

    DevVn The Warrior of Light

    Tham gia ngày:
    4/6/05
    Bài viết:
    2,074
    Nơi ở:
    Damned Graveyard
    Thực ra thì những trường hợp dùng Goto có lợi cũng không nhiều. Thay cho việc dùng goto để thóat khỏi vòng lặp thì cùng Break cũng được. Đệ quy cũng tùy trường hợp. Nếu mà đệ quy hàm thì dùng goto. Chứ không thì tôi cũng chẳng động đến.
     
  5. [L]at

    [L]at The Warrior of Light

    Tham gia ngày:
    8/1/06
    Bài viết:
    2,147
    Nơi ở:
    ハノイ
    Ai làm được bài này ko ?

    Bài 1 : Nhập vào 1 số . Máy sẽ tính toán như sau : số nhập vào x 3 + 1 , nếu kết quả là số lẻ thì làm tiếp tục , nếu là số chẵn thì / 2 . Chia đến khi nào = 1 thì tự động thoát

    Bài 2 : Tính lãi suất ngân hàng trong 20 năm
    Cụ thể : Nhập số tiền gửi trong ngân hàng (VD : 3000$ , lãi suất là 10%/năm)
    Năm 1 : 300$ - 3300$
    Năm 2 : 330$ - 3630$
    Năm 3 : 363$ - 3993$
    .....
    Năm n : nnn$ - nnnn$
     
  6. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
    Còn nếu số nhập vào là số chẳn thì sao?...(Đề do ku tự nghĩ phải hông!)
     
  7. Brianlam

    Brianlam T.E.T.Я.I.S

    Tham gia ngày:
    14/7/04
    Bài viết:
    526
    Nếu nó nhập vào số chẳn thì chia 2 , chia rồi 1 hồi hết trơn :D . Cái đề ra đúng vui luôn hehe
     
  8. [L]at

    [L]at The Warrior of Light

    Tham gia ngày:
    8/1/06
    Bài viết:
    2,147
    Nơi ở:
    ハノイ
    Sry , viết nhầm đề bài . Số lúc đầu nhập ko kể số lẻ hay chẵn vẫn phải x 3 + 1 đầu tiên
    @Tử kiệt : đề Aptech đó (mà tôi chắc ko nhỏ đâu mà gọi là ku .. ok? Chắc khi cậu 21 tuổi cũng ko muốn gọi thế đâu . Rút kinh nghiệm nhá)
     
  9. Nhai Kon

    Nhai Kon Youtube Master Race

    Tham gia ngày:
    25/10/06
    Bài viết:
    97
    chà sao tui cũng học aptech mà có bài 1 đâu nhỉ
    còn bài 2 thì có làm wa rùi, dễ mà
     
  10. runandaide

    runandaide Mr & Ms Pac-Man

    Tham gia ngày:
    12/1/05
    Bài viết:
    103
    Mã:
    Bài 1 : Nhập vào 1 số . Máy sẽ tính toán như sau : số nhập vào x 3 + 1 , nếu kết quả là số lẻ thì làm tiếp tục , nếu là số chẵn thì / 2 . Chia đến khi nào = 1 thì tự động thoát
    
    Bài 2 : Tính lãi suất ngân hàng trong 20 năm
    Cụ thể : Nhập số tiền gửi trong ngân hàng (VD : 3000$ , lãi suất là 10%/năm)
    Năm 1 : 300$ - 3300$
    Năm 2 : 330$ - 3630$
    Năm 3 : 363$ - 3993$
    .....
    Năm n : nnn$ - nnnn$

    chac^!.đề gì mà quái qá
    có phai như thế này kô
    nhập vào a:?
    b=a*3+1
    if(b%2!=0) thì làm tiếp tục là sao
    if(b%2==0)thì b/2 đếm khi b=1;break;?
    bài này làm = mảng hả mình nghỉ dùng do...while ko bít có đúng kô
     
  11. [L]at

    [L]at The Warrior of Light

    Tham gia ngày:
    8/1/06
    Bài viết:
    2,147
    Nơi ở:
    ハノイ
    Tùy từng thầy thôi ... đề này do thầy Lâm đưa mà
    Bài 1 + 2 này tôi làm lâu rồi , ko nhớ có đúng đề ko ? Đang sắp học lên năm thứ 2 mà . Có gì tôi sưu tầm tiếp cho :D , coi như ôn lại
     
  12. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
    Xin lỗi cậu [L]at nha! Thực ra tui đã 22+ rùi nhưng bạn bè có lúc cũng gọi vui thế thôi. Thôi, đề nghị [L]at nói đề lại đề kĩ kĩ một chút, chú ý khi đặt đkiện ngắt. Để anh em còn tham gia nữa chứ! OK
     
  13. huunhon

    huunhon Donkey Kong

    Tham gia ngày:
    15/8/05
    Bài viết:
    342
    Không biết đúng ý muốn của tác giả không nữa. Làm sai đừng chửi nha bà con :))
    Bài 1:
    PHP:
    #include "iostream.h"
    #include "conio.h"
    void main()
    {
        
    int a;
        
    cout<<"nhap 1 so:";
        
    cin>>a;
        
    a=a*3+1;
        while (
    a!=1)
        {
            if (
    a%2==0a=a/2;
            else 
    a=a*3+1;
            
    cout<<a<<" ";
        }
    }
    Bài 2:
    PHP:
    #include "iostream.h"
    #include "conio.h"

    void main()
    {
        
    float tiengui,laisuat;
        
    cout<<"nhap tien gui:";
        
    cin>>tiengui;
        
    cout<<"nhap lai suat";
        
    cin>>laisuat;
        for (
    int i=0;i<20;i++)
        {
            
    tiengui+=tiengui*laisuat/100;
        }
        
    cout<<"Tien nhan duoc:"<<tiengui;
    }
     
  14. Tử_Kiệt

    Tử_Kiệt Youtube Master Race

    Tham gia ngày:
    29/8/06
    Bài viết:
    27
    <code style="white-space:nowrap">
    <div dir="ltr" style="text-align:left;">
    <!-- php buffer start --><code><span style="color: #000000">
    <span style="color: #0000BB"></span><span style="color: #FF8000">#include&nbsp;"iostream.h"
    <br />#include&nbsp;"conio.h"

    <br /></span><span style="color: #0000BB">void&nbsp;main</span><span style="color: #007700">()
    <br />{
    <br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">int&nbsp;a</span><span style="color: #007700">;
    <br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">cout</span><span style="color: #007700">&lt;&lt;</span><span style="color: #DD0000">"nhap&nbsp;1&nbsp;so:"</span><span style="color: #007700">;
    <br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">cin</span><span style="color: #007700">&gt;&gt;</span><span style="color: #0000BB">a</span><span style="color: #007700">;
    <br />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">a</span><span style="color: #007700">=</span><span style="color: #0000BB">a</span><span style="color: #007700">*</span><span style="color: #0000BB">3</span><span style="color: #007700">+</span><span style="color: #0000BB">1</span><span style="color: #007700">;

    <br />&nbsp;&nbsp;&nbsp;&nbsp;while&nbsp;(</span><span style="color: #0000BB">a</span><span style="color: #007700">!=</span><span style="color: #0000BB">1</span><span style="color: #007700">)
    <br />&nbsp;&nbsp;&nbsp;&nbsp;{
    <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if&nbsp;(</span><span style="color: #0000BB">a</span><span style="color: #007700">%</span><span style="color: #0000BB">2</span><span style="color: #007700">==</span><span style="color: #0000BB">0</span><span style="color: #007700">)&nbsp;</span><span style="color: #0000BB">a</span><span style="color: #007700">=</span><span style="color: #0000BB">a</span><span style="color: #007700">/</span><span style="color: #0000BB">2</span><span style="color: #007700">;

    <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;else&nbsp;</span><span style="color: #0000BB">a</span><span style="color: #007700">=</span><span style="color: #0000BB">a</span><span style="color: #007700">*</span><span style="color: #0000BB">3</span><span style="color: #007700">+</span><span style="color: #0000BB">1</span><span style="color: #007700">;
    <br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000BB">cout</span><span style="color: #007700">&lt;&lt;</span><span style="color: #0000BB">a</span><span style="color: #007700">&lt;&lt;</span><span style="color: #DD0000">"&nbsp;"</span><span style="color: #007700">;
    <br />&nbsp;&nbsp;&nbsp;&nbsp;}
    <br />}&nbsp;

    <br /></span><span style="color: #0000BB"></span>
    </span>
    </code><!-- php buffer end -->
    </div>
    </code>
     
  15. chan__doi

    chan__doi Mr & Ms Pac-Man

    Tham gia ngày:
    30/10/06
    Bài viết:
    159
    Nơi ở:
    Vương quốc ăn ngủ
    Em mới học lập trình đc có 1 tháng hà, đang kiếm bài tập hay hay.

    Cám ơn mấy anh nha. ::) . Em mới làm xong đươc có bài 1 hà.

    Mấy anh góp ý giùm em thx, có cần gán vô cái mãng kô vậy. ::) ( Cho em thêm bài tương đối dễ đi, em cần bài về mảng 1 chiều , đừng khó quá chít em >.< )

     
  16. huunhon

    huunhon Donkey Kong

    Tham gia ngày:
    15/8/05
    Bài viết:
    342
    Bài tập mảng 1 chiều đây ( tui tự nghĩ ra =)))
    Nhập 1 mảng 1 chiều các số nguyên
    a) Tìm phần tử bé nhất và lớn nhất của mảng.
    b) So sánh tổng các phần tử ở vị trí chẳn và tổng các phần tử ở vị trí lẻ.
    c) Đảo vị trí các phần tử trong mảng.

    Ví dụ mảng nhập vào là 1 3 4 7 8
    Kết quả in ra màn hình:
    Phần tử lớn nhất : 8
    Phần tử bé nhất : 1
    Tổng phần tử ở vị trí chẳn : 10 bé hơn Tổng phần tử ở vị trí lẻ :13
    Mảng sau khi đảo vị trí các phần tử: 8 7 4 3 1.

    Làm hết rồi tui nghĩ ra bài khác tiếp cho :))
     
  17. maivietdung

    maivietdung Youtube Master Race

    Tham gia ngày:
    4/12/06
    Bài viết:
    9

    bài giải của bài pác đưa đây. Nghĩ tiếp cho anh em bài mới đi:;)

    #include "conio.h"
    #include "stdio.h"
    #include "stdlib.h"



    void In(int *a,int n)
    { for (int i=0;i<n;i++)
    { printf(" - Nhap phan tu a[%d] = ",i);
    scanf("%d",&a);
    }
    }

    void Out(int *a,int n)
    { for (int i=0;i<n;i++)
    printf("%3d",a);
    }

    void Max(int *a,int n)
    { int max=a[0];
    for (int i=0;i<n;i++)
    if (max<a) max=a;
    printf("\n - Phan tu lon nhat trong mang la: %3d",max);
    }

    void Min(int *a,int n)
    { int min=a[0];
    for (int i=0;i<n;i++)
    if (min>a) min=a;
    printf("\n - Phan tu nho nhat trong mang la: %3d",min);
    }

    void Compare(int *a,int n)
    { int s1=0,s2=0;
    for (int i=0;i<n;i++)
    if (i%2)
    s1+=a;
    else s2+=a;
    if (s1<s2) printf("\n - Tong cac so o vi tri chan (%3d) lon hon tong cac so o vi tri le (%3d)",s2,s1);
    else printf("\n - Tong cac so o vi tri le (%3d) lon hon tong cac so o vi tri chan (%3d)",s1,s2);
    }

    void Out2(int *a,int n)
    { for (int i=n-1;i>=0;i--)
    printf("%3d",a);
    }

    void main()
    { int n;
    clrscr();
    printf(" - Cho biet so luong phan tu trong mang: ");
    scanf("%d",&n);
    int *a=new int[n];
    In(a,n);
    clrscr();
    printf("\n - Mang mot chieu vua nhap vao: ");
    Out(a,n);
    Max(a,n);
    Min(a,n);
    Compare(a,n);
    printf("\n - Mang dao nguoc lai:");
    Out2(a,n);
    getch();
    }
     
  18. huunhon

    huunhon Donkey Kong

    Tham gia ngày:
    15/8/05
    Bài viết:
    342
    Vài ý kiến trước đã chứ :)), chưa gì đã đòi bài mới rồi
    1) lần sau phần script bạn để trong thẻ php cho dễ nhìn.
    2) phương thức max min bạn có thể kết hợp lại để duyệt mảng 1 lần thôi và xác định được cả max, min :)
    3) bài 3 bạn làm không đúng yêu cầu bài toán rồi, bài toán là đảo các phần tử trong mảng, chứ ko phải là in mảng theo thứ tự từ cuối lên đầu :)).
    ví dụ a[0]=1,a[1]=2,a[2]=3,a[4]=4,a[5]=5 sau khi đảo chuỗi ta sẽ có mảng mới a[0]=5,a[1]=4,a[2]=3,a[4]=2,a[5]=1
     
  19. maivietdung

    maivietdung Youtube Master Race

    Tham gia ngày:
    4/12/06
    Bài viết:
    9
    nếu vậy thì câu 3 làm vầy đúng hông?

    do{
    đảo vi trí của a và a[j]
    i=i+1
    j=j+1}
    while(i<j)
     
  20. maivietdung

    maivietdung Youtube Master Race

    Tham gia ngày:
    4/12/06
    Bài viết:
    9
    mình quên del cái mảng a trong phần code rồi. Bạn nào thêm dùm mình delete(a) trước getch() với
     

Chia sẻ trang này