Nội dung bài học Bài 6: Câu lệnh điều kiện dưới đây chúng ta sẽ cùng nhau tìm hiểu về cấu trúc rẽ nhánh trong lập trình; cú pháp, hoạt động của các câu lệnh điều kiện dạng thiếu và dạng đủ trong Pascal;... Mời các em cùng theo dõi bài học.
Ví dụ về hoạt động phụ thuộc điều kiện:
Từ "nếu" trong các câu trên được dùng để chỉ một "điều kiện" và các hoạt động tiếp theo sau sẽ phụ thuộc vào điều kiện đó
Tóm lại: Có những hoạt động chỉ được thực hiện khi một điều kiện cụ thể được xảy ra.
Xét tính đúng hoặc sai của điều kiện trong các ví dụ về hoạt động phụ thuộc điều kiện ở phần 1:
Điều kiện | Kiểm tra | Kết quả | Hoạt động tiếp theo |
Trời mưa? | Long nhìn ra ngoài và thấy trời mưa | Đúng | Long ở nhà (không đi đá bóng) |
Em bị ốm? | Buổi sáng thức dậy, em thấy mình hoàn toàn khỏe mạnh | Sai | Em tập thể dục buổi sáng như thường lệ |
Bảng 1. Minh họa tính đúng hoặc sai của điều kiện
Ví dụ trong Tin học:
Hình 1. Ví dụ trong Tin học về tính đúng hoặc sai của điều kiện
Nếu chọn đúng thì chương trình dừng lại, chọn sai chương trình chạy tiếp.
Để so sánh ta thường sử dụng các kí hiệu toán học như: <, >, =, <>, <=, >=.
Ví dụ 1: Nếu a > b, phép so sánh đúng thì in giá trị của a ra màn hình; ngược lại, in giá trị của b ra màn hình (có nghĩa là phép so sánh cho kết quả sai).
1.4. Cấu trúc rẽ nhánh
Ví dụ 2: Một hiệu sách thực hiện đợt khuyến mãi lớn với nội dung sau: Nếu mua sách với tổng số tiền ít nhất là 100 nghìn đồng, khách hàng sẽ được giảm 30% tổng số tiền phải thanh toán.
Mô tả hoạt động tính tiền cho khách:
Ví dụ 3: Trong ví dụ 2, chúng ta biết rằng nếu tổng số tiền không nhỏ hơn 100 nghìn đồng, khách hàng sẽ được giảm 30% tổng số tiền phải thanh toán. Giả sử thêm vào đó, cửa hàng giảm 10% cho những khách chỉ mua với tổng số tiền không đến 100 nghìn đồng.
Mô tả hoạt động tính tiền cho khách:
LƯU Ý:
Hình 2. Cấu trúc rẽ nhánh dạng thiếu
Hình 3. Cấu trúc rẽ nhánh dạng đủ
Cú pháp:
If < Điều kiện > then
< Câu lệnh >;
Hoạt động: Chương trình sẽ kiêm tra điều kiện. Nếu điều kiện được thoã mãn, chương trình sẽ thực hiện câu lệnh sau từ khoá then, ngược lại câu lệnh đó bị bỏ qua.
Cú pháp:
If < Điều kiện > then
< Câu lệnh 1 >
Else
< Câu lệnh 2 >;
Hoạt động: Chương trình sẽ kiểm tra điều kiện. Nếu điều kiện được thoã mãn, chương trình sẽ thực hiện câu lệnh 1 sau từ khoá then, ngược lại câu lệnh 2 sẽ được thực hiện.
Giả sử cần viết chương trình nhập một số tự nhiên vào máy tính và ghi ra màn hình kết quả số đã nhập là số chẵn hay lẻ, chẳng hạn "5 là số lẻ", "8 là số chẵn". Hãy mô tả các bước của thuật toán để giải quyết bài toán trên và viết chương trình Pascal để thực hiện thuật toán đó.
Gợi ý giải chi tiết:
Xác định bài toán:
Mô tả thuật toán:
Hãy mô tả thuật toán nhập ba số thực A, B và C từ bàn phím vào máy tính, sau đó kiểm tra ba số đó có thể là các cạnh của tam giác đều, tam giác cân hoặc tam giác vuông hay không và ghi kết quả ra màn hình.
Gợi ý giải chi tiết:
Xác định bài toán:
Mô tả thuật toán:
Sau khi học xong Bài 6: Câu lệnh điều kiện, các em cần ghi nhớ:
Các em có thể hệ thống lại nội dung kiến thức đã học được thông qua bài kiểm tra Trắc nghiệm Tin học 8 Bài 6 cực hay có đáp án và lời giải chi tiết.
Trong Pascal, câu lệnh điều kiện nào sau đây được viết đúng?
Câu lệnh điều kiện dạng đầy đủ là:
Hãy cho biết giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh:
if (45 mod 3 ) = 0 then X :=X+2;
( Biết rằng trước đó giá trị của biến X = 5)
Câu 4- 10: Mời các em đăng nhập xem tiếp nội dung và thi thử Online để củng cố kiến thức về bài học này nhé!
Các em có thể xem thêm phần hướng dẫn Giải bài tập Tin học 8 Bài 6để giúp các em nắm vững bài học và các phương pháp giải bài tập.
Bài tập 1 trang 50 SGK Tin học 8
Bài tập 2 trang 50 SGK Tin học 8
Bài tập 3 trang 51 SGK Tin học 8
Bài tập 4 trang 51 SGK Tin học 8
Bài tập 5 trang 51 SGK Tin học 8
Bài tập 6 trang 51 SGK Tin học 8
Trong quá trình học tập nếu có thắc mắc hay cần trợ giúp gì thì các em hãy comment ở mục Hỏi đáp, Cộng đồng Tin học DapAnHay sẽ hỗ trợ cho các em một cách nhanh chóng!
Chúc các em học tập tốt và luôn đạt thành tích cao trong học tập!
-- Mod Tin Học 8 DapAnHay
Trong Pascal, câu lệnh điều kiện nào sau đây được viết đúng?
Câu lệnh điều kiện dạng đầy đủ là:
Hãy cho biết giá trị của biến X bằng bao nhiêu sau khi thực hiện câu lệnh:
if (45 mod 3 ) = 0 then X :=X+2;
( Biết rằng trước đó giá trị của biến X = 5)
Ta có 2 lệnh sau:
x:= 8;
if x>5 then x := x +1;
Giá trị của x là bao nhiêu?
Các câu lệnh Pascal nào sau đây được viết đúng?
Để tìm giá trị lớn nhất của 2 số a, b thì ta viết:
If ... Then ... Else là:
IF a>8 THEN b:=3 ELSE b:=5;
Khi a nhận giá trị là 0 thì b nhận giá trị nào?
Chọn câu lệnh Pascal hợp lệ trong các câu sau:
Cấu trúc rẽ nhánh có mấy loại?
Em hãy nêu một vài ví dụ về các hoạt động hằng ngày phụ thuộc vào điều kiện.
Hãy cho biết các điều kiện hoặc phép so sánh sau đây cho kết quả đúng hay sai:
a) 123 là số chia hết cho 3.
b) Nếu ba cạnh a, b và c của một tam giác thỏa mãn c2 = a2 + b2 thì tam giác đó có một góc vuông.
c) 152 > 200.
d) x2 < 1.
Hai người bạn cùng chơi trò đoán số. Một người nghĩ trong đầu một số tự nhiên nhỏ hơn 10. Người kia đoán xem bạn đã nghĩ số gì. Nếu đoán đúng, người đoán sẽ được cộng thêm 1 điểm, nếu sai sẽ không được cộng điểm. Luân phiên nhau nghĩ và đoán. Sau 10 lần, ai được nhiều điểm hơn, người đó sẽ thắng.
Hãy phát biểu quy tắc thực hiện các điều kiện ở trò chơi. Hoạt động nào sẽ được thực hiện, nếu điều kiện của quy tắc đó thoả mãn? Hoạt động nào sẽ được thực hiện, nếu điều kiện của quy tắc đó không thoả mãn?
Một trò chơi máy tính rất hứng thú đối với các em nhỏ là hứng trứng. Một quả trứng rơi từ một vị trí ngẫu nhiên trên cao. Người chơi dùng các phím mũi tên \(\rightarrow\) hoặc \(\leftarrow\) để điều khiển một biểu tượng chiếc khay di chuyển theo chiều ngang để hứng quả trứng. Nếu hứng trượt, quả trứng bị rơi, vỡ và người chơi tiếp tục di chuyển khay để hứng quả trứng khác.
Điều kiện để điều khiển chiếc khay trong trò chơi là gì? Hoạt động nào sẽ được thực hiện, nếu điều kiện đó thỏa mãn? Hoạt động nào sẽ được thực hiện, nếu điều kiện đó không thỏa mãn?
Các câu lệnh Pascal sau đây được viết đúng hay sai?
a) if x:=7 then a=b;
b) if x>5; then a:=b;
c) if x>5 then; a:=b;
d) if x>5 then a:=b; m:=n;
e) if x>5 then a:=b; else m:=n;
f) if n>0 then begin a:=0; m:=-1 end else c:=a;
Sau mỗi câu lệnh sau đây:
a) if (45 mod 3)=0 then X:=X+1;
b) if X>10 then X:=X+1;
giá trị của biến X sẽ là bao nhiêu, nếu trước đó giá trị của X bằng 5?
Họ và tên
Tiêu đề câu hỏi
Nội dung câu hỏi
1. Trong các tên sau đây, tên nào không hợp lệ trong ngôn ngữ lập trình Pascal?
A. Pascal
B. pascal
C. Pas_cal
D. Pas-cal
2. Để chia lấy phần nguyên ta dùng phép toán:
A. div
B. :
C. mod
D. /
3. Để viết thông tin ra màn hình, sau đó xuống dòng, Pascal sử dụng câu lệnh:
A. writeln
B. readln
C. delay(5000)
D. read
4. Trong các câu lệnh điều kiện sau, câu nào không hợp lệ?
A. if a>b then max:=a;
B. if a>b then max:=a else max:=b;
C. if a<b then max:=b;
D. if a<b then max:=b; else max:=a
5. Biến nhớ trong lập trình có chức năng:
A. Lưu trữ dữ liệu
B. Thực hiện các phép toán trung gian
C. Có thể nhận nhiều giá trị khác nhau
D. Cả A, B, C đều đúng
6. Phát biểu nào sai trong các phát biểu sau?
A. Bài toán là 1 công việc hay 1 nhiệm vụ cụ thể cần thực hiện
B. Thuật toán là dãy hữu hạn các bước cần thiết để giải một bài toán
C. Xác định bài toán là xác định các điều kiện cho trước và kết quả cần thu được.
D. Quá trình giải bài toán trên máy tính gồm các bước: mô tả thuật toán->xác định bài toán->viết chương trình
Câu trả lời của bạn
1. Trong các tên sau đây, tên nào không hợp lệ trong ngôn ngữ lập trình Pascal?
A. Pascal
B. pascal
C. Pas_cal
D. Pas-cal
2. Để chia lấy phần nguyên ta dùng phép toán:
A. div
B. :
C. mod
D. /
3. Để viết thông tin ra màn hình, sau đó xuống dòng, Pascal sử dụng câu lệnh:
A. writeln
B. readln
C. delay(5000)
D. read
4. Trong các câu lệnh điều kiện sau, câu nào không hợp lệ?
A. if a>b then max:=a;
B. if a>b then max:=a else max:=b;
C. if a<b then max:=b;
D. if a<b then max:=b; else max:=a
5. Biến nhớ trong lập trình có chức năng:
A. Lưu trữ dữ liệu
B. Thực hiện các phép toán trung gian
C. Có thể nhận nhiều giá trị khác nhau
D. Cả A, B, C đều đúng
6. Phát biểu nào sai trong các phát biểu sau?
A. Bài toán là 1 công việc hay 1 nhiệm vụ cụ thể cần thực hiện
B. Thuật toán là dãy hữu hạn các bước cần thiết để giải một bài toán
C. Xác định bài toán là xác định các điều kiện cho trước và kết quả cần thu được.
D. Quá trình giải bài toán trên máy tính gồm các bước: mô tả thuật toán->xác định bài toán->viết chương trình
Sau mỗi câu lệnh dưới đây, giá trị của biến X sẽ là bao nhiêu nếu trước đó giá trị của X=10
a) if X mod 3=2 then X:=X+1;
b) if (X mod 3=0) or (X>=10) then X:=2*X;
c) if (X mod 4=2) and (X>5) then X:=0;
d) if X mod 5=0 then begin X:=X*X;
X:=X-10, end;
Câu trả lời của bạn
thay X==10 vô ròi phân tích mik ko rảnh nha
Viết cú pháp của câu lệnh điều kiện dạng thiếu. Giải thích ý nghĩa của cú pháp.
Câu trả lời của bạn
If <điều kiện> then <câu lệnh>;
Ý nghĩa: Khi thực hiện chương trình, máy sẽ kiểm tra điều kiện, nếu điều kiện đúng thì thực hiện câu lệnh còn nếu điều kiện sai thì bỏ qua câu lệnh.
viết chương trình tính tổng điểm của 4 môn và thực hiện xếp loại như sau: nếu tổng điểm \(\ge\)20 thì thông báo kết quả là đậu ngược lại là rớt
Câu trả lời của bạn
program tongdiem;
uses crt;
var a,b,c,d,T:byte;{thang điểm 10 nha}
begin
clrscr;
write('Nhap diem mon thu nhat');readln(a);
write('Nhap diem mon thu hai');readln(b);
write('Nhap diem mon thu ba');readln(c);
write('Nhap diem mon thu tu');readln(d);
T:=a+b+c+d;
if T>=20 then write('Ban da dau voi so diem la: ',T:10:2)
else write('Ban da rot');
readln
end.
Viết chương trình nhập vào hai số nguyên a, b. In ra màn hình các ước chung của a và b, bội chung của a và b
Câu trả lời của bạn
viết chương trình pascal nhập 3 số a,b,c; kiểm tra xem nó có phải đọ dài 3 cạnh 1 tam giác hay không rồi in ra màn hình, nếu là 3 cạnh tam giác thì tính chu vi của tam giác đó
Câu trả lời của bạn
program text;
uses crt;
var a,b.c: real;
begin
clrscr;
textcolor(yellow);
writeln('Moi ban nhap 3 canh cua tam giac');
readln(a,b,c);
if(a+b<c)or(a+c<b)or(c+b<a)then writeln('Do khong phai la hinh tam giac')
else writeln('Do la hinh tam giac');
if(a+b<c)or(a+c<b)or(c+b<a)then writeln('Khong the tinh duoc chu vi ')
else writeln('Chu vi cua hinh tam giac do la ' , (a+b+c):4:-0);
readln;
end.
Program bai1;
uses crt;
var a,b,c,cv:word;
begin
clrscr;
write('nhap vao so a=');readln(a);
write('nhap vao so b=');readln(b);
write('nhap vao so c=');readln(c);
if (a+b>c) and (b+c>a) and (a+c>b) then
begin
writeln('a,b,c tao nen tam giac');
cv:=a+b+c;
writeln('chu vi tam giac = ' ,cv)
end
else
writeln('a,b,c khong tao nen tam giac');
readln;
end.
bạn nào viết hộ mình chương trình với : nhập 13 điểm của học sinh. nếu điểm bình quân x>= 8 và không môn nào dưới 6,5 là học sinh giỏi. nếu điểm BQ >=5 và <=8 và không môn nào dưới 3,5 là học sinh khá. nếu điểm BQ =>3 và =<5 và không môn nào dưới 2 là học sinh yếu. còn lại là kém. giúp mình với nhé
Câu trả lời của bạn
không có môn nào là sao ? phải cho điểm từng môn cụ thể mới viết chương trình được!
lập trình nhập 4 số thực,tính tổng các sô nguyên
Câu trả lời của bạn
uses crt;
var t:real;
a:array [1..4] of real;
i:byte;
begin
clrscr;
for i:=1 to 4 do
begin
write('Nhap so thu ',i,': ');
readln(a[i]);
if a[i]<0 t:=t+a[i];
end;
write ('Tong cac so thuc am la: ',t:4:2);
readln
end.
Nếu lấy nguyên phần thập phân thì bạn viết ra màn hình giá trị của t là được rồi.
Các bạn ới giải giúp mình bài này với
Viết chương trình nhập vào 2 số nguyên a,b là độ dài 2 cạnh của 1 HCN. Hãy đưa ra các lựa chọn để tính:
a, Tính diện tích
b, Tính chu vi.
Câu trả lời của bạn
mik gộp luôn nha
var a,b,dt,cv:integer;
begin
write('a=');readln(a);
write('b=');readln(b);
dt:=a*b;
cv:=(a+b)*2;
writeln(' Dien tich hinh cu nhat la: ',dt);
writeln(' Chu vi hinh chu nhat la: ',cv);
readln;
end.
Viết chương trình nhập điểm Văn Toán Anh . TÍnh điểm trung bình. In kết quả ra màn hình thông báo đoạt loại giỏi , khá nếu đủ điều kiện
ĐIều kiện đoạt lại giỏi đtbình lớn hơn hoặc bằng 8 ko môn nào dưới 6,5
ĐIèu kiện đoạt loại khá : đtbình từ 6,5 đến 7,9 ko môn nào dưới 5
Câu trả lời của bạn
Program bai1;
uses crt;
var DTB: real;
v,t: integer;
begin
clrscr;
repeat
write('nhap diem van =' ); readln(v);
write('nhap diem toan ='); readln(t);
until (v <= 10 ) and ( v >=0) and (t <=10) and (t >=0);
DTB:=(v+t) / 2;
writeln(' diem trung binh hai mon =' ,DTB:4:2);
if (DTB >= 8.0) and (v >=6.5 ) and (t >=6.5) then
writeln('dat loai gioi');
if (DTB >=6.5) and ( v >=5 ) and (t >=5) then
writeln('dat loai kha ') else
writeln('khong dat duoc loai gioi va kha ');
readln;
end.
Tính tổng các số từ 1 đến n (n nhập từ bàn phím)
a. Xác định Input, Output
b. Mô tả thuật toán
Câu trả lời của bạn
INPUT:Dãy các số từ 1 đến n
OUTPUT:Tổng các số đó
Mô tả thuật toán:
b1: SUM<--1; i,<--1
b2:SUM<--SUM +i; i<--i+1
b3: Nếu i<= n thì quay lại bước 2, ngược lại thông báo giá trị và kết thúc thuật toán
Viết chương trình nhập điểm trung bình và hạnh kiểm của hs(G,K,TB,Y). Xét xếp ***** học sinh dựa theo ĐTB và hạnh kiểm. Vd
-Nhập 9.2 và G. Kêt quả in ra:"Ban xep loai Gioi"
-Nhập 8.5 và T. Kết quả in ra:"Ban xep loai Kha"
Câu trả lời của bạn
mik làm điều kiện nha bạn chỉ nêu 2 loại mik làm 2 điều kiện
viết chương trình tính số tiền phải trả khi mua x máy tính , biết giá mỗi máy là y đồng (x , y nhập từ bàn phím) với 10% tiền thuế VAT
Mog mngiúp , cần gấp bây h ạ >~<
Câu trả lời của bạn
thue:=10/100;
tien:=x*y+thue;
write(tien);
Em hãy nêu cú pháp và giải thích câu lệnh điều kiện? Làm ơn Help me!
Câu trả lời của bạn
có thể thêm điều kiện nha bạn
IF ( ĐIỀU KIỆN ) (AND ( ĐIỀU KIỆN)) THEN ( CÂU LỆNH);
Cú pháp 1:
IF ( Điều kiện ) THEN ( Câu lệnh a) ;
Cú pháp 2 :
IF ( Điều kiện ) THEN
( Câu lệnh 1)
ELSE
(Câu lệnh 2) ;
Giải thích cú pháp :
Chương trình sẽ chạy như sau : Chương trình sẽ kiểm tra giả trị của ( Điều kiện ) nếu là đúng thì (Câu lệnh a) hoặc ( câu lệnh 1 ) được thực hiện , ngược lại nếu (Điều kiện ) sai thì (Câu lệnh 2) sẽ được thực hành < Qua câu lệnh ELSE>
if <điều kiện> then<câu lệnh 1>else<câu lệnh 2>
Câu lệnh điều kiện dạng thiếu
IF < ĐIỀU KIỆN> THEN <CÂU LỆNH>;
KHI ĐK ĐÚNG SẼ THỰC HIỆN CÂU LỆNH, NẾU ĐK SAI SẼ BỎ QUA CÂU LỆNH VÀ THỰC HIỆN CÂU LỆNH TIẾP THEO.
Câu lệnh điều kiện dạng đầy đủ.
IF <ĐIỀU KIỆN> THEN < CÂU LỆNH 1> ELSE < CÂU LỆNH 2>;
NẾU ĐK ĐÚNG SẼ THỰC HIỆN CÂU LỆNH 1 NGƯỢC LẠI THỰC HIỆN CÂU LỆNH 2.
LIKE NẾU ĐÚNG NHÉ!
khó nhỉ
các bạn ơi làm ơn giúp mk chút ngày mai ktra rồi!!!!!!!!
Câu trả lời của bạn
1.
if a<0 then write('a la so am')
else write('a la so duong');
2.
if (x mod 2= 0) then write('x la so chan')
else write('x la so le');
3.
var a,b:integer;
x:real;
begin
clrscr;
writeln('Giai phuong trinh bac nhat mot an: ax + b = 0');
writeln('--------------------------------------------------');
write('nhap a= ');readln(a);
write('nhap b= ');readln(b);
if (a=0) then
if (b=0) then writeln('phuong trinh vo so nghiem')
else writeln('phuong trinh vo nghiem')
else writeln('nghiem la: ',-b/a:3:1);
readln;
end.
3. Program c;
Uses crt;
Var a,b,x real;
Begin
Write(“nhap a”);readln(a);
Write (“nhap b);readln(b);
X:=-b\a;
Write(“nghiem cua pt la “,x);readln;
End.
1. Program a;
Uses crt;
Var a real;
Begin
Write(“nhap so a”); readln(a);
If a >0 then write(“ a la so duong”) else
If a <0 then write(“ a la so am”);
If a=0 then write(“ a=0”);
Readln;
End.
2. Program b;
Uses crt;
Var x integer;
Begin
Write(“ nhap so x tu ban phim”); readln(x);
If (x mod 2) = 0 then write(“ x la so chan”) else
Write(“ x la so le”); readln;
End.
Viết chương trình nhập điểm trung bình và hạnh kiểm của hs(G,K,TB,Y). Xét xếp ***** học sinh dựa theo ĐTB và hạnh kiểm. Vd
-Nhập 9.2 và G. Kêt quả in ra:"Ban xep loai Gioi"
-Nhập 8.5 và T. Kết quả in ra:"Ban xep loai Kha
Câu trả lời của bạn
còn trung bình, yếu
Viết chương trình nhập 1 số nguyên a và kiểm tra xem số đó là chẵn hay lẻ
Câu trả lời của bạn
uses crt;
var a:inetger;
begin
clrscr;
write('Nhap so nguyen a:');
readln(a);
if a mod 2=0 then
write(a ,'la so chan')
else write(a ,'la so le');
readln
end.
mk cũng ko rõ nữa
đúng 100%
program Chan_Le;
ues crt;
var a:integer;
begin
write('nhap so a '); readln(a);
if a mod 2=0 then writeln('a la so chan')
else writeln('a la so le');
readln;
end.
Được viết bằng C
#include
int main(){
int a;
printf("Ban hay nhap gia tri cho a : \n");
scanf("%d",&a);
if ( a % 2 == 0){
printf("%d la so chan \n",a);
} else {
printf("%d la so le \n", a);
}
return 0;
}
program chanle;
uses crt;
var a:integer;
begin
write('nhap so a:'), readln(a);
if(a mod 2=0) then writeln(a,'la so chan') else writeln(a,'la so le');
readln;
end.
Viết chương trình Pascal tính tổng tiền của khách với chính sách khuyến mại như sau:
Nếu mua trên 200000 được khuyến mại 40% .Ngược lại được khuyến mại 20%
Giúp mình với mình đang cần gấp
Câu trả lời của bạn
hình như có trong sách đấy bạn
trong bth số mấy đó
0 Bình luận
Để lại bình luận
Địa chỉ email của hạn sẽ không được công bố. Các trường bắt buộc được đánh dấu *