Nhập mảnh 1 chiều gồm 100 số nguyên dương. Cho biết dãy A có là cấp số cộng không thì cần có câu lệnh: Giải giúp mình với ạ , please ????

Nhập mảnh 1 chiều gồm 100 số nguyên dương. Cho biết dãy A có là cấp số cộng không thì cần có câu lệnh:
Giải giúp mình với ạ , please ????

0 bình luận về “Nhập mảnh 1 chiều gồm 100 số nguyên dương. Cho biết dãy A có là cấp số cộng không thì cần có câu lệnh: Giải giúp mình với ạ , please ????”

  1. uses crt;
    var i:longint; a:array[1..1000]of longint; kt:boolean;
    begin
    clrscr;
       kt:=true;
       for i:=1 to 100 do 
          begin
             write(‘Nhap phan tu thu ‘,i,’: ‘);readln(a[i]);
             if (i<>1)and(a[i]-a[i-1]<>a[2]-a[1]) then kt:=false;
          end;
       if kt then writeln(‘Day la cap so cong’) else
       writeln(‘Day khong la cap so cong’);
    readln
    end.

    Bình luận
  2. Nếu như là dãy chưa sắp xếp thì ta cần phải sắp xếp lại

    Sau đó lấy mốc cấp số cộng là khoảng cách giữa phần tử 1 và phần tử 2, rồi cho chạy từ 2 đến n-1, nếu như khoảng cách giữa 2 số liền kề nhau khác mốc cấp số cộng thì dừng lại và thông báo không phải, ngược lại thì thông báo phải.

    Chương trình:

    program capsocong;

    uses crt;

     var A:array[1..100] of integer;

           n,i,j,tg,csc:integer;

    begin

         clrscr;

         write(‘Nhap so luong phan tu: ‘);  readln(n);

         for i:=1 to n do

              begin

                   write(‘Nhap so thu ‘,i,’: ‘);  readln(A[i]);

              end;

         {—sap-xep—}

         for i:=1 to n-1 do

              for j:=i+1 to n do

                   if A[i]>A[j] then 

                        begin

                             tg:=A[i];

                             A[i]:=A[j];

                             A[j]:=tg;

                        end;

         {—khoang-cach—}

         csc:=A[2]-A[1];

         for i:=2 to n-1 do

              if A[i+1]-A[i]<>csc then

                   begin

                        write(‘Khong phai’);

                        break;

                   end;

         if (i=n-1) and (A[n]-A[n-1]=csc) then write(‘Phai va cap so cong la: ‘,csc);

         readln;

    end.

    Bình luận

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