01/10/2018, 01:01

Thắc mắc về bài tập cơ bản (array) trong C

Mình có một bài tập về array, mình mới học về lập trình thoi nên còn lúng túng những bài tập như vậy. Mọi người có thể gợi ý cách làm bài dưới đây giúp mình với. Cảm ơn rất nhiều.

Bạn cần theo dõi thời tiết mỗi tuần. Để làm điều đó bạn cần tạo array của 7 cột dọc, 3 hang ngang. Hàng 1, ban cần báo cáo lượng mưa bằng cm. Hàng 2, ban báo cáo nhiệt độ hằng ngày. Hàng 3, chưa nhiệt độ thấp hằng ngày.
Tạo array tên: thời tiết
Program sẽ nhắc nhở ng dùng từng cái của 3 giá trị này, mỗi ngày 1 lần
Bạn sẽ lưu trữ những giá trị trong aray: thời tiết
Program của bạn phải kiểm tra lượng mua giữa 0 and 5 cm
Program phải kiểm tra nhiệt độ từ -40 và 150độ
Program cần đảm bảo nhiệt độ thấp hằng ngày k cao hơn nhiệt độ cao
Ng dùng cần sửa cho đúng data trc khi tiếp tục
Output cảm ơn sau khi 7 ngày được nhập vào

sử dụng array trong bài trên. Tạo 3 functions:
a. Print tổng lượng mua trong 1 tuần
b. Print nhiệt độ cao nhất trong 1 tuần
c. Print nhiệt độ thấp nhất

Doanh Văn Lương viết 03:05 ngày 01/10/2018

bạn đọc thêm về mảng 2 chiều để làm bài này nhé. các yêu cầu và mô tả của đề bài rất rõ ràng rồi. cố gắng suy nghĩ thêm, nếu vẫn không làm được thì hỏi tiếp bị mắc ở chỗ nào.

Duy Trần viết 03:09 ngày 01/10/2018

Làm thế nào để kiểm tra nhiệt độ và lượng mưa v bạn?

Trần Hoàn viết 03:06 ngày 01/10/2018

-Tạo mảng 2 chiều dùng số thực: double ThoiTiet[7][3];
(ThoiTiet[0][0] là lượng mưa của ngày thứ nhất, ThoiTiet[0][2] là nhiệt độ thấp nhất của ngày thứ nhất, ThoiTiet[6][0] là lượng mưa của ngày cuối cùng)

-Thuật toán cho hàm nhập lượng mưa của một ngày :

void NhapLuongMua(int Ngay)
{
    double LuongMua;
    do
    {
        Thông báo nhập lượng mưa cho ngày <Ngay+1>;
        Nhập lượng mưa;
        Nếu LuongMua không nằm trong khoảng từ 0 đến 5 thì thông báo nhập lại;
    }
    while (LuongMua không nằm trong khoảng 0 đến 5);
    ThoiTiet[Ngay][0]=LuongMua;
}

-Thuật toán cho hàm nhập lượng nhiệt độ của một ngày :

void NhapLuongMua(int Ngay)
{
    double NhietDoToiDa, NhietDoToiThieu;
    bool NhapXong=true;
    do
    {
        Thông báo nhập nhiệt độ cao cho ngày <Ngay+1>;
        Nhập nhiệt độ cao cho ngày;
        Thông báo nhập nhiệt độ thấp cho ngày <Ngay+1>;
        Nhập nhiệt độ thấp cho ngày;
        if
            NhietDoToiDa không nằm trong khoảng từ -40 đến 150 thì thông báo nhập lại và NhapXong=false;
        else if
            NhietDoToiThieu không nằm trong khoảng từ -40 đến 150 thì thông báo nhập lại và NhapXong=false;
        else
            NhietDoToiDa<=NhietDoToiThieu thì thông báo nhập lại và NhapXong=false;
    }
    while (NhapXong=false);
    ThoiTiet[Ngay][1]=NhietDoToiDa;
    ThoiTiet[Ngay][2]=NhietDoToiThieu ;
}

-Cho chạy vòng for (int i=0;i<7;i++) để nhập thời tiết hết các ngày trong tuần, xong vòng for thì đến câu lệnh cảm ơn
-Hàm tính tổng lượng mưa (tính thôi nhé, muốn in ra thì gọi lệnh in):

double TongLuongMuaTuan (double Input1[][], int Input2)
{
    double TongLuongMua=0;
    for (int i=0;i<Input2;i++) TongLuongMua=TongLuongMua+Input1[i][0];
    return TongLuongMua;
}

-Hàm tìm nhiệt độ cao nhất (tính thôi nhé, muốn in ra thì gọi lệnh in):

double NhietDoCaoNhatTuan (double Input1[][], int Input2)
{
    double NhietDoCaoNhatTuan =Input1[0][1];
    for (int i=0;i<Input2;i++)
        if (NhietDoCaoNhatTuan < Input1[i][1]) NhietDoCaoNhatTuan = Input1[i][1]
    return NhietDoCaoNhatTuan;
}

-Hàm tìm nhiệt độ thấp nhất làm tương tự

Duy Trần viết 03:11 ngày 01/10/2018

Cảm ơn bạn nhiều lắm

Bài liên quan
0