Giáo trình Nhập môn Tin học LỜi nóI ĐẦU



tải về 4.67 Mb.
trang51/63
Chuyển đổi dữ liệu20.05.2018
Kích4.67 Mb.
1   ...   47   48   49   50   51   52   53   54   ...   63

6.4.4. Một số câu lệnh kết thúc sớm vòng lặp hoặc chương trình


6.4.4.1. Lệnh nhảy không điều kiện (Goto) là câu lệnh nhảy không điều kiện, cho phép nhảy từ bất kì nơi nào bên trong chương trình hay chương trình con đến vị trí đã đánh dấu bằng nhãn. Nhãn là một tên, như tên biến hoặc là một số nguyên, sử dụng như sau:

Cú pháp: Goto nhãn;

Cách thực hiện:

1) Khai báo nhãn: phải khai báo nhãn tại phần đầu khai báo (xem cấu trúc chung một chương trình Pascal) theo cú pháp:



label nhãn1, nhãn2, …, nhãnN;

2) Đánh dấu đích: Trong thân chương trình vị trí đích sẽ nhảy đến bằng lệnh Goto cần đánh dấu trước, theo cú pháp sau:



nhãn: các_câu_lệnh_đích;

3) Viết câu lệnh: Goto nhãn;

* Chú ý với lệnh nhảy vô điều kiện Goto:

- Có thể nhảy từ trong vòng lặp ra ngoài,

- Không cho phép nhảy từ ngoài vào trong vòng lặp, từ ngoài vào trong chương trình con.

- Nên hạn chế dùng câu lệnh nhảy vô điều kiện Goto vì nó phá vỡ tính cấu trúc của câu lệnh điều khiển, khó theo dõi.


Ví dụ 6.15: Viết chương trình nhập vào một số nguyên n, In ra màn hình số chính phương lớn nhất mà nhỏ hơn n.
Program vidu_6_15;

Label in_ket_qua;

var k,i:integer;

begin


write('Nhap so can kiem tra :');readln(k);

for i:=k downto 1 do

if frac(sqrt(i)) = 0 then

goto in_ket_qua;

in_ket_qua: writeln(' So chinh phuong do la : ',i);

readln;


end.
6.4.4.2. Lệnh chấm dứt sớm vòng lặp (Break) là câu lệnh có tác dụng chấm dứt giữa chừng một vòng lặp dù chưa kết thúc, theo cúa pháp sau:

Cú pháp: Break;
Ví dụ 6.16: xét lại ví dụ 6.16 trên nhưng sử dụng câu lệnh Break

Program vidu_6_16;

var k,i:integer;

begin


write('Nhap so can kiem tra :');readln(k);

for i:=k downto 1 do

if frac(sqrt(i)) = 0 then

begin


writeln(' So chinh phuong do la : ',i);

break;


end;

readln;


end.

* Chú ý:

- Lệnh Break cho phép thoát khỏi mọi kiểu vòng lặp For, While hay Repeat - Until.

- Nếu có nhiều vòng lặp lồng nhau thì câu lệnh Break cho phép thoát khỏi vòng lặp bên trong nhất chứa nó. Các vòng lặp bên ngoài vẫn hoạt động bình thường.
6.4.4.3. Lệnh thoát khỏi chương trình con (Exit) là lệnh kết thúc và thoát khỏi chương trình con, theo cú pháp sau:

Cú pháp: Exit;

Thực hiện như sau:

- Nếu ở bên trong chương trình con thì lệnh này chấm dứt chương trình con (mặc dù chưa đến câu lệnh cuối) và trở về chương trình bên ngoài đã gọi chương trình con.

- Nếu ở chương trình chính thì lệnh này chấm dứt chương trình chính và dừng lại.

 câu lệnh Exit chỉ nên sử dụng trong các chương trình con


Ví dụ 6.17: Viết chương trình nhập vào số k, kiểm tra số k có phải là số nguyên tố hay không?

Program vidu_6_17;

var k,i:integer;

function lsnt(k:integer):boolean;

var i:integer;

begin


lsnt:=true;

for i:=2 to k-1 do

if k mod i = 0 then

begin


lsnt:=false;

exit;


end;

end;


begin

write('Nhap so can kiem tra :');readln(k);

if lsnt(k) then writeln(k,' la so nguyen to')

else writeln(k,' khong la so nguyen to');

readln;

end.
6.4.4.4. Lệnh dừng chương trình bất thường (Halt) là lệnh dừng chương trình chính. Lệnh này được sử dụng khi xảy ra lỗi, sai sót nghiêm trọng, việc tiếp tục chương trình là không có ý nghĩa.



Cú pháp: Halt;

Ví dụ 6.18:

Program vidu_6_18;

var F,x,y:real;

begin


writeln(' Nhap x = ');readln(x);

writeln(' Nhap y = ');readln(y);

if y <>0 then F:=x/y

Else halt; {Chuong trinh se dung lai ngay khi thay y =0}

writeln(' F = ',F:8:3);

readln;


end.

BÀI TẬP CHƯƠNG 6



Bài 6.1: Nhập từ bàn phím 3 số a,b,c. Kiểm tra xem a,b,c có phải là 3 cạnh của tam giác hay không.

- Nếu thoả mãn hãy tính chu vi, diện tích của tam giác và hiển thị kết quả lên màn hình



- Nếu không thoả mãn in dòng thông báo: a,b,c khong la ba canh cua tam giac
Bài 6.2: Nhập từ bàn phím 3 số a, b, c cho đến khi thỏa mãn là độ dài 3 cạnh của tam giác ABC rồi tính đường tròn ngoại tiếp tam giác theo công thức:

R= với S là diện tích tam giác được tính theo công thức Hêrông:

S= trong đó p là nửa chu vi
Bài 6.3: Lập chương trình giải phương trình bậc 2: ax2+bx+c = 0 (a<>0)
Bài 6.4: Nhập từ bàn phím 3 số a,b,c. Tìm số lớn nhất và nhỏ nhất trong 3 số đó.
Bài 6.5: Viết chương trình in ra thông báo gõ phím loại nào: Dấu phép toán +, -, *, /, <, >, =; dấu chính tả: dấu chấm (.), dấu phẩy (,), chấm phẩy (;), chấm than (!), dấu hỏi (?), dấu ba chấm (…); các chữ số: 0, 1, …, 9; các chữ cái thường: a, b, …, z; các chữ cái in hoa: A, B, …, Z; hay các ký hiệu khác.
Bài 6.6: Nhập từ bàn phím 2 số a,b và tính giá trị của biểu thức: F(x)=4x2+5x+1


Nếu a>b



Nếu a = b

Nếu a x =
Bài 6.7: Nhập vào 1 số nguyên n (n<20). In ra màn hình n dòng, mỗi dòng n ký tự *.
Bài 6.8: Nhập từ bàn phím trị n nguyên, dương, sau đó tính tổng S và in kết quả ra màn hình

  1. S = 1 - 1/2 + 1/3 - 1/4 + .......+1/n

  2. S = 1 + 3 + 5+ ... + (2n+1)


Bài 6.9: Nhập n từ bàn phím và tính n!. In kết quả lên màn hình.
Bài 6.10: Nhập x,n từ bàn phím rồi tính:

  1. S:= 1 + x + 2x + ... +nx;

  2. S:= 1 + x + x2 + ... + xn

  3. S=1+x+x2/2!+x3/3!+...+xn/n!

  4. S = sinx/cosx + sin2x/cos2x + ... + sinnx/cosnx.


Bài 6.11: Tìm 3 số nguyên dương a,b,c thoả mãn: a2 + b2 + c2 = abc
Bài 6.12: Tìm số m lớn nhất thoả mãn bất đẳng thức: m3+m2+m+1 < 1999

Bài 6.13: Nhập n nguyên dương từ bàn phím và đếm các số lẻ trong đoạn từ 1 tới n.
Bài 6.14: Nhập n nguyên dương từ bàn phím và tính tích các số chẵn trong đoạn từ 1 tới n.
Bài 6.15: In lên màn hình tam giác vuông, tam giác cân bằng các dấu *, biết chiều cao của tam giác là h được nhập vào từ bàn phím.
Bài 6.16: Kiểm tra việc nhập từ bàn phím một ngày tháng hợp lệ. Yêu cầu gõ lại cho đến khi đúng.
Bài 6.17: Viết chương trình lặp công việc sau cho đến khi nhấn phím ESC.

Tính cước điện thoại biết đầu vào thời gian bắt đầu cuộc gọi là Ts và độ dài của cuộc gọi T (phút). Có giảm giá 1/3 nếu ngoài giờ làm việc (trước 8h00 và sau 16h00), giảm giá một nửa nếu từ 23h00 đến 6h00 sáng. Giá chuẩn là x đồng/1 phút.


Bài 6.18: Viết chương trình nhập vào một số và kiểm tra xem số đó có là số nguyên tố hay không.

Chương 7

DỮ LIỆU CÓ CẤU TRÚC

1   ...   47   48   49   50   51   52   53   54   ...   63


Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2016
được sử dụng cho việc quản lý

    Quê hương