1. Bài toán
2. Giải thuật:
Bước 1. Nhập thông tin:
Bước 2. Xử lý:
- Bước 1.1. Nhập \(N\);
- Bước 1.2. Nhập và nhiệt độ của từng ngày.
Bước 3. In ra màn hình nhiệt độ trung bình và số ngày có nhiệt độ cao hơn nhiệt độ trung bình.
- Bước 2.1. Tính trung bình nhiệt độ các ngày Trung_binh = tổng nhiệt độ các ngày chia cho số ngày.
- Bước 2.2. Gán \(dem = 0\). Nếu nhiệt độ lớn hơn nhiệt độ trung bình thì đếm tăng lên một (tức \(dem:= dem + 1\)).
3. Code Pascal:
Program Nhietdo_Nngay; uses crt; const Max = 366; var Nhietdo: array[1..Max] of integer; Tong, i, N, dem: integer; Trung_binh: real; Begin clrscr; writeln('Chuong trinh tinh nhiet do trung binh'); write('Nhap so ngay: '); readln(N); Tong:= 0; for i:=1 to N do Begin write('Nhiet do ngay thu ',i,': '); readln(Nhietdo[i]); Tong:= Tong + Nhietdo[i]; End; Trung_binh:= Tong/N; dem:= 0; for i:=1 to N do if Nhietdo[i] > Trung_binh then dem:= dem + 1; writeln('Nhiet do trung binh cua ', N, ' la: ', Trung_binh:4:1); writeln('So ngay co nhiet do tren trung binh: ',dem); readln; End.
4. Giải thích code
Dong code | Ý nghĩa |
---|---|
Program Nhietdo_Nngay; | Đặt tên chương trình Nhietdo_Nngay; |
uses crt; | Khai báo các hàm thư viện |
const Max = 366; | Khai báo hằng số cho giá trị biến Max = 366 |
Var Tong, i, N, dem: Integer | Khai báo biến Tong(Tính tổng nhiệt độ các ngày), i(biến chạy),N(Số ngày), dem(Số ngày có nhiệt độ trên nhiệt độ trung bình) |
Trung_binh: real; | Khai báo biến Trung_binh(Nhiệt độ trung bình) |
clrscr; | Xóa màn hình khi chạy chương trình |
writeln('Chuong trinh tinh nhiet do trung binh'); | In ra màn hình dòng chữ Chuong trinh tinh nhiet do trung binh |
write('Nhap so ngay: '); | In ra màn hình dòng chữ Nhap so luong phan tu cua day: |
readln(N); | Nhập từ bàn phím giá trị gán vào biến N |
Tong:= 0; | Gán 0 vào biến Tong |
for i:=1 to N do begin write('Nhiet do ngay thu ',i,': '); readln(Nhietdo[i]); Tong:= Tong + Nhietdo[i]; end; |
Cho i chạy từ 1 đến N làm công việc in các phần tử của dãy ra màn hình và tính tổng nhiệt độ các ngày. |
Trung_binh:= Tong/N; | Tính nhiệt độ trung bình bằng công thức |
dem:= 0; | Gán biến dem là 0 |
for i:=1 to N do if Nhietdo[i] > Trung_binh then Begin dem:= dem + 1; End; |
Cho i từ 1 đến N thực hiện công việc: Nếu phần tử \(Nhietdo[i] > Trung_binh\) thì gán \(max = a[i]\) và gán vị trí i làm \(csmax\) |
writeln('Nhiet do trung binh cua ', N, ' la: ', Trung_binh:4:1); | In ra màn hình câu "Nhiet do trung binh cua" và in giá trị \(Max\) và câu "la: " ra màn hình |
writeln('So ngay co nhiet do tren trung binh: ',dem); | In ra màn hình câu "So ngay co nhiet do tren trung binh:" và in giá trị \(dem\) ra màn hình |
Readln; | Dừng màn hình cho các bạn xem kết quả. |
Không có nhận xét nào:
Đăng nhận xét