j:=1;k=2 For i:=1 to 5 do Begin J:=j+1 K:=k+j Writeln(j,k); End. A.20 B.21 C.22 D.23 Tự luận là nêu cú pháp câu lệnh lặp và chú thích từng thành phần
cho đoạn chương trình
Readln(M);
T:=0; j:=1;
while j<=M do
Begin
if j div 5>=1 the T:=j; j:=j+1;
vòng lặp kết thúc khi
A) j
B) j>M
C) j>=M
D) j=M
Giúp mình giả câu này với Sao khi thực hiện đoạn chương trình sao: j:=0; s:=1; for i:=1 to 3 do j:= j+1; s:= j+1; Giá trị của biến j, biến s bằng? A. J=4;s=3 B. J=3;s=4 C. J=1;s=2 D. J=2;s=3
HÃY CHO BIẾT KẾT QUẢ IN RA MÀN HÌNH
a, i=-1; j=20;
for k:=1 to 5 do i:=i+1;
j:=j+i;
write(i, ' ',j);
b, i:=1;j:=20
for k:=1 o 5 do
begin
i:=i+1; j:=j+i;
end.
writeln(i, ' ',j);
c, i:=1;j:=20;
fork:=1 to 5 do
ì k mod 2=0 then i:=i+1;
j:=j+i;
writeln(i,' ',j);
a) Chương trình bị lỗi
b) Chương trình bị lỗi
c) Chương trình bị lỗi luôn
Xác định độ phức tạp của thuật toán sắp xếp nổi bọt sau:
def BubbleSort(A):
n = len(A)for i in range(n-1):
for j in range(n-1-i):
if A[j] > A[j+1]:
A[j],A[j+1] = A[j+1]1,A[j]
Độ phức tạp của thuật toán sắp xếp nổi bọt là O(n2)
T = O(n) + O(n2) = O(n2)
j:=2; k:=3; for i:=1 to 5 do j:=j+1; k:=k+j; writeln(j,cach, k); Hỏi: j=? k=? Cách tính?
i:=1,J:=1;
while i<5 do i=i+1,j=j+i;
giá trị cuối của i,j
tinh j,k =? j:=2 k:=3
for i:=1 to 6 do j:=j + 1 ;k:=k+j
B sửa lại đề nhé.
for i:=1 to 6 do
begin j:=j+1; k:=k+j; end;
____________________
j=2; k=3;
Vòng lặp thứ nhất: i=1, j=j+1=2+1=3; k=k+j=3+3=6
Vòng lặp thứ hai: i=2; j=j+1=3+1=4; k:=k+j=6+4=10
Vòng lặp thứ ba: i=3; j=j+1=4+1=5; k=k+j=10+5=15
Vòng lặp thứ 4: i=4; j=j+1=5+1=6; k=k+j=15+6=21
Vòng lặp thứ 5: i=5; j=j+1=6+1=7; k=k+j=21+7=28
Vòng lặp thứ 6: i=6; j=j+1=7+1=8; k=k+j=28+8=36
Vậy j=8; k=36
Với thuật toán sắp xếp chèn, chứng minh rằng nếu thay toàn bộ phần Chèn A[i] vào vị trị đúng của dãy con A[@), A[l], ..., A[i - 1]> bằng các lệnh sau thì chương trình vẫn đúng:
j=1
while j>0 and A[j]<A[j-1]:
Đổi chỗ A[j] và A[j-1]
j=j-1
Để chứng minh tính đúng đắn của thuật toán sắp xếp chèn với các lệnh thay đổi trên, ta cần chứng minh hai điều kiện sau đây:
Điều kiện ban đầu (trước khi bắt đầu vòng lặp): Sau khi thực hiện lệnh j = 1, giá trị của j đang là 1, và dãy con A[0] chỉ gồm một phần tử là A[0] (vì j-1 là 0). Do đó, dãy con này đã được sắp xếp đúng.
Điều kiện duy trì (trong quá trình vòng lặp): Trong mỗi vòng lặp của while, nếu A[j] < A[j-1], ta hoán đổi giá trị của A[j] và A[j-1] bằng lệnh Đổi chỗ A[j] và A[j-1]. Sau đó, ta giảm giá trị của j đi 1 đơn vị bằng lệnh j = j - 1. Lúc này, giá trị của A[j] là giá trị của A[j-1] trước khi hoán đổi, và giá trị của A[j-1] là giá trị của A[j] trước khi hoán đổi. Điều này đồng nghĩa với việc dãy con A[0], A[1], ..., A[j-1] đã được sắp xếp đúng sau mỗi vòng lặp.
Vậy nên, dãy con A[0], A[1], ..., A[j-1] luôn được sắp xếp đúng sau mỗi vòng lặp của while, và dãy con này sẽ không bị thay đổi giá trị trong quá trình hoán đổi. Do đó, tính đúng đắn của thuật toán sắp xếp chèn vẫn được duy trì sau khi thay toàn bộ phần chèn A[i] vào vị trí đúng của dãy con A[0], A[1], ..., A[i-1] bằng các lệnh trên.
Program fashkfs;
uses crt;
Var n,i,j,m:longint;
a,b:array[1..1000] of integer;
BEGIN
clrscr;
Read(n,m);
For i:=1 to m do Begin Read(a[i]); end;
b[0]:=1;
For i:=1 to m do
For j:=1 to n do
If (a[i]<=j) and (b[j-a[i]]<>0) then
b[j]:=b[j]+b[j-a[i]];
Write(b[n]);
Redaln;
Readln;
END.
Xem giúp mình đoạn này sai chổ nào nha mn<3
Có lẽ là bạn hơi thừa cái readln
Sửa lại:
program fashkfs;
uses crt;
var n, i,j,m: longint;
a, b: array[1..1000] of integer;
begin
clrscr;
readln(n, m);
for i := 1 to m do
begin
read(a[i]);
end;
b[0] := 1;
for i := 1 to m do
begin
for j := 1 to n do
begin
if (b[j - a[i]] <> 0) and (a[i] <= j) then
begin
b[j] := b[j] + b[j - a[i]];
end;
end;
end;
writeln(b[n]);
readln;
end.
cái readln đoạn cuối bạn ghi sai ạ với bạn có thiếu begin
Cho đoạn chương trình sau
j:=0; s:=1;
for i:=1 to 3 do
j:=j+1
s:=j+1;
Giá trị của biến j, biến s bằng?
A. j=4, s=3 B. j=3; s=4 C. j=1;s=2 D. j=2;s=3
Trả lời:
Câu B:
j=3; s=4