PDA

View Full Version : Lỗi bó chiếu



hayate_amasaki
15-12-2009, 00:06
const N=2;
var x:string;
i:byte;
begin
for i:=1 to N do x[i]:='0';
for i:=N+1 to N*2 do x[i]:='1';
writeln(x);
readln;
end.
{========================}
Mọi người coi giùm. Chương trình đáng lẽ ra phải xuất ra màn hình là 0011. Vậy mà ngoài màn hình nó không xuất gì cả. Chạy tay thì thấy xong chương trình rồi mà x:''

lenggiauit2
15-12-2009, 00:53
const N=2;
var x:string;
i:byte;
begin
for i:=1 to N do x[i]:='0';
for i:=N+1 to N*2 do x[i]:='1';
writeln(x);
readln;
end.
{========================}
Mọi người coi giùm. Chương trình đáng lẽ ra phải xuất ra màn hình là 0011. Vậy mà ngoài màn hình nó không xuất gì cả. Chạy tay thì thấy xong chương trình rồi mà x:''

ở đây có 2 chổ bạn cần phải hiều:
1. Sao bạn khai báo i là byte mà ko phải integer ?
2. x[i] viết thế này thì x ko còn là biến nữa là trở thành array rồi.
:) Giờ muốn in ra array x phải là x[1], x[2], ...
sửa writeln(x); thành writeln(x[1]); thử xem

hayate_amasaki
15-12-2009, 10:40
@lenggiauit2: xin cám ơn bạn mình sửa được rồi và cũng xin trả lời cho bạn luôn:
1. Mình cho i là byte vì đây là dùng chuỗi.
2. x là string nên phải insert mới nhận. T_T
Dù gì thì cũng thanks ^_^

hayate_amasaki
15-12-2009, 10:41
@lenggiauit2: xin cám ơn bạn mình sửa được rồi và cũng xin trả lời cho bạn luôn:
1. Mình cho i là byte vì đây là dùng chuỗi.
2. x là string nên phải insert mới nhận. T_T
Dù gì thì cũng thanks ^_^

lenggiauit2
15-12-2009, 13:05
@lenggiauit2: xin cám ơn bạn mình sửa được rồi và cũng xin trả lời cho bạn luôn:
1. Mình cho i là byte vì đây là dùng chuỗi.
2. x là string nên phải insert mới nhận. T_T
Dù gì thì cũng thanks ^_^
:eek:
:emlaugh:
:eek: Pascal học thời phổ thông chẵng nhớ gì nhiều , nhưng ngôn ngữ lập trình nào cũng như nhau chỉ khác cách viết
pó chiếu :hang: