Nhập dãy số thực a. hãy thực hiện công việc nếu các phần tử trùng nhau thì chỉ giữ lại một phần tử. 1. nêu ý tưởng 2. Viết chương trình trong ngôn ngữ

Nhập dãy số thực a. hãy thực hiện công việc nếu các phần tử trùng nhau thì chỉ giữ lại một phần tử.
1. nêu ý tưởng
2. Viết chương trình trong ngôn ngữ Pascal.
Mọi người giúp mình lập trình bài này với ạ. Mình tìm kiếm trên mạng chỉ có C++ thôi :((

0 bình luận về “Nhập dãy số thực a. hãy thực hiện công việc nếu các phần tử trùng nhau thì chỉ giữ lại một phần tử. 1. nêu ý tưởng 2. Viết chương trình trong ngôn ngữ”

  1. 1 ý tưởng:lưu số được đọc trong 1 biến T , nếu trong mảng A chưa tồn tại phần tử đó thì tăng độ dài mảng A lên 1 và thêm biến b vào phần tử cuối cùng

    2

    var a:array[1..32000]of integer;

          n,i,j,t,m,:integer;b:boolean;

    begin

     writeln(‘nhap so phan tu cua mang’);readln(n);

     writeln(‘nhap lan luot cac phan tu cua mang’);

     m:=0;

    for i:=1 to n do begin

     readln(t);b:=true;

     for j:=1 to m do 

      if a[j]=t then b:=false;

     if b then begin

      m:=m+1;

      a[m]:=t;

    end;

    writeln(‘mang hoan chinh la’);

    for i:=1 to m do

     write(a[i],’ ‘);

    readln;

    end.

    Bình luận
  2. 1. Ý tưởng:

    Mình sẽ làm trong lúc nhập luôn, nếu phần tử đó có rồi thì không thêm nó vào mảng.

    Ngoài ra còn có cách: cũng như trên nhưng không làm trong bước nhập mà nhập rồi mới đi  xóa các phần tử trùng.

    2. Viết chương trình trong ngôn ngữ Pascal.

    uses crt;
    var n,m,i,kt,j,t:longint; a:array[1..10000000]of longint;
    begin
    clrscr;
       write(‘Nhap so phan tu: ‘);readln(n); 
       for i:=1 to n Do 
          begin
             write(‘a[‘,i,’]=’);readln(t);
             kt:=0;
             for j:=1 to i-1 do 
                if t=a[j] then kt:=1;
             if kt=0 then begin inc(m); a[m]:=t; end;
          end;
       for i:=1 to m do write(a[i],’ ‘);
    readln;
    end.

    Có thắc mắc gì thì cứ bình luận ở dưới nhé.

    Bình luận

Viết một bình luận