game box tin - Chém code như chém gió

Thảo luận trong 'Thảo luận chung' bắt đầu bởi cuong276, 10 Tháng sáu 2012.

Lượt xem: 25,585

  1. cuong276

    cuong276 Guest

    [TẶNG BẠN] TRỌN BỘ Bí kíp học tốt 08 môn học. Click ngay để nhận!


    Bạn đang TÌM HIỂU về nội dung bên dưới? NẾU CHƯA HIỂU RÕ hãy ĐĂNG NHẬP NGAY để được HỖ TRỢ TỐT NHẤT. Hoàn toàn miễn phí!

    ReOpen ^_^
    ...........................................................


     
    Last edited by a moderator: 26 Tháng ba 2013
  2. kool_boy_98

    kool_boy_98 Guest


    Em viết luôn chương trình khỏi phải ghi thuật toán ạ! :D

    PHP:
    begin
    writeln
    ('Anh Cuong gom he');
    readln;
    end.
    ~~> Viết chương trình nhập vào một số và kiểm tra xem số ấy có là bội của 3 hay không?
     
  3. cuong276

    cuong276 Guest

    Mã:
    var so:integer;
    begin
           write(' nhap so:'); readln(so);
           if so mod 3=0 then write(so,' la boi cua 3')
           else write(so,' khong phai la boi cua 3');
           readln;
    end.
    viết chương trình kiểm tra 1 số là chẵn hay lẻ
     
  4. kool_boy_98

    kool_boy_98 Guest


    PHP:
    ninteger;
    Begin
    Write
    ('Nhap vao so n, n=');
    Readln(n);
    If 
    n mod 2 0 then writeln('So'' la so chan')
    Else 
    writeln('So'' la so le');
    Readln;
    End.
    @Cuong: Tiết kiệm mấy cái thank quá! :|
     
  5. cuong276

    cuong276 Guest

    thanks rồi đó! được chưa:)|? à mà đề ra đâu rồi?:confused::confused:
     
  6. kool_boy_98

    kool_boy_98 Guest

    Quên không ra đề :))

    ~~> Sử dụng vòng lặp đưa ra các ngày chẵn trong tuần

    Ps: Một chập đề thi hsg đang chờ mọi người =))
     
  7. cuong276

    cuong276 Guest

    Mã:
    var thu,ngay:integer;
    begin
           write('nhap ngay thu 2:'); readln(ngay);
           writeln('cac ngay chan trong tuan la:');
           thu:=2;
           while thu<=8 do
                   begin
                         if (ngay mod 2=0) and (thu=8) then
                             begin
                                   write(' chu nhat');
                                   break;
                             end;
                         if ngay mod 2=0 then write(' thu', thu:2);
                         ngay:=ngay+1;
                         thu:=thu+1;
                   end;
            readln;
    end.
    viết chương trình nhập vào 1 số nguyên N. Tính tổng S = 1+2+...+N.
     
  8. kool_boy_98

    kool_boy_98 Guest


    Bài làm dài dòng khó hiểu quá! 8-}

    PHP:
    var i:integer;
    begin
     
    for i:=2 to 8 do
       
    begin
           
    while i mod 2 do 
                 
    writeln('Thu'' là ngay chan trong tuan');
       
    end;
    readln;
    end.
    PHP:
    var inS:integer;
    begin
    writeln
    ('Nhap vao so nguyen n, n=');
    readln(n);
    S:=0;
    for 
    i:=1 to n do S:=S+1;
    writeln('Tong S=',S);
    readln;
    end.
    ~~> Cho một dãy bất kì, chèn phần tử k vào đầu dãy
     
  9. cuong276

    cuong276 Guest

    dãy này là chữ cái hay sô hay là cả chữ cái và số? k này là chữ cái hay số?
     
  10. cuong276

    cuong276 Guest

    À mà thôi! Không cần quan tâm đến chữ cái hay là số. Làm luôn
    Mã:
    var st:string;
          k:string;
    begin
          write('nhap day:'); readln(st);
          write('nhap phan tu k:'); readln(k);
          write('day sau khi chen la:',k+s);
          readln;
    end.
    viết chương trình nhập vào 1 số nguyên N tính tổng:
    S= 1+ [TEX]\frac{1}{a}[/TEX] + [TEX]\frac{1}{a+1}[/TEX] +...+ [TEX]\frac{1}{a+N}[/TEX]
     
    Last edited by a moderator: 10 Tháng sáu 2012
  11. concanhcam

    concanhcam Guest

    Mã:
    
    uses crt;
       var i, a,n :integer;
               s:real;
       begin
         readln(a,n);
          S:=1;
          for i:=0 to n do 
                  s:=S+1/(a+i);
       write(s);
        readln;
    end.
    

    Có Mx9 đồng tiền xu được xếp thành một bảng M dòng, 9 cột. Mỗi đồng tiền trong bảng có 1 trong hai trạng thái sấp (S) hoặc ngửa (N). Một phép lật trong bảng là lật tất cả các đồng xu trong một dòng hoặc trong một cột.
    Yêu cầu: Hãy thực hiện phép lật sao cho số đồng xu sấp trong bảng còn lại là ít nhất.
    Input: Cho tệp văn bản COINS.INP gồm:
    - Dòng đầu tiên chứa số nguyên dương M (1≤M≤1000).
    - M dòng tiếp theo mô tả trạng thái ban đầu của các đồng tiền trong bảng, mỗi dòng chứa đúng 9 kí tự “S” hoặc “N”, các kí tự cách nhau ít nhất một dấu cách.
    Output: Tệp văn bản COINS.OUT có một dòng duy nhất chứa số đồng tiền sấp ít nhất còn lại sau các phép lật.
    Vd

    coins.inp

    5
    S S S N N N N N N
    S S S N N N S S S
    N N N N N N S S S
    N N N S S S N N N
    N N N S S S N N N

    coins.out
    6
     
  12. cuong276

    cuong276 Guest

    Híc híc híc! Là sao hả chị? Chỉ 1 lần lật thôi à? hay là cần phải dùng nhiều lần lật. Nếu 1 lần lật thì không thể cho ra số đồng xu ngửa còn lại là 6 được
     
  13. concanhcam

    concanhcam Guest

    Yêu cầu: Hãy thực hiện phép lật sao cho số đồng xu sấp trong bảng còn lại là ít nhất.
     
  14. cuong276

    cuong276 Guest

    Cái em hỏi là phép lật được thực hiện bao nhiêu lần. Nếu mấy lần cũng được thì chi bằng lật hết cho mau
     
  15. mikelhpdatke

    mikelhpdatke Guest

    Thuật toán e nghĩ hơi củ chuối, xét tất cả các hàng, xét tất cả các cột. Xem xem nếu phép lật ở hàng (cột) là có lợi thì ta lật. Lặp lại cho đến khi không còn phép lật nào lợi
     
  16. cuong276

    cuong276 Guest

    Quan trọng là phải lật bao nhiêu lần chứ. Cái này mình không hiểu
     
  17. concanhcam

    concanhcam Guest

    Em nghĩ chính xác rồi đấy

    Xét đến khi nào không còn phép lập nào lợi
     
  18. mikelhpdatke

    mikelhpdatke Guest

    Ngồi cả buổi chiều cuối cùng cũng xong. Chỉ cần có thuật toán mình nghĩ ra là code được. Quan trọng là t/g làm bài :))
    Mã:
    Program Latdongxu;
    Const max=9;
    type mang=array[0..100,0..100] Of String;
    Var A:mang;
        C:array[0..100,0..100] Of Boolean;
    
        i,l,j,k,d:integer;
        M:integer;
    
    Procedure Init;
     Begin
      Write('Nhap M= ');Readln(M);
       For i:=1 to M do
         For j:=1 to max do begin Readln(A[i,j]); A[i,j]:=Upcase(A[i,j]);end;
    
            For i:=1 to M do
             Begin
              For j:=1 to max do Write(A[i,j]:3);
              Writeln;
             End;
       FillChar(C,SizeOf(C),True);
        Writeln;
    
     End;
    
    Function kth(i:integer):boolean;
    Var l,k,ds,dn:integer;
     Begin
      kth:=False;
      ds:=0;
      dn:=0;
       For k:=1 to max do
        Begin
         If A[i,k]='S' then inc(ds);
         If A[i,k]='N' then inc(dn);
        End;
       If ds<=dn then kth:=True;
     End;
    
    Function ktc(j:integer):boolean;
    Var l,k,ds,dn:integer;
     Begin
      ktc:=False;
      ds:=0;
      dn:=0;
       For k:=1 to M do
        Begin
         If A[k,j]='S' then inc(ds);
         If A[k,j]='N' then inc(dn);
        End;
       If ds<=dn then ktc:=True;
     End;
    
    Procedure lath(Var A:mang;i:integer);
    Var k:integer;
     Begin
        For k:=1 to max do
         Begin
          If (A[i,k]='S') and (C[i,k]) then begin A[i,k]:='N';C[i,k]:=False;end;
          if (A[i,k]='N') and (C[i,k]) then begin A[i,k]:='S';C[i,k]:=False;end;
         End;
          FillChar(C,SizeOf(C),True);
     End;
    
    Procedure latc(Var A:mang;j:integer);
    Var k:integer;
     Begin
        For k:=1 to max do
         Begin
           If (A[k,j]='S') and (C[k,j]) then begin A[k,j]:='N';C[k,j]:=False;end;
          if (A[k,j]='N') and (C[k,j]) then begin A[k,j]:='S';C[k,j]:=False;end;
    
         End;
          FillChar(C,SizeOf(C),True);
     End;
    
     Procedure Install;
     Var d:integer;
      Begin
    
      Repeat
      d:=0;
       For i:=1 to M do
             If not kth(i) then begin inc(d);  lath(A,i);end;
     {--------}
    
     {--------}
       For j:=1 to max do
             If not ktc(j) then begin inc(d); latc(A,j); end;
       Until d=0;
    
             Writeln;
         For i:=1 to M do
             Begin
              For j:=1 to max do
                begin
                  Write(A[i,j]:3);
                  If A[i,j]='S' then inc(d);
                End;
    
              Writeln;
             End;
             Writeln(d);
     End;
    BEGIN
     Init;
     Install;
     readln
     end.
    
     
  19. cuong276

    cuong276 Guest

    Đùa à? Chưa đọc tệp thì sao mà chạy được. Mà số nguyên dương M là ở trong tệp chứ. Sao lại có phần nhập M???
     
  20. mikelhpdatke

    mikelhpdatke Guest

    Đây là mình xử lý bình thường bạn ah`. Thích thì bạn có thể chuyển sang tệp
     
Chú ý: Trả lời bài viết tuân thủ NỘI QUY. Xin cảm ơn!

Draft saved Draft deleted

CHIA SẺ TRANG NÀY