1. Tải bản cài đặt AutoIT mới nhất

    Chào Khách. Nếu bạn mới tham gia và chưa cài đặt AutoIT.
    Vui lòng vào topic trên để tải bản AutoIT mới nhất nhé
    Dismiss Notice
  2. Quy định và nội quy

    Chào Khách. Vui lòng đọc kỹ nội quy và quy định của diễn đàn
    Để tránh bị ban một cách đáng tiếc nhé!
    Dismiss Notice
  3. Hướng dẫn chèn mã AutoIT trong diễn đàn

    Chào Khách. Vui lòng xem qua bài viết này
    Để biết cách chèn mã AutoIT trong diễn đàn bạn nhé :)
    Dismiss Notice

Hướng dẫn Bài tập cơ bản dành cho những người mới bắt đầu

Thảo luận trong 'Hướng dẫn - Bài tập căn bản' bắt đầu bởi Jkey C Phong, 10/9/15.

  1. Jkey C Phong

    Jkey C Phong Thành viên hiểu biết
    • 83/90

    Tham gia ngày:
    7/9/15
    Bài viết:
    96
    Đã được thích:
    2,461
    Nơi ở:
    Thành phố Hồ Chí Minh
    - Update 24/02/2018: Update thêm bài 7 -> 13 + bài giải
    - Update 25/02/2018: Update bài tập cơ bản + nâng cao + bài giải


    Cơ bản:
    Đề: Cho 1 số là 100, yêu cầu chỉ sử dụng If...EndIf để kiểm tra 100 có nhỏ hơn 200 hay không! Nếu có thì hiện Msgbox.
    P.s: Nội dung Msgbox phải thể hiện được ý nghĩa của nó, chứ không phải nội dung bừa nhé

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Đề: Cho 1 số là 200, yêu cầu chỉ sử dụng If...Else...EndIf để kiểm tra 100 < x < 300 hay không! Nếu có thì xuất Msgbox, nếu không thì cũng xuất Msgbox
    P.s: Nội dung Msgbox phải thể hiện được ý nghĩa của nó, chứ không phải nội dung bừa nhé

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Đề: Cho một dãy số Random từ 0 đến 100000 ký tự, hãy sử dụng If...ElseIf...Else...EndIf để kiểm tra độ dài của dãy số, và đưa vào các trường hợp bên dưới:
    1. Độ dài của dãy số lớn hơn 2 và nhỏ hơn 5 thì hiện Msgbox
    2. Độ dài của dãy số lớn hơn 0 và nhỏ hơn 6 thì hiện Msgbox
    3. Độ dài của dãy số lớn hơn 1 và nhỏ hơn 3 thì hiện Msgbox
    Nếu cả 3 trường hợp trên đều không đúng thì xuất Msgbox.

    * Gợi ý:
    - Sử dụng Random để tạo một dãy số từ 0 - 100000
    - Kiểm tra độ dài của chuỗi bằng StringLen

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Đề: Tạo một vòng lặp vô hạn, trong vòng lặp ấy biến $VongLap sẽ được tăng giá trị lên 1 liên tục cho đến khi biến $VongLap = 100 thì thoát khỏi vòng lặp và hiện Msgbox.

    * Gợi ý: Sử dụng If...Then...EndIf.
    * Lưu ý: Chỉ thoát khỏi vòng lặp.

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    P.s: Mình sẽ update tiếp, bạn nào có bài tập đơn giản nào thì cứ up lên nhé, mình update vào luôn! Sau này sẽ soạn riêng ra file Word để anh em có thể download.

    Như tựa đề, bạn hãy viết một chương trình giải phương trình bậc hai với các dữ liệu sau: a = 1, b = -3, c = 2.

    * Gợi ý: Sử dụng Sqrt để tính căn bậc hai của một số

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Như tựa đề, bạn hãy viết một chương tìm ước chung lớn nhất của hai số nguyên dương M và N. Các bạn có thể dựa vào thuật toán gợi ý bên dưới để viết hoặc có thể sử dụng thuật toán khác (khuyến khích)

    - Bước 1: Nhập M, N
    - Bước 2: Nếu M = N, thì lấy giá trị chung này làm ước chung lớn nhất rồi chuyển đến bước 5
    - Bước 3: Nếu M > N, thì M <= M - N ngược lại N <= N - M
    - Bước 4: Quay lại bước 2
    - Bước 5: Đưa ra kết quả ước chung lớn nhất rồi kết thúc.

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Update: 24/02/2018

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Kiểm tra 1 số có phải là một số hoàn hảo hay không
    Lưu ý:
    - Vì đây là bài tập nên các bạn không được phép dựng mảng chứa số hoàn hảo để so sánh nhé, hãy tìm cách khác để làm
    - Tuy nhiên về sau nếu bạn muốn tối ưu cho tốc độ nhanh nhất có thể dựng mảng chứa số hoàn hảo để so sánh.
    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Bonus: Các bạn có thể tự động nâng độ khó của bài lên từ 2 chữ số lên 3, 4, 5, 6 chữ số. Và hãy làm sao để có thể xuất ra kết quả chuẩn nhất có thể nhé (mốt, lăm, ....).
    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Đề bài: Viết chương trình nhập vào tháng của một năm, cho biết số ngày của tháng đó. Nếu tháng nhập vào < 1 hoặc > 12 thì thông báo “Không tồn tại tháng này”
    Lưu ý: Có cả năm nhuận nhé

    a) Kiểm tra n có phải là số nguyên tố không?
    b) Kiểm tra n có phải là số chính phương không?
    c) Kiểm tra n có phải là số hoàn thiện không?

    a) Hiển thị trên n dòng, mỗi dòng có k dấu *, k tùy ý người dùng nhập.
    b) Hiển thị trên n dòng, dòng thứ i có i dấu *.
    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Update: 25/02/2018
    Bonus: Có thể thêm 1 giá trị max để in bảng cửu chương từ 1 -> max.
    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Nâng cao 1 chút:
    - Chú ý: Để tải bài giải và file text.txt các bạn download file RegExp.zip về nhé
    - Bên trong đã được phân chia theo folder từng bài bao gồm cả bài giải và file text
    - Ngoài ra RegExp có muốn vàn cách làm khác nhau để có thể match được đúng ý. Nên đừng lo lắng khi bạn so sánh với bài giải nó khác nhé. Chỉ cần đúng kết quả như đề bài cho là được.

    Bài 01: Kiểm tra trong file RegExp01.txt có tồn tại chữ A hay không
    Bài 02: Lấy ra Hello và XinChao trong file RegExp02.txt
    Bài 03: Lấy ra đoạn hội thoại trong file RegExp03.txt
    Không lấy <!-- --> --!>
    Không lấy 2 ký tự khoảng trắng ở đầu vào cuối
    ở mỗi dòng hội thoại
    Bài 04: Lấy ID trong url của youtube.
    Lưu ý: ID là một chuỗi có độ dài là 11 bao gồm ký tự HOA thường số _ -
    Bài 05: Lấy tất cả các số trong file RegExp05.txt
    Bài 06: Lấy các giá trị: cat. 896. ?=+.
    Bỏ qua abc1
    Bài 07: Lấy can man fan trong file RegExp07.txt. Còn lại thì bỏ qua
    Bài 08: Lấy *og trong file RegExp08.txt, nếu * là chữ cái b hoặc B thì không lấy
    Bài 09: Lấy Ana Bob Cpc trong file RegExp09.txt
    Bài 10: Lấy tất cả các chuỗi có độ dài >= 6, những chuỗi có độ dài < 6 thì bỏ qua
     

    Các file đính kèm:

    Chỉnh sửa cuối: 25/2/18
    vhungcc, thi99, Nguyệt and 824 others like this.
  2. Phú Chuối

    Phú Chuối Thành viên mới
    • 3/6

    Tham gia ngày:
    6/9/15
    Bài viết:
    6
    Đã được thích:
    13
    Làm sao ghi nội dung bị ẩn được thế thớt ?
     
  3. Vĩ Kha AutoIT

    Vĩ Kha AutoIT Trial Moderator Trial Moderator
    • 8/11

    Tham gia ngày:
    7/9/15
    Bài viết:
    39
    Đã được thích:
    97
    Uầy. Anh ra bài tập về mấy cái hàm và cho mọi người comment đáp án đuê ^^!
     
  4. Jkey C Phong

    Jkey C Phong Thành viên hiểu biết
    • 83/90

    Tham gia ngày:
    7/9/15
    Bài viết:
    96
    Đã được thích:
    2,461
    Nơi ở:
    Thành phố Hồ Chí Minh
    Như tựa đề, bạn hãy viết một chương trình giải phương trình bậc hai với các dữ liệu sau: a = 1, b = -3, c = 2.

    * Gợi ý: Sử dụng Sqrt để tính căn bậc hai của một số

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **

    Như tựa đề, bạn hãy viết một chương tìm ước chung lớn nhất của hai số nguyên dương M và N. Các bạn có thể dựa vào thuật toán gợi ý bên dưới để viết hoặc có thể sử dụng thuật toán khác (khuyến khích)

    - Bước 1: Nhập M, N
    - Bước 2: Nếu M = N, thì lấy giá trị chung này làm ước chung lớn nhất rồi chuyển đến bước 5
    - Bước 3: Nếu M > N, thì M <= M - N ngược lại N <= N - M
    - Bước 4: Quay lại bước 2
    - Bước 5: Đưa ra kết quả ước chung lớn nhất rồi kết thúc.

    Nội dung bị ẩn:
    ** Nội dung ẩn: Bạn phải nhấn 'Like' trước khi bạn có thể xem các dữ liệu ẩn chứa ở đây. **
     
    Chỉnh sửa cuối: 18/10/15
  5. lktd.96

    lktd.96 Thành viên mới
    • 1/6

    Tham gia ngày:
    8/12/15
    Bài viết:
    2
    Đã được thích:
    3
    Anh update tiếp một số bài tập cho newbie như em tập tành với :(:(:(
     
    kamsamita1 and Phan Dong like this.
  6. NewautoIt

    NewautoIt Thành viên mới
    • 1/6

    Tham gia ngày:
    17/1/16
    Bài viết:
    4
    Đã được thích:
    7
    Thank.
     
    kamsamita1 and Phan Dong like this.
  7. ღ๖ۣۜA ๖ۣۜSửuღ

    ღ๖ۣۜA ๖ۣۜSửuღ Thành viên mới
    • 3/6

    Tham gia ngày:
    12/1/16
    Bài viết:
    2
    Đã được thích:
    4
    thấy mấy bài basic mà ko thấy mấy newbie bàn luận gì nhỉ,? làm xong im luôn ko bt tạch không :):):):)
     
    kamsamita1 and Phan Dong like this.
  8. Neo Eko

    Neo Eko Thành viên mới
    • 3/6

    Tham gia ngày:
    14/11/15
    Bài viết:
    10
    Đã được thích:
    12
    cảm ơn ạ, bài 5 + bài 6 là không biết làm phải xem giải :v. ad up tiếp đi ạ . Hóng ^^
     
    kamsamita1 and Phan Dong like this.
  9. nguoihn83

    nguoihn83 Thành viên mới
    • 1/6

    Tham gia ngày:
    29/2/16
    Bài viết:
    1
    Đã được thích:
    1
    Thank pro.
     
    kamsamita1 thích bài này.
  10. Tuấn ANh

    Tuấn ANh Thành viên mới
    • 1/6

    Tham gia ngày:
    22/2/16
    Bài viết:
    1
    Đã được thích:
    1
    sao em làm đúng mà không được chữ mgs vậy anh
     
    kamsamita1 thích bài này.
  11. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    mấy bác pro cho thêm bài tập đi ạ
     
  12. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Không dùng hàm Sqrt, hãy viết chương trình tính căn bậc 2 của 1 số dương :v
     
  13. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    :v trong autoit còn hàm nào khác tính căn bậc 2 không bác.
     
  14. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Hem :v . Câu hỏi tưởng chừng đơn giản như đang giỡn mà cũng không dễ đâu nhể :))
     
  15. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    :D câu này e chịu bác ơi, bác có bài tâp nào khác e xin với
     
  16. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Mã (AutoIt):

    MsgBox(0, 0, _CanBac2(3))
    Func _CanBac2($S)
        $so_mu = Floor(StringLen($S) / 2) - 1
        If $S / 10 ^ (2 * $so_mu) < 10 Then
            $x = 2 * 10 ^ $so_mu
        Else
            $x = 6 * 10 ^ $so_mu
        EndIf
        For $i = 1 To 1000
            $y = 0.5 * ($x + $S / $x)
            $x = $y
        Next
        Return $y
    EndFunc
     
    Một cái căn bậc 2 đã phải dùng Hàm điều kiện, vòng lặp rồi, không tệ phải không, kaka :))
    Bài tập thì chả cần đi hỏi làm gì, thým có thể tự nghĩ ra 1 câu hỏi đơn giản nào đó rồi tự viết thử ;))
     
    Phi Long and meocon like this.
  17. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    e học dốt toán, nhìn ko hiểu công thức lắm bác ạ :D Floor là gì e cũng chưa biết :D
     
  18. Huân Hoàng

    Huân Hoàng Administrator Thành viên BQT Administrator Super Moderator
    • 93/113

    Tham gia ngày:
    29/9/15
    Bài viết:
    642
    Đã được thích:
    1,181
    Floor là làm tròn xuống, không cần biết phần thập phân có lớn hơn .5 hơn không
    Ceiling là làm tròn lên, không cần biết phần thập phân có nhỏ hơn .5 hay không
    Int hoặc Round thì lớn hơn .5 thì làm tròn lên, bé hơn .5 thì làm tròn xuống
    Mấy hàm này khá hữu dụng trong vài trường hợp :D:D
     
  19. emga9xkc

    emga9xkc Thành viên năng động
    • 43/45

    Tham gia ngày:
    7/3/16
    Bài viết:
    232
    Đã được thích:
    205
    :D tks bác chỉ giáo ạ
     
  20. huy vu

    huy vu Thành viên mới
    • 1/6

    Tham gia ngày:
    2/7/16
    Bài viết:
    1
    Đã được thích:
    2
    có ai giải thích giúp em đoạn

    Mã (AutoIt):
    MsgBox(0, BinaryToString("0x4A6B657920432050686F6E67202D2048E1BB8D63204175746F4974",4), '...')
    ở bài 5 được không ạ :(
     
    kamsamita1 and tsaker like this.

Chia sẻ trang này

Đang tải...