Cách Tạo Chương Trình đồng Hồ Bấm Giờ Trong Pascal

Mục lục:

Cách Tạo Chương Trình đồng Hồ Bấm Giờ Trong Pascal
Cách Tạo Chương Trình đồng Hồ Bấm Giờ Trong Pascal

Video: Cách Tạo Chương Trình đồng Hồ Bấm Giờ Trong Pascal

Video: Cách Tạo Chương Trình đồng Hồ Bấm Giờ Trong Pascal
Video: Pascal - Đồng hồ đếm giờ 2024, Có thể
Anonim
Cách tạo chương trình đồng hồ bấm giờ trong Pascal
Cách tạo chương trình đồng hồ bấm giờ trong Pascal

Cần thiết

PascalABC. NET hoặc môi trường lập trình PascalTurbo

Hướng dẫn

Bước 1

Vì vậy, trước tiên, chúng ta hãy mở chương trình. Hãy tạo một tệp mới và chỉ định các plugin. Trong trường hợp này, chúng ta cần một mô-đun để làm việc với bảng điều khiển - CRT.

cho điều này, chúng tôi sẽ viết:

sử dụng

CRT;

Bước 2

Hãy cho biết các biến i, s, m - các biến kiểu thực.

var

i, s, m: Real;

Bước 3

Để bắt đầu chương trình, hãy viết:

bắt đầu

Và chúng tôi sẽ chỉ ra tiêu đề của cửa sổ giao diện điều khiển:

SetWindowTitle ('Đồng hồ bấm giờ');

Bước 4

Thủ tục TextColor gán màu cho văn bản và câu lệnh Write hiển thị văn bản ra màn hình:

Màu văn bản (LightGreen);

WriteLn ('Nhấn Enter để bắt đầu đồng hồ bấm giờ');

WriteLn ('Bấm lại để dừng');

Write ('Nhấp lại để bắt đầu lại');

Ln kết thúc chuyển sang dòng tiếp theo.

Bước 5

Toán tử ReadLn nhập các giá trị từ bàn phím, nhưng trong trường hợp này, nó chỉ đợi người dùng nhấn Enter:

ReadLn;

Bước 6

Chúng tôi tạo ra một vòng lặp vô tận:

trong khi (đúng) làm

bắt đầu

Hàm while (true) do begin dịch ra là: Trong khi (điều kiện) do (). Tại sao lại bắt đầu ở đây?

Trong trường hợp này, chúng ta cần một toán tử ghép, có nghĩa là trong khi điều kiện là đúng, một số toán tử được thực thi. Nếu nó không phải là begin, thì sau While, chỉ một câu lệnh được thực thi, điều này sẽ dẫn đến hoạt động chương trình không chính xác. Để kết thúc câu lệnh While ở cuối, chúng ta viết end.

Bước 7

Bây giờ hãy đặt lại bộ đếm:

i: = 0;

Bước 8

Câu lệnh sau được dịch là: cho đến khi phím do () được nhấn.

trong khi không nhấn phím làm gì

bắt đầu

Toán tử ClrScr xóa màn hình:

ClrScr;

Bước 9

Chúng tôi đặt điều kiện: nếu giây nhiều hơn 60 và nhỏ hơn 3600 (điều này là cần thiết để khi thời gian hơn một giờ, chương trình chỉ in những gì sau if thứ ba) thì:

nếu (i> 60) và (i <3600) thì bắt đầu

Biến m (phút) bằng: giây chia cho 60 và làm tròn ra phía trước.

m: = Int (i / 60);

Và biến s (giây không tính phút) bằng: tất cả giây trừ đi phút nhân với 60.

s: = i - m * 60;

Bước 10

Câu lệnh Write viết bao nhiêu phút và giây đã trôi qua và câu lệnh end kết thúc công việc của begin theo điều kiện if:

Viết (m, 'phút (s) và', s: 1: 2, 'giây (s)')

chấm dứt;

Hàm: 1: 2 có nghĩa là giây phải được viết với hai chữ số thập phân.

Bước 11

Nếu giây nhỏ hơn 60, thì chỉ cần viết bao nhiêu giây đã trôi qua với hai chữ số thập phân:

nếu tôi <60 thì

Write ('', i: 1: 2, 'seconds (a / s)');

Bước 12

Nếu giây nhiều hơn 3600 (tức là hơn một giờ) thì:

nếu tôi> 3600 thì bắt đầu

m: = Int (i / 60);

s: = i - m * 60;

ch: = Int (m / 60);

m: = m - ch * 60;

Write (ch, 'hour (s)', m, 'minutes (s) and', s: 1: 2, 'seconds (s)');

chấm dứt;

Bước 13

Vì vậy, chương trình đã viết rằng 0 giây đã trôi qua, bây giờ nó tăng bộ đếm i lên 10 mili giây và vì chương trình thực hiện mọi thứ ngay lập tức, chúng tôi thực hiện một thời gian trễ như sau:

i: = i + 0,01;

Chậm trễ (10);

Tiếp theo, chúng ta kết thúc câu lệnh While (không nhấn phím):

chấm dứt;

Nếu người dùng nhấn phím Enter, thì chương trình sẽ đợi anh ta nhấn lại để khởi động lại đồng hồ bấm giờ:

Readln;

Readln;

Không phải ngẫu nhiên mà chúng ta đặt bộ đếm về 0 sau câu lệnh While (true), vì khi người dùng nhấn Enter lần thứ hai, chương trình sẽ bắt đầu từ đó, đặt lại bộ đếm và bắt đầu đếm lại.

Tiếp theo, chúng tôi kết thúc While và cho toàn bộ chương trình:

chấm dứt;

Bước 14

Đây là chương trình hoàn chỉnh:

sử dụng

CRT;

var

tôi thật;

s: Thực;

m: Thực;

ch: Thực;

bắt đầu

SetWindowTitle ('Đồng hồ bấm giờ');

Màu văn bản (LightGreen);

WriteLn ('Nhấn Enter để bắt đầu đồng hồ bấm giờ');

WriteLn ('Bấm lại để dừng');

Write ('Bấm lại để bắt đầu lại');

ReadLn;

trong khi (đúng) làm

bắt đầu

i: = 0;

trong khi không nhấn phím làm gì

bắt đầu

ClrScr;

nếu (i> 60) và (i <3600) thì bắt đầu

m: = Int (i / 60);

s: = i - m * 60;

Viết (m, 'phút (s) và', s: 1: 2, 'giây (s)')

chấm dứt;

nếu tôi <60 thì

Write ('', i: 1: 2, 'seconds (a / s)');

nếu tôi> 3600 thì bắt đầu

m: = Int (i / 60);

s: = i - m * 60;

ch: = Int (m / 60);

m: = m - ch * 60;

Write (ch, 'hour (s)', m, 'minutes (s) and', s: 1: 2, 'seconds (s)');

chấm dứt;

i: = i + 0,01;

Chậm trễ (10);

chấm dứt;

Readln;

Readln;

chấm dứt;

chấm dứt.

Hình ảnh
Hình ảnh

Bước 15

Hóa ra nó không đẹp lắm, nhưng chương trình hoạt động chính xác!

Đề xuất: