Cho đoạn chương trình sau:
n:=1;
While n<10 do
Begin
n:=n+1;
Writeln(‘ xin chao’);
end;
Khi thực hiện chương trình câu “ xin chao” được viết ra màn hình mấy lần?
A. 0
B.10
C. 9
D. Vòng lặp vô tận.
Cho đoạn chương trình sau:
N:=0;
While N>0 do
Begin
N:=N+1;
Writeln('Xin chao');
End
Khi thực hiện chương trình,câu "Xin chao" được viết ra màn hình mấy lần?
A.10 B.9
C.0 D.Vòng lặp vô tận
C vì N=0 mà đk N>0 nên CT ko thực hiện câu lệnh đó
Câu Xin chao không được viết ra màn hình
Xác định độ phức tạp thời gian cho chương trình sau:
n = 1000
s = 0
for i in range (n);
s = s + i*(i+1)
print (s)
THAM KHẢO!
Chương trình trên tính tổng các giá trị i*(i+1) trong khoảng từ 0 đến n-1 và lưu kết quả vào biến s. Để xác định độ phức tạp thời gian của chương trình này, ta cần xem xét số lần lặp của vòng for và các phép toán trong vòng lặp.
Vòng for: Vòng lặp này chạy từ 0 đến n-1, với n là 1.000. Vậy số lần lặp là n, hay 1.000 lần.
Các phép toán trong vòng lặp:
Phép gán s = s + i*(i+1): Đây là phép gán giá trị vào biến s, có độ phức tạp là O(1).
Phép toán i*(i+1): Đây là phép nhân và cộng, có độ phức tạp là O(1).
Vậy tổng độ phức tạp thời gian của chương trình là O(n), hay O(1.000)
Khi thực hiện đoạn chương trình sau:
n:=1; T:=50; while n<10 do Begin n:=n+2;T:=T-n
end;
hãy cho biết máy tính sẽ thực hiện bao nhiều vòng lặp và giá trị của T và n là bao nhiêu? help mk với ạ
Xác định độ phức tạp thời gian tính toán cho chương trình sau:
n = 1000
sum = 0
i = 1while i <n;
i = i*2
sum = sum + 1
print (sum)
Chương trình trên tính số lần lặp cần thiết để i lớn hơn n bằng cách nhân i với 2 trong mỗi lần lặp, sau đó tăng biến sum lên 1. Để xác định độ phức tạp thời gian của chương trình này, ta cần xem xét số lần lặp của vòng while và các phép toán trong vòng lặp.
Vòng while: Vòng lặp này chạy cho đến khi i >= n, và giá trị ban đầu của i là 1. Trong mỗi lần lặp, i được nhân với 2, vậy số lần lặp là log2(n) (vì sau mỗi lần nhân i với 2, giá trị của i sẽ gấp đôi). Ví dụ, nếu n = 1000 thì số lần lặp là log2(1000) ≈ 10.
Các phép toán trong vòng lặp:
Phép gán i = i * 2: Đây là phép nhân, có độ phức tạp là O(1).
Phép gán sum = sum + 1: Đây là phép gán giá trị vào biến sum, có độ phức tạp là O(1).
Vậy tổng độ phức tạp thời gian của chương trình là O(log n), hay O(log2(1000)) ≈ O(10)
Viết chương trình sử dụng câu lệnh lặp While..do để in ra và tính tổng cho các dãy số sau:
N=1, 2, 4, 6, 8, …,50
M= 0, 4, 8, 12, 16, 20, 32
Var s1,s2,i,j:integer;
Begin
s1:=1;
s2:=0;
i:=2;
j:=4;
While i<=50 do
Begin
s1:=s1+i;
i:=i+2;
End;
While j<=20 do
Begin
s2:=s2+j;
j:=j+4;
End;
s2:=s2+32;
Writeln('Tong day N = ',s1);
Writeln('Tong day M = ',s2);
Readln;
End.
cho đoạn chương trình sau hãy viết chương trình pascal cho đoạn chương trình
J:=1;k:=2;i:=0;
Whilei<5 do
begin
I:=i+1; J;=J+1; K:=K+J
End;
writel(j,k);
Đối với từng đoạn chương trình Pascal sau đây, hãy cho biết sau khi thực hiện lệnh lặp giá trị của x và y là bao nhiêu? Và mỗi đoạn chương trình thực hiện bao nhiêu vòng lặp a Đoạn chương trình 1 b Đoạn chương trình 2: x: 0; y: 5 x:=1 ; y:= 5; For i:-5 to 2 do x:=x+2: For i:=3 to 7 do x:=x+2; y:=y+x; y:= y + x;
Cho đoạn chương trình sau:
i:=0; T:=5;
While T < 20 Do
Begin
i:= i + 1;
T:= T*i;
End;
Câu 1: Đoạn lệnh trong chương trình thực hiện số vòng lặp là:
A. 4
B. 3
C. 5
D. 1
Câu 2: Ý nghĩa câu lệnh lặp trong đoạn chương trình trên là:
A. Tính tích đến khi nào T>=20 thì dừng vòng lặp
B. Tính tích đến khi nào T<>20 thì dừng vòng lặp
C. Tính tích đến khi nào T = 20 thì dừng vòng lặp
D. Tính tích đến khi nào T <= 20 thì dừng vòng lặp
Cho đoạn chương trình sau:
i:=0; T:=5;
While T < 20 Do
Begin
i:= i + 1;
T:= T*i;
End;
Câu 1: Đoạn lệnh trong chương trình thực hiện số vòng lặp là:
A. 4
B. 3
C. 5
D. 1
Câu 2: Ý nghĩa câu lệnh lặp trong đoạn chương trình trên là:
A. Tính tích đến khi nào T>=20 thì dừng vòng lặp
B. Tính tích đến khi nào T<>20 thì dừng vòng lặp
C. Tính tích đến khi nào T = 20 thì dừng vòng lặp
D. Tính tích đến khi nào T <= 20 thì dừng vòng lặp
Cho đoạn chương trình:
J:= 0;
For i:= 1 to 5 do J:= J+ 1;
Sau khi thực hiện đoạn chương trình trên, giá trị của biến j bằng bao nhiêu?
A. 2
B. 3
C. 4
D. 5