1. THÔNG BÁO TUYỂN ADMIN DIỄN ĐÀN 2013
    Tìm kiếm nhà trọ - Ở ghép
    THÔNG BÁO BÁN ÁO SPKT.NET CHO THÀNH VIÊN DIỄN ĐÀN


    HÃY TÌM KIẾM Ở ĐÂY TRƯỚC KHI ĐẶT CÂU HỎI
    {xen:phrase loading}

Đề thi Visual Basic 13-06-2011 + đáp án

Thảo luận trong 'Đề thi 2011' bắt đầu bởi trandang, 13 Tháng sáu 2011.

  1. trandang New Member

    Số bài viết: 43
    Đã được thích: 17
    Điểm thành tích: 0
    Đề thi môn Visual Basic lớp thường ngày 13-06-2011. Đề thi cuối kì 2 năm 2010-2011
    Download để xem ở link đính kèm
  2. trandang New Member

    Số bài viết: 43
    Đã được thích: 17
    Điểm thành tích: 0
    Đáp án Visual Basic 13-06-2011 (thường)

    Đáp án của bộ môn. (Nguồn: huutrung.net)
    [FONT=&quot]Đáp án:[/FONT]
    [FONT=&quot]Nếu các em viết không đúng cú pháp của hàm theo yêu cầu, các thầy trừ 0.25 điểm (có tất cả 3 câu như vậy)[/FONT]
    [FONT=&quot]Câu 4 nếu em nào dùng hàm Instr và Replace mà đúng, các thầy cho 1đ.[/FONT]
    [FONT=&quot] [/FONT]
    [FONT=&quot]Nếu tổng cộng toàn bài có phần lẻ là 0.25 sẽ được làm tròn thành 0.5[/FONT]
    [FONT=&quot] [/FONT]
    [FONT=&quot]Câu 1: Các thầy tự chấm nhé[/FONT]
    [FONT=&quot]Câu 2:[/FONT]
    [FONT=&quot]Function Factorial(n As Integer) As Double[/FONT]
    [FONT=&quot] Dim i As Integer[/FONT]
    [FONT=&quot] Dim result As Double[/FONT]
    [FONT=&quot] result = 1[/FONT]
    [FONT=&quot] For i = 2 To n[/FONT]
    [FONT=&quot] result = result * i[/FONT]
    [FONT=&quot] Next[/FONT]
    [FONT=&quot] Factorial = result[/FONT]
    [FONT=&quot]End Function[/FONT]
    [FONT=&quot]Function Combination(n As Integer, k As Integer) As Double[/FONT]
    [FONT=&quot] Combination = Factorial(n) / (Factorial(k) * Factorial(n - k))[/FONT]
    [FONT=&quot]End Function[/FONT]
    [FONT=&quot] [/FONT]
    [FONT=&quot]Câu 3:[/FONT]
    [FONT=&quot]Function Sum(x As Double) As Double[/FONT]
    [FONT=&quot] Dim s As Double, temp As Double, epsilon As Double[/FONT]
    [FONT=&quot] Dim n As Integer[/FONT]
    [FONT=&quot] epsilon = 0.0000000001[/FONT]
    [FONT=&quot] n = 0[/FONT]
    [FONT=&quot] s = 0[/FONT]
    [FONT=&quot] temp = 1[/FONT]
    [FONT=&quot] Do While Abs(temp) >= epsilon[/FONT]
    [FONT=&quot] s = s + temp[/FONT]
    [FONT=&quot] n = n + 1[/FONT]
    [FONT=&quot] temp = temp * x / n[/FONT]
    [FONT=&quot] Loop[/FONT]
    [FONT=&quot] Sum = s[/FONT]
    [FONT=&quot]End Function[/FONT]
    [FONT=&quot] [/FONT]
    [FONT=&quot]Câu 4:[/FONT]
    [FONT=&quot]Nếu em nào làm đúng yêu cầu (không dùng hàm xử lý chuỗi) nhưng khác đáp án, các thầy cho 2đ. [/FONT]
    [FONT=&quot] [/FONT]
    [FONT=&quot]Private Function NormalizationString(s As String) As String[/FONT]
    [FONT=&quot] Dim x As String, c As String[/FONT]
    [FONT=&quot] Dim L As Integer, i As Integer[/FONT]
    [FONT=&quot] Dim in_word As Boolean[/FONT]
    [FONT=&quot] L = Len(s)[/FONT]
    [FONT=&quot] x = ""[/FONT]
    [FONT=&quot] in_word = False[/FONT]
    [FONT=&quot] For i = 1 To L[/FONT]
    [FONT=&quot] c = Mid(s, i, 1)[/FONT]
    [FONT=&quot] If c <> " " Then[/FONT]
    [FONT=&quot] in_word = True[/FONT]
    [FONT=&quot] x = c[/FONT]
    [FONT=&quot] Exit For[/FONT]
    [FONT=&quot] End If[/FONT]
    [FONT=&quot] Next[/FONT]
    [FONT=&quot] If in_word Then[/FONT]
    [FONT=&quot] i = i + 1[/FONT]
    [FONT=&quot] Do While i <= L[/FONT]
    [FONT=&quot] c = Mid(s, i, 1)[/FONT]
    [FONT=&quot] If c <> " " Then[/FONT]
    [FONT=&quot] If in_word = False Then[/FONT]
    [FONT=&quot] x = x & " "[/FONT]
    [FONT=&quot] End If[/FONT]
    [FONT=&quot] in_word = True[/FONT]
    [FONT=&quot] x = x & c[/FONT]
    [FONT=&quot] Else[/FONT]
    [FONT=&quot] in_word = False[/FONT]
    [FONT=&quot] End If[/FONT]
    [FONT=&quot] i = i + 1[/FONT]
    [FONT=&quot] Loop[/FONT]
    [FONT=&quot] End If[/FONT]
    [FONT=&quot] NormalizationString = x[/FONT]
    [FONT=&quot]End Function[/FONT]
    [FONT=&quot]Câu 5:[/FONT]
    [FONT=&quot]Nếu em nào làm đúng yêu cầu mà không đúng đáp án cũng cho 2đ[/FONT]
    [FONT=&quot]Private Sub cmdEllipse_Click()[/FONT]
    [FONT=&quot] Dim Width As Integer, Height As Integer[/FONT]
    [FONT=&quot] Dim a As Single, b As Single, xc As Integer, yc As Integer[/FONT]
    [FONT=&quot] Dim x As Single, y As Single[/FONT]
    [FONT=&quot] picDoThi.Cls[/FONT]
    [FONT=&quot] Width = picDoThi.ScaleWidth[/FONT]
    [FONT=&quot] Height = picDoThi.ScaleHeight[/FONT]
    [FONT=&quot] picDoThi.DrawWidth = 1[/FONT]
    [FONT=&quot] xc = Width / 2[/FONT]
    [FONT=&quot] yc = Height / 2[/FONT]
    [FONT=&quot] a = Val(txtA.Text)[/FONT]
    [FONT=&quot] b = Val(txtB.Text)[/FONT]
    [FONT=&quot] x = -a[/FONT]
    [FONT=&quot] y = 0[/FONT]
    [FONT=&quot] picDoThi.PSet (xc + x, yc - y), RGB(255, 0, 0)[/FONT]
    [FONT=&quot] For x = -a To a[/FONT]
    [FONT=&quot] y = b / a * Sqr(a * a - x * x)[/FONT]
    [FONT=&quot] picDoThi.Line -(xc + x, yc - y), RGB(255, 0, 0)[/FONT]
    [FONT=&quot] Next[/FONT]
    [FONT=&quot] For x = a To -a Step -1[/FONT]
    [FONT=&quot] y = -b / a * Sqr(a * a - x * x)[/FONT]
    [FONT=&quot] picDoThi.Line -(xc + x, yc - y), RGB(255, 0, 0)[/FONT]
    [FONT=&quot] Next[/FONT]
    [FONT=&quot]End Sub[/FONT]
  3. Hpoe New Member

    Số bài viết: 4
    Đã được thích: 0
    Điểm thành tích: 0
    các bác có bí kiếp gì học VB chỉ với.hè nay mình trả nợ cho em nó ma run quá:-ss ,rớt phát nữa chắc điên luôn...
  4. congson_ckd New Member

    Số bài viết: 1
    Đã được thích: 0
    Điểm thành tích: 0
    các bác có bí kiếp gì học VB chỉ với.hè nay mình trả nợ cho em nó ma run quá:-ss ,rớt phát nữa chắc điên luôn...
    co gi goi 01229699633 nha
  5. hiepjack New Member

    Số bài viết: 7
    Đã được thích: 0
    Điểm thành tích: 0
    câu 4 làm thế này ngắn hơn
    Private Sub Command1_Click()
    Dim s, s1 As String
    Dim i As Integer
    s = InputBox ("Nhap s")
    For i = 1 To Len(s)
    If Mid(s, i, 1) <> " " And Mid(s, i + 1, 1) = " " Then
    s1 = s1 & Mid(s, i, 1) & " "
    ElseIf Mid(s, i, 1) <> " " And Mid(s, i + 1, 1) <> " " Then
    s1 = s1 & Mid(s, i, 1)
    End If
    Next i
    MsgBox s1
  6. HươngYên New Member

    Số bài viết: 40
    Đã được thích: 0
    Điểm thành tích: 0
  7. 10112074 New Member

    Số bài viết: 28
    Đã được thích: 0
    Điểm thành tích: 0
  8. niuton New Member

    Số bài viết: 9
    Đã được thích: 0
    Điểm thành tích: 1
    câu 5 không cần thiết phải làm ghê vậy đâu cậu. Mình làm thế này :
    Private Sub Command1_Click()
    Dim x, y As Double
    Dim a, b, tile As Double
    a = Val(Text1.Text)
    b = Val(Text2.Text)
    tile = a / b
    x = Picture1.ScaleWidth / 2
    y = Picture1.ScaleHeight / 2
    If a > x Or b > y Then
    MsgBox (" vuot qua khung hinh")
    Else
    Picture1.Circle (x, y), a, , , , 1 / tile
    End If
    End Sub
  9. peluclac Member

    Số bài viết: 106
    Đã được thích: 0
    Điểm thành tích: 16
  10. ngaybuonte New Member

    Số bài viết: 7
    Đã được thích: 0
    Điểm thành tích: 0
  11. ngaybuonte New Member

    Số bài viết: 7
    Đã được thích: 0
    Điểm thành tích: 0
    cãu ngan hon nua de hieu hon nua
    Private Sub cmdxoa_Click()
    Dim chuoi As String, i As Long, chuoiok As String
    chuoi = InputBox("nhap vao mot chuoi:")
    chuoiok = Trim(chuoi) 'xoa ky tu trang thua 2 ben chuoi
    For i = 1 To Len(chuoiok)
    chuoiok = Replace(chuoiok, Space(2), Space(1)) 'thay the 2 ky tu trang trong chuoi
    'chuoiok bang 1 ky tu trang
    Next
    MsgBox chuoiok
    End Sub
  12. nhok New Member

    Số bài viết: 22
    Đã được thích: 0
    Điểm thành tích: 1

Chia sẻ trang này