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/ Hãy nêu sự khác nhau giữa câu lệnh lặp với số lần chưa biết trước và câu lệnh lặp với số lần biết trước
2/ Viết chương trình tính tổng : S= 1+2+3+....+n . Trong đó n là số nguyên nhập từ bàn phím
3/ Viết chương trình tính tổng 200 số nguyên đầu tiên
4/ Viết chương trình tính tích 30 số nguyên đầu tiên
5/ Viết chương trình tính n!
6/ Viết chương trình tính x^n
HELP ME
Câu trả lời của bạn
1) Như tên gọi của nó, câu lệnh lặp với số lần lặp cho trước chỉ thị cho máy tính thực hiện một lệnh hoặc một nhóm lệnh với số lần đã được xác định từ trước, còn với câu lệnh lặp với số lần lặp chưa biết trước thì số lần lặp chưa được xác định trước.
+) Trong câu lệnh lặp với số lần cho trước, điều kiện là giá trị của một biến đếm có giá trị nguyên đã đạt được giá trị lớn nhất hay chưa, còn trong câu lệnh lặp với số lần lặp chưa biết trước, điều kiện tổng quát hơn nhiều, có thể là kiểm tra một giá trị của một số thực, cũng có thể là một điều kiện tổng quát khác.
+) Trong câu lệnh lặp với số lần cho trước, câu lệnh được thực hiện ít nhất một lần, sau đó kiểm tra điều kiện. Trong câu lệnh lặp với số lần chưa xác định trước, trước hết điều kiện được kiểm tra. Nếu điều kiện được thỏa mãn, câu lệnh mới được thực hiện. Do đó có thể có trường hợp câu lệnh hoàn toàn không được thực hiện. nguồn:violet
tính tích T=1.3.5...n T=2.4.6...n với n nhập từ bàn phím (dùng câu lệnh if then và for do )
Câu trả lời của bạn
Var T,n,i:integer;
begin
readln(n);
while n mod 2 =0 do begin
write('nhap lai n:'); readln(n);
end;
T:=1;
for i:=1 to n do
if i mod 2 <>0 then T:=T*i;
write(T);
end.
mình làm TH n lẻ thôi, TH n chẵn bạn lm tương tự nha :3
Xây dựng bài toán và thuật toán dơn vị giá trị của 2 biến x,y giả sử x=5,y=8 thì kết thúc thuật toán giá trị của x,y là bao nhiêu
Câu trả lời của bạn
giúp với
2 ví dụ về câu lệnh điều kiện dạng đầy đủ
Câu trả lời của bạn
câu lênh điều kiện dạng đủ là:
if <điều kiện> then <câu lệnh> else <câu lệnh> ;
ví dụ:
if 5<8 then write('so 5 nho hon') else ('so 8 nho hon');
if 6<3 then write('so 6 nho hon') else('so 3 nho hon');
Hãy cho biết các điều kiện hoặc biểu thức sau đây có kết quả đúng hay sai:
- Nếu ba cạnh a,b,c của một tam giác thỏa mãn c^2=a^2+b^2 thì tam giác đó có một góc vuông.
Câu trả lời của bạn
thieu dk:
the nay dung ne:
if c^2=a^2+b^2 or a^2=b^2+c^2 or b^2=a^2+c^2
then
writeln('tam giac do co 1 goc vuong') else writeln('tam giac do khong co goc vuong')
thiếu điều kiện:
hoàn chỉnh là thế này
if c^2=a^2+b^2 or a^2=c^2+b^ or b^2=a^2+c^2 then writeln('tam giac do co mot goc vuong') else writeln('tam giac do khong co goc vuong')
thieu dk:
the nay dung ne:
if c^2=a^2+b^2 or a^2=b^2+c^2 or b^2=a^2+c^2
then
writeln('tam giac do co 1 goc vuong') else writeln('tam giac do khong co goc vuong')
thieu dk:
the nay dung ne:
if c^2=a^2+b^2 or a^2=b^2+c^2 or b^2=a^2+c^2
then
writeln('tam giac do co 1 goc vuong') else writeln('tam giac do khong co goc vuong')
AI GIÚP MIK BÀI NÀY VS
1) viết chương trình tính tổng 100 số tự nhiên đầu tiên
2. viết chương trình kiểm tra số n nhập từ bàn phím có chia hết cho hai số 2 và 3 không. nếu có thì in ra dòng chữ chia hết và không chia hết
Câu trả lời của bạn
có thể giúp mình bài này được không xin cảm ơn:viết chương trình một số nguyên nhập từ bàn phím có chia hết cho 2 hoặc 6 hay không?
XIN CÁC BẠN GIÚP ĐỠ MÌNH
bài 1:
var i,n : integer;
writeln('nhap n');
readln(n);
for i:=1 to 100 do
s:=s+i;
writeln('tong la",s);
readln;
end.
bài 2:
var n:real;
begin
writeln('nhap n');
if n (mod 2=0) and (n mod 3=0) then
writeln('chia het roi')
else writeln(khong chia het');
readln;
end.
Hãy viết chương trình nhập điểm chương trình của 1 bạn học sinh trong lớp. Và đưa ra xếp loại học lực của ban đó.
Cho biết:
TB > 8,0 : giỏi
6,5 < TB < 8,0 : khá
5,0 < TB < 6,5 : trung bình
3,5 < TB < 5,0 : yếu
còn lại : kém
Giải thích: TB: Điểm trung bình của học sinh
Câu trả lời của bạn
program xep_loai_hoc_luc;
uses crt;
var TB: real;
begin
clrscr;
write ('nhap diem TB: '); readln (TB);
if TB >=8.0 then writeln ('hoc luc gioi')
else if (TB >=6.5) and (TB<8) then writeln ('hoc luc kha')
else if (TB>=5.0) and (TB <6.5) then writeln('hoc luc trung binh')
else if (TB>=3.5) and (TB<5.0) then writeln('hoc luc yeu')
else writeln('hoc luc kem');
readln
end.
vt chương trình tính BCNN của 2 số a và b
Câu trả lời của bạn
Câu lệnh điều kiện dạng thiếu , đủ lấy vd nêu rõ điều kiện câu lệnh câu lệnh 1 ,câu lệnh 2
Help please!!!
Câu trả lời của bạn
Câu lệnh điều kiện dạng dạng thiếu:
* Cú pháp :
If (điều kiện) then ( câu lệnh);
* Hoạt động của câu lệnh : Khi gặp câu lệnh điều kiện này, chương trình sẽ kiểm tra điều kiện, nếu kiều kiện được thỏa mản chương trình sẽ thực hiện câu lệnh ,ngược lại câu lệnh bị bỏ qua.
Câu lệnh điều kiện dạng dạng đủ:
*cú pháp :
If (điều kiện) then ( câu lệnh 1) alse (câu lệnh 2);
* hoạt động của câu lệnh: Chương trình sẽ kiểm tra điều kiện, nếu điều kiện được thỏa mãn , chương trình sẽ thực hiện câu lệnh 1, ngược lại, câu lệnh 2 sẽ được thực hiện.
Vd:
câu lệnh điều kiện dạng thiếu :
Nếu trời mưa (điều kiện) thì lớp em sẽ nghỉ tiết thể dục. ( Câu lệnh)
câu lệnh điều kiện dạng đủ:
Nếu a >b ( điều kiện) thì in ra màn hình số a (câu lệnh 1), ngược lại thì in ra màn hình số b. ( câu lệnh 2)
Viết chương trình nhập vào một số nguyên n từ bàn phím in ra màn hình .
a ) Số n có chia hết cho 12 không
b ) n có bao nhiêu chữ số
c ) Tổng các chữ số bằng bao nhiêu
Câu trả lời của bạn
uses crt;
var n, a, dem, tong:longint;
begin
clrscr;
write('nhap n:');readln(n);
if n mod 12= 0 then
writeln(n,' chia het cho 12')
else write(n,' khong chia het cho 12');
a:=n;
tong:=0; dem:=0;
while a<>0 do
begin
dem:=dem+1;
tong:=tong+ a mod 10;
a:=a div 10;
end;
writeln(n,' co ',dem,' chu so');
write('tong cac chu so bang:',tong);
readln;
end.
* ở đây mk gán a = n để khi đếm số chữ số ,tính tổng các các chữ số của a cũng là đếm số chữ số ,tính tổng các chữ số của n, để n vẫn giữ nguyên giá trị ban đầu. Bạn cũng có thể dùng chương trình con để giải nhé
Cho ba số a, b, c. Viết chương trình tìm số lớn nhất và số nhỏ nhất trong 3 số trên.
Câu trả lời của bạn
var a,b,c,i:integer;
MX,MN:real;
begin
write('nhap a'); readln(a);
write('nhap b'); readln(b);
write('nhap c'); readln(c);
MX:=a; MN:=a;
if MX<b then MX:=b;
if MX<c then MX:=c;
if MN>b then MN:=b;
if MN>c then MN:=c;
writeln('Min=',MN);
writeln('Max=',MX);
readln;
end.
Tìm số lớn nhất
= MAX ( a,b,c)
Tìm số nhỏ nhất
= MIN ( a,b,c)
nhap vao dong thoi hai so nguyen. neu nhap ca hai so chan thi thong bao ra man hinh' ca hai so dedu la so le' neu nhap ca hai so là so le thi nhap ' ca hai so deu la so le ' neu nhap voa 1 so le va mot so chan thi thong bao 'ban vua nhap mot chan va mot so le
Câu trả lời của bạn
uses crt;
var a,b:longint;
begin
clrscr;
write('nhap so thu nhat:');readln(a);
write('nhap so thu hai:');readln(b);
if (a mod 2=0) and (b mod 2=0) then
write('ca hai so deu chan')
else if (a mod 2<>0) and (b mod 2<>0) then
write('ca hai so deu le')
else write('ban vua nhap mot so chan va mot so le');
readln;
end.
chúc bạn học tốt
viết chương trình in lịch lên màn hình trong pascal
Câu trả lời của bạn
vãi cả dài
cái "vãi" ko pải là nói tục nha bn
chỉ là thuật ngữ chat thui
ko report
Cái này mình tham khảo trên mạng nha, ko phải của mình làm!
Có mã hàng và số lượng. Trích mã hàng có số lượng trên 20 . thì dùng hàm nào vậy mấy bạn ?
Câu trả lời của bạn
Câu này quá dễ luôn bạn chỉ cần suy nghĩ và động não là ra ấy mà
viết chương trình nhập số nguyên dương a kiểm tra số đó có chia hết cho 3 không
giúp mình với :<<<
Câu trả lời của bạn
Nếu rảnh thì tính tổng các chữ số rồi cộng lại. Nếu chia hết cho 3 thì in ra màn hình (Lưu ý: cách này khó và lâu hơn!!)
program ct1;
ues crt;
var a:integer;
begin
repeat
write('Nhap a: '); readln(a);
until a>0;
if a mod 3=0 then writeln(a,' chia het cho 3')
else writeln(a,' ko chia het cho 3');
readln;
end.
Program bai1;
uses crt;
var a: integer;
begin
clrscr;
write('nhap a ='); readln(a);
if (a mod 3 = 0 ) then writeln(a , ' chia het cho 3 ')
else
writeln(a , ' k chia het cho 3');
readln;
end.
Kiểm tra số nhập vào có chia hết cho 3 hoặc 5 hay không?
Câu trả lời của bạn
uses crt;
var a:real;
begin
writeln(' Nhap so can tim: ');
readln(a);
if (a mod 3=0) then
writeln('So chia het cho 3')
else if (a mod 5=0) then
writeln('So chia het cho 3')
else then writeln('So khong chia het cho 3 hoac 5');
readln;
end.
viết chương trình nhập vào số nguyên n.In ra màn hình tổng các ước của n trong pascal
Câu trả lời của bạn
uses crt;
var n,i,s :integer;
begin
clrscr;
writeln('Nhap n'); readln(n);
s:=0;
for i:=1 to n do
if n mod i:=0 then
begin
s:=s+i;
writeln(s);
end;
readln;
end.
Chỉ làm đc vs số dương thôi nha
Câu 1: Viết chương trình nhập vào một sô nguyên dương y từ bàn phím. Hãy viết chương trình pascal số y có chia hết cho 5 hay không và in kết quả ra màn hình.
Câu 2: Viết chương trình nhập vào 3 số thực m,n,h. Hãy viết trương trình pascal tìm điểm lớn nhất trong 3 số đó và in kết quả ra màn hình.
Câu 3: Viết chương trình nhập vào 2 số nguyên x,y từ bàn phím. Em hãy viết chương trình pascal sắp xếp 2 biến trên theo giá trị tăng dần và in ra màn hình kết quả đã sắp xếp.
Câu trả lời của bạn
Cau 1:
Uses crt;
Var y:Longint;
Begin
Clrscr;
Write('y='); Readln(y);
If (y mod 5=0) then writeln(y,'chia het cho 5')
else writeln(y,'khong chia het cho 5');
Readln;
End.
Cau 3:
Uses crt;
Var a,b,Tam:Longint;
Begin
Clrscr;
Write('a='); Readln(a);
Write('b='); Readln(b);
If a>b then
Begin
Tam:=a;
a:=b;
b:=Tam;
End;
Writeln('Sap xep:',b,',',a);
Readln;
End.
Cau 2:
Uses crt;
Var m,n,h,Max: Real;
Begin
Clrscr;
Write('m='); Readln(m);
Write('n='); Readln(n);
Write('h='); Readln(h);
Max:=m;
If n>Max then Max:=n;
If h>Max then Max:=h;
Writeln('Diem lon nhat:',Max:0:2);
Readln;
End.
2)
Program solonnhat;
uses crt;
var m,n,h,max: real;
Begin
clrscr;
writeln('nhap so m'); readln(m);
writeln('nhap so n'); readln(n);
writeln('nhap so h'); readln(h);
max:=m;
if m < n then max:=n;
if max < h then max=h then write('so lon nhat',max);
readln;
End.
viết chương trình 1 số bất kỳ nhập từ bàn phím là số chẵn hay lẽ?
Giúp mình với
Câu trả lời của bạn
chẳng hạn cho 1 số bất kì bằng n nha thì sẽ làm được
var n:integer;
begin
write ( 'nhap gia tri cua n: ' );
readln (n);
if n mod 2 = 0 then write ( 'n la so chan' )
else write ( 'n la so le' );
end.
Câu trả lời của bạn
pascal?
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 *