Trường Mở - Cộng Đồng Học Sinh Việt Nam

 Quên mật khẩu
 Đăng ký
Tìm
Xem: 246|Trả lời: 1
In Chủ đề trước Tiếp theo

[Khác] Tin 11 Pascal

Nhảy đến trang chỉ định
Chủ nhà
Sofa
Đăng lúc 10-12-2013 19:24:28 | Chỉ xem của tác giả
Chương trình:

Uses crt;
Var n:integer;
      S:longint;
Begin
      CLRSCR;
      Writeln('Nhap so KW dien tieu thu: '); Readln(n);       if (n>100) then S:=50*1000+50*1200+(n-100)*1500
      else if (n>50) then S:=50*1000+(n-50)*1200
      else S:=n*1000;
      Writeln('So tien ho gia dinh can tra: ',s);
      Readln;
END.

Giải thích:
- Biến N nhập vào là số KW điện tiêu thụ, và S là số tiền cần trả
- Trước tiên xin nhắc nhở một tí là n là Integer thì S phải là Longint ( vì nếu không số tiền của bạn chỉ có 32767đ là hết đát, mà có ai xài 100kW mà trả có 32767đ thôi đâu. Chung quy lại là để không bị vượt mức dữ liệu ), hoặc bạn có thể thay thế cả hai thành kiểu Real ( số thực ).
- Nên xét từ lớn đến bé.
- - Nếu số KW hơn 100 ( tức 101 trở đi ) thì tính S:=50*1000+50*1200+(n-100)*1500
-->> Tức là 50 KW đầu tính với giá 1000, 50 KW tiếp theo tính với giá 1200, và số KW còn lại tính với giá 1500.
- - Tương tự, nếu số KW hơn 50 ( không cần bé hơn 100 nữa vì nếu nó hơn 100 thì đã vào trường hợp trên rồi ) thì S:=50*1000+(n-50)*1200
-->> Tức là 50 KW đầu tính giá 1000, số KW còn lại tính với giá 1200
- - Trường hợp cuối là <=50, thì trường hợp này không cần suy nghĩ nhiều, có bao nhiêu tính bấy nhiêu, tức S:=n*1000
- Và cuối cùng xuất S là tổng vừa tìm được.

Bạn phải đăng nhập mới được đăng bài Đăng nhập | Đăng ký

Quy tắc điểm

GMT+7, 8-4-2025 14:19

Trang Chủ | Diễn Đàn Trường Mở

Truongmo.com © 2011

Trả lời nhanh Lên trên Trở lại danh sách