hãy chạy chương trình từng bước và cho biết kết quả từng biến
J:=30
for i:=1 to 5 do J:=i-5;
mình cần gấp lắm,cảm ơn trước ạ
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.
Màn hình sẽ in ra giá trị: 3 7
Giải thích:
Câu lệnh if i mod 3=0 then j:=j+1 có nghĩa là j bằng một cộng với số các số chia hết cho 3.
k:=k+j có nghĩa là k bằng bốn cộng với giá trị của j đã tìm.
+)Vòng lặp thứ nhất: lặp khi i=1, cộng giá trị hiện tại của S với i, ta có S = 0 + 1 = 1.
+)Vòng lặp thứ hai: lặp khi i=2, cộng giá trị hiện tại của S với i, ta có S = 1 + 2 = 3.
+)Vòng lặp thứ ba: lặp khi i=3, cộng giá trị hiện tại của S với i, ta có S = 3 + 3 = 6.
+)Vòng lặp thứ tư: lặp khi i=4, cộng giá trị hiện tại của S với i, ta có S = 6 + 4 = 10.
+)Vòng lặp thứ năm: lặp khi i=5, cộng giá trị hiện tại của S với i, ta có S = 10 + 5 = 15.
Sau khi kết thúc vòng lặp, giá trị hiện tại của i sẽ là 6 và giá trị hiện tại của S sẽ là 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
Bài 2:
a: Input: 50 số từ 1 đến 50
Output: Tổng các số nguyên tố
c: Viết chương trình:
uses crt;
var i,j,t,kt:integer;
begin
clrscr;
t:=0;
for i:=2 to 50 do
begin
kt:=0;
for j:=2 to trunc(sqrt(i)) do
if i mod j=0 then kt:=1;
if kt=0 then t:=t+i;
end;
writeln(t);
readln;
end.
Chào bạn . Bạn nên kiểm tra lại đề bài , đề bài chưa hoàn chỉnh và câu lệnh for không thể chạy được . Nếu đề đã có là J:=30 sao đề lại gán lại là J:=i-5 ( nó sẽ lấy 1-5 ; 2-5 ,....)