YOMEDIA
NONE

Hãy viết phương trình tìm kiếm nhị phân?

Theo dõi Vi phạm
ATNETWORK

Trả lời (1)

  • - Xác định bài toán:

    + Input: Dãy A là dãy tăng gồm N (N ≤≤ 250) số nguyên dương a1, a2,..., aN và  số nguyên k.

    + Output: Chỉ số i mà ai = k hoặc thông báo "Khong tim thay" nếu không có số hạng nào của dãy A có giá trị bằng k.

    - Chương trình cài đặt:

    program TK_nhiphan;

    uses crt;

    const

       Nmax = 250;

    type

       ArrInt = array[1..Nmax] of integer;

    var

       N, i, k: integer;

       Dau, Cuoi, Giua: integer;

       A: Arrint;

       Tim_Thay: boolean;

    begin

       clrscr;

       write('Nhap so luong phan tu cua day so, N = ');

       readln(N);

       writeln('Nhap cac phan tu cua day so tang: ');

       for i:=1 to N do

             begin

                 write('Phan tu thu ',i,' = ');

                 readln(A[i]);

             end;

       write('Nhap gia tri k = ');

       readln(k);

       Dau:= 1; Cuoi:=N; Tim_thay:= false;

       while (Dau <= Cuoi) and not (Tim_Thay) do

             begin

             Giua:= (Dau+Cuoi) div 2;

             if A[Giua] = k then

                 Tim_thay:= true

                         else

                         if A[Giua]>k then Cuoi:= Giua-1

                               else Dau:= Giua+1; 

                   end;

       if Tim_thay then writeln('Chi so tim duoc la: ', Giua)

                   else  writeln('Khong tim thay');

       readln

    end.

      bởi Hữu Nghĩa 09/11/2021
    Like (0) Báo cáo sai phạm

Nếu bạn hỏi, bạn chỉ thu về một câu trả lời.
Nhưng khi bạn suy nghĩ trả lời, bạn sẽ thu về gấp bội!

Lưu ý: Các trường hợp cố tình spam câu trả lời hoặc bị báo xấu trên 5 lần sẽ bị khóa tài khoản

Gửi câu trả lời Hủy
 
NONE

Các câu hỏi mới

AANETWORK
 

 

YOMEDIA
ATNETWORK
ON