Hãy nhập câu hỏi của bạn vào đây, nếu là tài khoản VIP, bạn sẽ được ưu tiên trả lời.
lần thứ nhất i=1+1=2, j=2+1=3; k=3+3=6
lần thứ hai \(i=2+1=3;j=3+1=4;k=6+4=10\)
Lần thứ ba \(i=3+1=4;j=4+1=5;k=10+5=15\)
Lần thứ tư \(i=4+1=5;j=5+1=6;k=15+6=21\)
Lần thứ năm \(i=5+1=6;j=6+1=7;k=21+7=28\)
vì qua lần thứ năm này giá trị của i vẫn thỏa mãn (đúng) với điều kiện nên câu lệnh tiếp tục thực hiện:
\(i=6+1=7;j=7+1=8;k=28+8=36\)
Qua lần lặp này giá trị của i>6 nên không thỏa mãn điều kiện, câu lệnh kết thúc.
Giá trị của i, j, k được in ra màn hình lần lượt bằng 7, 8, 36
a) i=7, j=3, k=6
vòng lặp while <ĐK> do lặp cho đến khi đk sai, vậy i+1 cho đến i không <=6.
Sau đó j:=j+1 <=> j=2+1 = 3 và k:=k+j <=> k= 3 + 3, 2 dòng này nằm ngoài vòng lặp while do vì không có cặp begin end .
b) i = 7, j= 8, k=28
j:=j+1 và k:=k+j nằm cùng khối với i:=i+1 trong begin end, nên mỗi khi i tăng lên thì j và k lần lượt cũng được tính
ví dụ: bắt đầu vòng lặp
*điều kiện i<=6? True
{
i+1 => i= 2
j+1 => j=3
k+j => k= 3 + 3 = 6
}
* tương tự
Bài 1:
a/ For i:=1 to 10; do x:=x+1;
- Câu lệnh này là sai.
- Lỗi sai thừa dấu ';' ở trong ngoặc For i:=1 to 10(;) do x:=x+1;
b/ For i:=10 to 1 do x:=x+1;
- Câu lệnh này là sai
- Lỗi sai giá trị đầu lớn hơn giá trị cuối
c/ For i:= 1 to 10 do x:=x+1;
- Câu lệnh này là đúng
Bài 2:
Đoạn chương trình 1/
Giá trị j =5
Gía trị k=8
Máy in : 5 8
Đoạn chương trình 2/
Giá trị j=5
Giá trị k=15
Máy in : 5 15
a/
Giá trị đầu của vòng lặp là 1, giá trị cuối là 5 => biến đếm của k lần lượt tăng thành 1 dãy số 1,2,3,4,5
k mod 2 =0 -> nếu k là số chẵn thì biến i tăng lên 1 đơn vị. Dãy số gồm 2 số chẵn (2,4) => i tăng 2 đơn vị => i = -1 + 1 + 1 = 1
j = j + i => j = 20 + 1 = 21
Vậy i=1; j=21
b/
Lần lặp thứ nhất: m=0*10 + 7 = 7 ; n = 12
Lần lặp thứ 2: m=7*10 + 2 = 72; n= 1
Lần lặp thứ 3: m=720 + 1 = 721; n=0 (n=0 => dừng vòng lặp)
Vậy m=721