Trang 2 / 5 FirstFirst 12345 LastLast
Hiển thị kết quả từ 11 đến 20 / 48
  1. #11
    Tham gia
    13-08-2007
    Location
    Hà Nội
    Bài viết
    26
    Like
    0
    Thanked 0 Times in 0 Posts
    chỉ cần chạy tới phần nguyên của n/2 là đủ

  2. #12
    Tham gia
    14-10-2007
    Location
    ô hay, đến từ đâu thì kệ người ta chứ :p
    Bài viết
    112
    Like
    0
    Thanked 19 Times in 7 Posts
    trời ! pó tay các cao thủ thưa là chỉ cần chạy tới trunc(SQRT(n)) thui ạ
    ( nghĩ là phần nguyên của căn bậc 2 n)


    mà dạo này box chán quá nhỉ, chẳng thấy các cao thủ đâu cả, cả mod cũng chẳng thấy online bao giờ, ko hiểu

  3. #13
    Tham gia
    17-01-2009
    Location
    Hà Nội
    Bài viết
    35
    Like
    0
    Thanked 0 Times in 0 Posts
    sax các ông đang làm gì thế người ta hỏi là đếm số nguyên tố trong dãy chứ đâu phải là in ra,tôi nghĩ là nên sử dụng hàm ktnt(kiểm tra nguyên tố),rồi cho đếm số các số nguyên tố

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

    sr mọi người tôi post bài này trong phần tin học lớp 11 chả hiểu sao lại kéo cả topic ra ngoài chẳng hiểu gì cả
    Được sửa bởi luong1100 lúc 17:56 ngày 19-01-2009 Reason: Bổ sung bài viết

  4. #14
    Tham gia
    15-11-2008
    Bài viết
    3
    Like
    0
    Thanked 0 Times in 0 Posts
    bai dung vong lap while hay wa y tuong cung hay lam

  5. #15
    Tham gia
    28-09-2007
    Location
    Vĩnh Yên-Vĩnh Phúc
    Bài viết
    1,167
    Like
    6
    Thanked 14 Times in 12 Posts
    một nhỏ hai chấm hay thật đấy chấm xuống dòng hai nhỏ hai chấm nhưng không tối ưu chấm xuống dòng ba nhỏ hai chấm thấy ý tưởng của tôi hay không chấm hỏi hết chấm

  6. #16
    Tham gia
    13-12-2008
    Location
    Vũng Tàu
    Bài viết
    393
    Like
    0
    Thanked 2 Times in 2 Posts
    - lạc đề trầm trọg
    - huy rảnh wá àh mà sao lại k tối ưu . Tui cũg làm theo ý tưởg đó nhưg dùg vòg repeat .. until
    Code:
    var   n,i,j,d:integer;
          a:array[1..100] of integer;
    begin
          write('nhap n:');
          readln(n);
          for i:=1 to n do
          begin
                write('nhap a[',i,'] ');
                readln(a[i]);
          end;
          j:=1;
          for i:=1 to n do
                if a[i]>1 then
                begin
                     repeat
                           inc(j);
                     until (a[i] mod j=0);
                     if j=a[i] then inc(d);
                end;
          write('co ',d,' so ngto trog day');
          readln;
    end.

  7. #17
    Tham gia
    27-05-2008
    Location
    bình định
    Bài viết
    692
    Like
    0
    Thanked 10 Times in 6 Posts
    ông huysun bị rảnh ?
    Code:
    function ngto(a:integer):boolean;
    var i: integer;
    begin
    ngto:=true;
    for i:= a div 2 downto 2 do 
     if a mod i = 0 then 
      begin
       ngto:= false
       break;
      end;
    end;
    của bạn hangvt :
    Code:
    begin
          write('nhap n:');
          readln(n);
          for i:=1 to n do
          begin
                write('nhap a[',i,'] ');
                readln(a[i]);
          end;
          j:=1;
          for i:=1 to n do
                if a[i]>1 then
                begin
                     repeat
                           inc(j);
                     until (a[i] mod j=0);
                     if j=a[i] then inc(d); chỉ cần j>a[i] div 2 là dược
                end; cần gán j:=1 lại trước vòng lặp tiếp theo
          write('co ',d,' so ngto trog day');
          readln;
    end.

  8. #18
    Tham gia
    28-09-2007
    Location
    Vĩnh Yên-Vĩnh Phúc
    Bài viết
    1,167
    Like
    6
    Thanked 14 Times in 12 Posts
    ko tối ưu.
    VD với số 169:
    chương trình đó phải chia cho 1,2,3,4,5,6,7,8,9,10,11,12,13.
    tui chỉ cần chia cho các số 2,3,5,7,11,13 thế thôi.
    lưu các số nguyên tố nhỏ hơn n lại rồi chia n cho các số nguyên tố nhỏ hơn n.

  9. #19
    Tham gia
    13-12-2008
    Location
    Vũng Tàu
    Bài viết
    393
    Like
    0
    Thanked 2 Times in 2 Posts
    wên gán j:=1 trog vòg lặp . Vậy cách nào tối ưu nhất ? Còn cách cổ điển này
    Code:
    function ngto(n:integer):boolean; 
    var i:integer; 
    begin     
       ngto:=false;     
       if n<2 then exit;     
       for i:=2 to trunc(sqrt(n)) do         
          if n mod i=0 then exit; {nếu n chia hết cho i thì n không là nguyên tố => thoát luôn}     
       if (i>=sqrt(n)) then ngto:=true; 
    end;

  10. #20
    Tham gia
    25-11-2008
    Bài viết
    1
    Like
    0
    Thanked 0 Times in 0 Posts

    Tệ thật !

    Tui có bài này mời các bạn giải giúp
    MỘt chiếc xe gây tai nạn sau đó bỏ trốn. Biết rằng biển số xe là một số nguyên tố có 3 chữ số và là một số đối xứng và khi chuyển số đó sang hệ nhị phân ta cũng được một số đối xứng. Là một nhà tin học em hãy giúp các nhà điều tra tìm ra chiếc xe gây tai nạn.

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

    Quote Được gửi bởi tung053 View Post
    Mấy anh giúp em giải bài này:
    Nhập vào 1 dãy, xác định xem trong dãy có bao nhiu số nguyên tố ? em ko biết là làm sao để phân biết được số nguyên tố với những số khác.
    Số nguyên tố là một số chỉ có 2 ước là 1 và chính nó;
    Để làm bài trên ta có thể xây dựng 1 hàm kiểm tra tính nguyên tố của 1 số sau đó duyệt từng phần tử của mảng và kiểm tra xem nó có phải là số nguyên tố hay không nếu là nguyên tố thì ta tăng biến đếm lên 1
    Progarm demnto;
    uses crt;

    var A: array[1..30] of integer;
    n,i,d : integer;
    {xây dựng hàm kiểm tra nguyên tố}
    Function ktnt(u: integer): boolean;
    var ok: boolean;
    Begin
    if u < 2 then ok := false
    else Begin
    ok:= true;
    for i := 2 to trunc(sqrt(u)) do
    if u mod i = 0 then
    begin
    ok := false;
    break;
    end;
    ktnt := ok;
    End;
    {Main program}
    Begin
    write('nhap n='); readln(n);
    for i := 1 to n do readln(a[i]);
    {dem nguyên tố}
    d:= 0 ;
    for i := 1 to n do
    if ktnt(A[i]) then d:= d + 1;
    if d >0 then writeln('trong mang co ', d, 'so nguyen to')
    else writeln('khong co so nguyen to nao trong day');
    Readln
    End.
    Được sửa bởi nguyenvancung lúc 20:35 ngày 10-02-2009 Reason: Bổ sung bài viết

Trang 2 / 5 FirstFirst 12345 LastLast

Bookmarks

Quy định

  • Bạn không thể tạo chủ đề mới
  • Bạn không thể trả lời bài viết
  • Bạn không thể gửi file đính kèm
  • Bạn không thể sửa bài viết của mình
  •