- Ebook Giải thuật và lập trình Lê Minh Hoàng
- Các thuật toán sắp xếp trong Pascal

Xóa các phần tử trùng nhau trong mảng 1 chiều (pascal)



Nhập vào mảng 1 chiều gồm 1 dãy số nguyên N phần tử. Hãy xóa các phần tử trùng nhau trong mảng và in kết quả ra màn hình. Ý tưởng: Duyệt mảng 1 chiều bằng 2 biến, nếu phát phát hiện phần tử nào trùng thì xóa phần tử ấy ra khỏi mảng.


Program Bo_so_trung;
   Const
      Max=100;
   Var
   a:Array[1..Max] Of Integer;
   i,j,k,n:Integer;
Begin
   Writeln('XOA BO CAC SO TRUNG NHAU');
   Writeln('------------------------');
   Writeln;
   Write('-Nhap so phan tu mang: ');
   Readln(n);
   For i:=1 To N Do
      Begin
         Write('-Phan tu A[',i,']= ');
         Readln(a[i]);
      End;
   i:=2;
   While i <= N Do
      Begin
         j:=1;
         While a[j] <> a[i] Do
            j:=j+1;
         If j < i Then
            Begin
               For k:=i to n-1 Do
                  a[k]:= a[k+1];
               n:=n-1;
            End
         Else
            i:=i+1;
      End;
   Writeln;
   Write('-Mang con lai: ');
   For i:=1 to n Do
      Write(a[i]:8);
   Writeln;
   Writeln('   Bam phim <Enter> de ket thuc ');
   Readln
End.


Nặc danh nói...

vậy biến j trong ct là gì v. bạn


16:13 27 tháng 7, 2012
Nặc danh nói...

nhap vao 1 day so cho truoc, xuat ra nhung phan tu trung nhau thi lam the nao ha ban?


11:49 17 tháng 11, 2012
Nặc danh nói...

Ko chạy đc chương trình. Sai kết quả


21:13 3 tháng 12, 2012
Cường nói...

tại sao khi j<i lại del A[i], cái đó phải dùng khi A[i]=A[j] mà :(


21:14 4 tháng 2, 2013
Tấn Phúc Trần nói...

Yêu cầu giải thích


08:44 24 tháng 2, 2013
Nguyên Hưng Vũ nói...

Bạn có thể giải thích hộ mình ý tưởng đc không, viết vào chương trình thì đúng rồi đấy bạn ^^!


18:51 24 tháng 2, 2013
Thọ Nguyễn Hữu nói...

cần giải thích bạn ơi


19:44 26 tháng 2, 2013
Nặc danh nói...

đúng cần giải thích


19:45 26 tháng 2, 2013
Thọ Nguyễn Hữu nói...

cần giải thích bạn ơi


19:53 26 tháng 2, 2013
Nặc danh nói...

Saj.
Nhập n=5. Nhập các phần tử lần lượt là 1 5 5 8 2.
Kết quả là 5 5 8 2


14:56 7 tháng 4, 2013
Nặc danh nói...

i với j là số thứ tự của từng phần tử. nếu ithực hiện lệnh xóa 1 phần tử trong dãy rồi tăng i lên ss tiếp. ngược lại i<j thì tăng i


14:03 9 tháng 12, 2013
Đại Hoàng Hữu nói...

Có ai biết làm ko cho xin thuật toán


15:57 11 tháng 12, 2013
Nặc danh nói...

chuong trinh chay khong dung


08:46 17 tháng 7, 2014
Nặc danh nói...

hay qua :VVVVVVVVVVVVVVVVVVVVVVVVV,sai :))


16:41 30 tháng 9, 2014
Nukan Nguyễn nói...

kết quả ra không đúng ạ


14:53 7 tháng 11, 2014
minh lê nói...

uses crt;
var a:array[1..100]of integer;
n,i,j,k:integer;
begin
clrscr;
write('nhap n=');readln(n);
for i:=1 to n do
begin
write('a[',i,']=');readln(a[i]);
end;
i:=1;
while i<=n do
begin
j:=1;
while a[j]<>a[i] do
j:=j+1;
IF j<i then begin
for k:=i to n do
a[k]:=a[k+1];
n:=n-1 end else
i:=i+1;
end;
for i:=1 to n do write(a[i],',') ;
readln
end.
nhập như trên thử được không nha


19:43 11 tháng 12, 2014
hưng tằng nói...

var i, j, k, n:integer;
A:array[1..100] of integer;
B:array[1..100] of boolean;
f, g:text;
Begin
assign(f,'xoaphantu.INP');
assign(g,'xoaphantu.OUT');
reset(f); rewrite(g);
readln(f,n);
for i:= 1 to n do
begin
read(f,A[i]);
B[i]:=true;
end;
i:=1;
while i < n do
begin
for j:=i+1 to n do
if (B[j]= true) and (A[j] = A[i]) then B[j]:= false;
inc(i);
if B[i] = false then i:=i+1;
End;
for i:= 1 to n do
if B[i] = true then write(g,A[i],' ');

close(f);
close(g);
END.
thử đi nha


00:13 29 tháng 3, 2015
bo lam nói...

Làm Kiểu text đi Bạn


14:16 4 tháng 3, 2016
bo lam nói...

Làm Bằng mảng 1 chiều


14:17 4 tháng 3, 2016
Lavat David nói...

hưng tằng chỉ ngu quá, sai mẹ zòi


09:08 6 tháng 4, 2016
Lavat David nói...

hưng tằng coi lại nha. chỉ ngu như bìu


09:15 6 tháng 4, 2016
bl mai nói...


var s:string;
i,j:integer;
begin
write('s=');readln(s);
for i:=1 to length(s) do
begin
for j:=length(s) downto i+1 do
if s[i]=s[j] then delete(s,j,1);
end;
write('Xau s moi la:',s);
readln
end.


21:05 8 tháng 10, 2016
Đoãn Tử Hán nói...

|Giải hơi dài dòng đấy


08:56 7 tháng 11, 2016

Đăng nhận xét

Thành viên Blog

Tổng số lượt xem trang

Translate

Return to top of page Copyright © 2012 | Theme by Hack Tutors. Cung cấp bởi Blogger.
Các code pascal trong blog được sưu tầm, lựa chọn sao cho tối ưu nhất. Cảm ơn các tác giả đã viết thuật toán.