i:=1,J:=1;
while i<5 do i=i+1,j=j+i;
giá trị cuối của i,j
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
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 biết giá trị i,j,k trong đoạn CT sau :
a ) i:=1 ; j:=2 ; k:=3;
while i<=6 do
i:=i+1;
j:=j+1;
k:=k+j;
b) i:=1 ; j:=2 ; k:=3;
while i<=6 do
begin
i:=i+1;
j:=j+1;
k:=k+j;
end;
( Giải thích cách dùm mình luôn nha , tks!!! )
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ự
Câu 36. Cho đoạn chương trình:
i:=1; j:=2; k:=3;
While i<6 do i:=i+1; j:=j+1; k:=k+j;
Writeln (i, j, k);
Sau khi thực hiện đoạn chương trình trên i, j, k có kết quả là
A. 6;3;6
B. 6;6;12
C. 6;7;12
D. 6;7;28
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)
Đối với từng đoạn chương trình Pascal sau đây, hãy cho biết lệnh writeln in ra màn hình giá trị của i , j, k là bao nhiêu?
i:=1; j:=2; k:=3;
while i<6 do i:=i+1; j:=j+1; k:=k+j;
writeln(i,’ ’, j,’ ’, k);
Giá trị của j, k sau khi thực hiện đoạn chương trình là?
Giá trị của j là 7
Giá trị của k là 28
Câu lệnh while do không ảnh hưởng đến j và k
j = 2 nên j = j + 1 = 3
k = 3 nên k = k + j = 3 + 3 = 6
Hãy tìm hiểu đoạn chương trình sau đây.
i:=1; j:=2; k:=3; |
While i<=6 do i:=i+1; j:=j+1; k:=k+j; |
Space:=’ ’; |
Write(I,space,j,space,k); |
Sau khi thực hiện đoạn chương trình trên, lệnh Writeln in ra màn hình giá trị của i, j, k lần lượt là bao nhiêu?
A. 2,3,4 B. 7,2,3 C. 7,3,6 D. 6,3,7
ìm hiểu đoạn chương trình sau đây. Khồng cần viết chương trình,hãy cho biết lệnh writeln in ra màn hình giá trị của i,j,k là bao nhiêu?
i:=1;j:=2;k:=3;
while i<=6 do
begin i:=i+1; j:=j+1; k:=k+j; end;
space:=' '
write(I,space,j,space,k);
Câu 6: Cho biết kết quả in ra màn hình của đoạn chương trình sau
Câu a)
i := -1;
j:= 20;
For k:= 1 to 5 do
If k mod 2 = 0 then i:= i + 1;
j := j + i;
Writeln(i,‘ ’,j);
Câu b)
n := 127;
m := 0;
While n < >0 do
Begin
m := m * 10 + n mod 10;
n := n div 10;
end;
writeln(m);
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