PDA

View Full Version : Bài tập pascal kiểu mảng!Help!



lieungannhi
05-11-2009, 09:57
E đang hoc Pascal,thầy cho bài như sau
Nhập một day số a={a1,a2,...,an}.Hãy tìm vị trí các số dương trong dãy và in ra.
Bài này e làm dc 50% ,nghĩa là làm dc phần tìm vị trí còn muốn nó in các vị trí đó ra thành một dãy thì pó tay.Mọi người giúp e với

lehang_gb1
06-11-2009, 21:22
Var A:array[1..100] of Real;
i,N:integer;
Begin
write('Nhap vao so phan tu cua day:');
Readln(N);
For i:=1 to N do
Begin
Write('A[',i,']=');{write('Nhap vao phan tu thu',i,':');}
Readln(A[i]);
End;
write('Vi tri cac so duong la:');
For i:=1 to N do
if A[i]>0 then write(i:3);
Readln
End.


Chương trình trên in luôn ra vị trí các số dương. Nếu bạn muốn lưu trữ các số dương lại thì sử dùng 1 mảng khác chẳng hạn mảng B,duyệt hết mảng A đưa ra mảng B

[=========> Bổ sung bài viết <=========]



Var A:array[1..100] of Real;
B:array[1..100] of integer;
i,N,j,k:integer;
Begin
write('Nhap vao so phan tu cua day:');
Readln(N);
For i:=1 to N do
Begin
Write('A[',i,']=');{write('Nhap vao phan tu thu',i,':');}
Readln(A[i]);
End;
write('Vi tri cac so duong la:'); j:=0;
For i:=1 to N do
if A[i]>0 then
Begin
j:=j+1;
B[j]:=i;
end;
For k:=1 to j do write(B[k]:3);
Readln
End.