Les_PURE
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Цитата: Ребята привет всем... Тут поднапрягли с лабораторными по ВБ.... Проблема в том что писать нада консольную прогу. Сам я программирую на ПХП, времени очень не хватает разбирать ВБ. СМогу скомпилировать и прокомментировать код самостоятельно )))) ГУРУ, выручайте.... Для вас это елементарно Вот задачи: 1)Сложение целых двуичных чисел 2)Определить максимальный елемент массива B(k), Bi < 0, K=<40. *(i - нижний индекс) 3)Дана квадратная матрица А размером Н на Н (Н=<10) из действительныйх чисел. Найти сумму елементов строки, в котором находится наибольший елемент. 4)Удалить из заданного текста пропуски и подсчитать длину получившесего текста Спасибо всем кто поможет )) Добавлено: Забыл указать что нада на VB .NET, хотя предпологаю что разници 0 будет | РЕШЕНИЕ ПЕРВОЙ ЗАДАЧИ: ------------------------------------ Module Module1 Dim n1 As Long Sub Main() Console.WriteLine("Введите число 1 ") n1 = Bin2Dec(Console.ReadLine) Console.WriteLine("Введите число 2 ") n1 = n1 + Bin2Dec(Console.ReadLine) Console.WriteLine(ConvertToBinary(n1)) Console.ReadLine() End Sub Function Bin2Dec(ByVal BinString As String) As Long Dim A As String Dim DecW As Long Dim i As Long A = BinString For i = 1 To Len(A) DecW = DecW * 2 DecW = DecW + Val(Mid(A, i, 1)) Next i Bin2Dec = DecW End Function Private Function ConvertToBinary(ByVal lngQuotient As Long) As String Dim strBinary As String Dim strReturn As String Dim i As Integer i = 100 Do If Len(strBinary) = 100 Then Exit Do strBinary = strBinary & "0" Loop Do While lngQuotient Mid(strBinary, i, 1) = CStr(lngQuotient Mod 2) lngQuotient = lngQuotient \ 2 i = i - 1 Loop strReturn = Right(strBinary, 100 - i) ConvertToBinary = strReturn End Function End Module -------------------------------------------------------- Добавлено: Rush Может поможешь мне решить 2ю,3ю,4ую задачки??? Добавлено: Решил сам, так как на руборде не дождешся.... 2я задчка Вторая задачка: Код: Module Module1 Dim B() As Long, K As Long, i As Long, max As Long Sub Main() Randomize() Do Console.WriteLine("Введите кол-во элеменов массива(0-40) - ") K = CLng(Console.ReadLine) If (K <= 40) And (K >= 0) Then ReDim B(K) Exit Do End If Loop Console.WriteLine("Элементы массива:") For i = 0 To UBound(B) B(i) = Rnd() * 999 Console.WriteLine("Элемент[" & i & "]=" & B(i)) If B(i) > max Then max = B(i) Next Console.WriteLine("Максимальный элемент массива - " & max) Console.ReadLine() 'Определить максимальный еле мент массива B(k), Bi < 0, K=<40. *(i - нижний индекс) End Sub 3я задачка: Module Module1 Dim A(,) As Long, N As Long, x As Long, y As Long, maxY As Long, max As Long, sum As Long Sub Main() Randomize() Do Console.WriteLine("Введите размер квадратной матрицы(0-10) - ") N = CLng(Console.ReadLine) If (N <= 10) And (N >= 0) Then ReDim A(N, N) Exit Do End If Loop Console.WriteLine("Элементы матрицы:") For y = 0 To N 'выбор строки For x = 0 To N 'выбор элемента строки A(x, y) = Rnd() * 999 If A(x, y) > max Then max = A(x, y) maxY = y End If Console.Write(" " & A(x, y)) Next Console.WriteLine() Next For x = 0 To N sum = sum + A(x, maxY) Next Console.WriteLine("Сумма элементов строки[" & maxY + 1 & "] = " & sum) Console.ReadLine() End Sub End Module End Module |