Hỏi & đáp lập trình

Thảo luận trong 'Lập trình & Đồ hoạ' bắt đầu bởi canh en buon, 23/5/07.

  1. Bối Bối

    Bối Bối C O N T R A

    Tham gia ngày:
    20/2/06
    Bài viết:
    1,859
    Nơi ở:
    Ha Noi, Vietnam,
    Lâu lắm rồi ko đụng đến Access. mà form trên là viết = gì đấy, VB hay ...

    Viết sự kiện cho cái ProductID (là dropdown combo box đúng ko) , onchange, onclick hay sự kiện gì mà thực hiện sau khi có sự thay đổi ở combo box đó (VB - ngôn ngữ khác thì ko bít)
    Trong đó truy vấn đến csdl theo cái ID ở, rồi fill các ô liên quan còn lại từ kết quả truy vấn
    VB và Access bỏ cũng phải 2 năm rùi, sai sót gì thì sry nhé :'>
     
  2. John Constantine

    John Constantine C O N T R A

    Tham gia ngày:
    20/8/07
    Bài viết:
    1,951
    Nơi ở:
    ゲーマーの天国
    Bạn viết rõ cái Code đó ra luôn đc ko , cái này là Access nhưng mà Code trong SQL View dùng VB đc
     
  3. herolong

    herolong The Warrior of Light

    Tham gia ngày:
    25/4/04
    Bài viết:
    2,464
    Nơi ở:
    Cõi thần tiên
    .ko copy nội dung vào csdl rồi dùng code asp,php... để hiển thị ra thì làm cách nào nữa ông nói thử xem
     
  4. Bối Bối

    Bối Bối C O N T R A

    Tham gia ngày:
    20/2/06
    Bài viết:
    1,859
    Nơi ở:
    Ha Noi, Vietnam,
    Cái mình nói là viết trong VB cơ, chứ viết trong SQL view dùng VB thì mình ko biết là thế nào.
    trong VB thì mình mô tả thế này:

    cái productID của bạn là 1 dropdown combo box,nó có sự kiện SelectedIndexChanged ( khi thay đổi index được chọn - là các ID)
    nên muốn tự động điền thì code phải viết trong sự kiện này để sau khi mình chọn ID nó sẽ thực hiện.
    Trong VB thì đơn giản, vào tab code, bên General list chọn Combo box tương ứng (id combo box) bên Declarations chọn SelectedIndexChanged
    thì nó sẽ tự tạo ra private sub của sự kiện này, mình chỉ viết code giữa private sub và end sub thôi ( nếu bạn dùng VStudio thì chắc là biết cái này), trong này viết code:

    Lấy ID từ index được chọn
    sau đó truy vấn tới csdl từ id đó -> ra name
    điền name đó vào form
     
  5. PhiLongXP

    PhiLongXP Youtube Master Race

    Tham gia ngày:
    21/1/07
    Bài viết:
    82
    Nơi ở:
    Crystal World
    Cách đơn giản nhất cho newbie là dùng IFRAME cho đơn giản thế thôi vừa đúng theo yêu cầu vừa dễ thực hiện với newbie:>.
    Người ta hỏi câu đó là biết người chưa rành về mấy thứ đó (ASP, PHP...) mà ông bảo làm thế thì người ta chịu thua :D.
     
  6. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    cho hỏi chút, VB viết chương trình...nhưng đòi hỏi có 2 vòng lặp lồng vào nhau...tức là giả sử trong do while này có do while khác..có cách nào thống nhất chung 1 vòng lặp không
     
  7. kagome09

    kagome09 The Warrior of Light Lão Làng GVN

    Tham gia ngày:
    4/7/06
    Bài viết:
    2,062
    Nơi ở:
    Ho Chi Minh City
    [​IMG]
    Viền avatar này làm cách nào mà trông rõ và sáng thế :-/
     
  8. lonton_16

    lonton_16 Mega Man

    Tham gia ngày:
    20/9/07
    Bài viết:
    3,173
    Nơi ở:
    HP city
    Có thể cho biết đề bài ko? hay viết đoạn có 2 cái do while đó cũng được :D
     
  9. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    hỏi cái khác, thật sự ko biết làm sao
    VB viết chương trình:có bao nhiêu số chẵn nhỏ hơn n
    toi5 viết như vậy
    Mã:
    n = Int(txtn.Text)
    n = n - 1
    i = 0
    While n Mod 2 = 0
      i = i + 1
      n = n - 1
      Wend
    ...
    i là biến đếm, lúc đầu là 0 do chưa xét số n...
    sau này khi n chia hết cho 2 thì i tăng lên 1, tức là có 1 số chẵn bé hơn n, n giảm đi 1 đơn vị...
    xong lại quay lên xét n có chia hết cho 2 không...ở đây gặp 1 rắc rối là nếu n=5, thì 4=n-1 xét đúng, đến số 3 = n (tức 4)-1 thì cái này sai....khổ nỗi sai ở đây thì phải quay lại xét tiếp n-1...nhưng vòng lặp này xét điều kiện sai một cái là nó đi tiếp luôn....bởi thế làm hoài không ra....
    cho nên nếu n = 5 --> từ 0 đến 5 nó phải xét hơn, đằng này xét đến số 3 là nó không xét nữa mà qua luôn vòng lặp <while..Wend>
    Ai biết cách sửa không
     
  10. lonton_16

    lonton_16 Mega Man

    Tham gia ngày:
    20/9/07
    Bài viết:
    3,173
    Nơi ở:
    HP city
    Mã:
    n = Int(txtn.Text)
    n = n - 1
    i= n\2
    ...
    nếu tính 0 là số chẵn thì cộng thêm 1 vào i :|
     
  11. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    nếu tính 0 là số chẵn thì cho i =1 luôn, cần gì cộng thêm 1 vào i....
    à mà sửa vậy được không
    Mã:
    n = Int(txtn.Text)
    n = n - 1
    i = 0
    
    While n >= 0
    If n Mod 2 <> 0 Then
    n = n - 1
    End If
    While n Mod 2 = 0
      i = i + 1
      n = n - 1
      Wend
      Wend
    MsgBox "co " & i & " chu so chan nho hon n"
    edit 2:à sửa lại i=0 mới đúng
     
  12. lonton_16

    lonton_16 Mega Man

    Tham gia ngày:
    20/9/07
    Bài viết:
    3,173
    Nơi ở:
    HP city
    ko có VB ko test được nhưng đọc thì có vẻ đúng đó :D
    Tôi ko hiểu sao ông ko dùng 1 cách đơn giản hơn mà lại đi theo con đường rắc rối này:-?

    i ko là biếm đếm nên có cộng 1 vô cũng bằng thừa :p
     
  13. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    bắt làm theo thuật toán thầy cho mà 8-}...với lại tôi thấy cách này cũng đơn giản mà....xét chia hết cho 2 thì tính là 1 số....chứ chẳng lẽ xét ra số lẻ xong rồi trừ sao 8-}...mà có thể dùng quy tắc dãy số mà ra nhưng đòi hỏi làm thủ công nên chịu thôi
    code trên đã test bằng VB và ra....

    làm cái này để làm thêm cái khó hơn là xét số nguyên tố nhỏ hơn n , nếu một số nào bé hơn n là chẵn thì bỏ không xét, nhưng xét số 2 vào vì 2 chia hết cho 2(tức chính nó) và 1...cái này mới khó...đang làm...
     
  14. lonton_16

    lonton_16 Mega Man

    Tham gia ngày:
    20/9/07
    Bài viết:
    3,173
    Nơi ở:
    HP city
    Mã:
    for i = 1 to n
    s = 0
    for j = 1 to i
    if i mod j = o then s = s+1
    next j
    if s = 2 then kq= kq & " ,"  & j
    next i
     
  15. Double D

    Double D Mr & Ms Pac-Man

    Tham gia ngày:
    22/12/07
    Bài viết:
    278
    Nơi ở:
    Ác nhân cốc
    Sao không để: While i < n ? Vì vòng lặp chỉ chạy sau khi đk đúng nên i = n là đk sai => thoát vòng lặp.

    dim i,n,count as integer
    n = 1 số dc nhập;
    i = 0;
    count = 0;
    Khi i < n
    Nếu i mod 2 = 0
    count = count + 1;
    i = i + 1l
     
  16. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    oài, có hỏi mới thấy mình làm hơi bị dư thừa:'>...để chỉnh lại xem sao..
    à chỉnh đã ra...vậy áp dụng vô số nguyên tố vậy...
     
  17. LamYenVan

    LamYenVan Youtube Master Race

    Tham gia ngày:
    16/1/08
    Bài viết:
    2
    Xin giúp về FreePascal

    Ai giúp em giải bài này với, ngồi cả buổi cũng chưa làm được, đề bài như sau: Viết chương trình nhập từ bàn phím một xâu kí tự S và thông báo ra màn hình số lần xuất hiện của mỗi chữ cái tiếng Anh trong S (ko phân biệt chữ Hoa và thường)

    Ý tưởng của em như sau:
    _dùng 2 vòng lặp FOR (i:=1 to length(S)) và (j:=1 to length(S)) gòi dùng if (S = S[j]) để sử dụng biến dem:=dem + 1
    _dùng 1 câu IF (S[j] > S) and (S[j] = S) để tránh trường hợp nó đếm đến 2 lần

    Cái vướn nhất của em là làm sao cho nó xuất ra từng chữ với số lần xuất hiện tương ứng, chứ vầy thì hình như là nó xuất ra tổng số lần của tất cả các chữ thì phải
    Ai có thể giúp em hok. Cảm ơn mọi người trước ^_^
     
  18. Double D

    Double D Mr & Ms Pac-Man

    Tham gia ngày:
    22/12/07
    Bài viết:
    278
    Nơi ở:
    Ác nhân cốc


    Chữ cái tiếng Anh mà bạn nói thì mình hiểu nó là J, W, Z.
    Vậy thì cần 1 vòng lặp thui bạn àh, và 3 cái if ^^! sử dụng Select case hay Switch gì cũng dc.
    Tạo 3 biến đếm countJ, countW, countZ là int
    Cho i chạy từ 1 đến hết chuỗi
    Nếu s = 'j' thì countJ = countJ + 1
    Nếu s = 'w' thì countW = countW + 1
    Nếu s = 'z' thì countZ = countZ + 1
    Sau đó thì show: "so lan J xuat hien: " + countJ .... và cứ thế ^_^
    Không biết ý bạn có phải như thế này ko, nếu đúng thì ko phức tạp đến 2 vòng lặp đâu muh ^^!, sai thì nhớ nói nghen :D
     
  19. lonton_16

    lonton_16 Mega Man

    Tham gia ngày:
    20/9/07
    Bài viết:
    3,173
    Nơi ở:
    HP city
    @Double D : Ông quên chưa gán giá trị của sâu kí tự cho mảng rồi:D
    Mà cái này tui cũng ko nhớ nữa, khá lâu rồi ::(
     
  20. toi5

    toi5 Try Hard Moderator Lão Làng GVN

    Tham gia ngày:
    27/5/03
    Bài viết:
    6,866
    hỏi một cái:cũng trong VB
    đề nói phân tích một số ra thừa số nguyên tố...ví dụ như 420 = 2*2*3*5*7
    cái này thì biết làm nhưng làm sao hiển thị 420 ra một chuỗi các số là nguyên tố của nó...như trên ấy
    420 = 2*2*3*5*7
     

Chia sẻ trang này