Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.05.2019, 16:27   #1
SkyGir
Пользователь
 
Регистрация: 24.05.2019
Сообщений: 31
По умолчанию [VBA] Сформировать матрицу, у которой первая строка – произвольные числа, вторая строка - квадраты этих чисел, третья строка - кубы этих чисел и т.д.

Здравствуйте, пожалуйста помогите разобраться с задачей
Код:
Option Explicit On
Option Base 1
Sub Массив()
    Dim mass() As Integer, i As Integer, j As Integer, str As String, n As Integer, t As Integer

    n = InputBox("Введите количество элементов массива", "Определение размера массива")
ReDim mass(1 To n, 1 To n) As Integer
    Randomize()
    For i = 1 To n
        For j = 1 To n
            mass(i, j) = Int(10 * Rnd + 1)
            str = str & mass(i, j) & "   "
        Next j
        str = str & Chr(13)
    Next i
    For i = 1 To n
        t = 1
        For j = 1 To n
            If i = 1 Then
                mass(i, j) = mass(i, j) ^ (t)
            Else
                mass(i, j) = mass(i, j) ^ (t + 1)
            End If
        Next j
    Next i
    MsgBox("Массив: " & str)
End Sub
SkyGir вне форума Ответить с цитированием
Старый 24.05.2019, 16:41   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
ReDim mass(1 To n, 1 To n) As Integer
    Randomize()
    For j = 1 To n
            mass(1, j) = Int(10 * Rnd + 1)
    Next j
    For i = 2 To n
        For j = 1 To n
            mass(i, j) =  mass(1, j) ^ (j+1)
        Next j
    Next i
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.05.2019, 16:43   #3
SkyGir
Пользователь
 
Регистрация: 24.05.2019
Сообщений: 31
По умолчанию

Спасибо, сейчас будем внедрять. Пока не работает первую строчку создает, а остальные нулевые
Код:
Option Explicit
Option Base 1
Sub Ìàññèâ()
    Dim mass() As Integer, i As Integer, j As Integer, str As String, n As Integer
    
    n = InputBox("Ââåäèòå êîëè÷åñòâî ýëåìåíòîâ ìàññèâà", "Îïðåäåëåíèå ðàçìåðà ìàññèâà")
ReDim mass(1 To n, 1 To n) As Integer
    Randomize
    For i = 1 To n
        For j = 1 To n
            mass(1, j) = Int(10 * Rnd + 1)
            str = str & mass(i, j) & "   "
        Next j
        str = str & Chr(13)
    Next i
For i = 2 To n
            For j = 1 To n
            mass(i, j) = mass(1, j) ^ (j + 1)
        Next j
    Next i
    MsgBox ("Ìàññèâ: " & str)
End Sub

Последний раз редактировалось SkyGir; 24.05.2019 в 16:54.
SkyGir вне форума Ответить с цитированием
Старый 24.05.2019, 16:57   #4
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
Сообщение от SkyGir Посмотреть сообщение
Спасибо, сейчас будем внедрять
простите, куда?


Цитата:
Сообщение от Serge_Bliznykov Посмотреть сообщение
Код:
mass(i, j) =  mass(1, j) ^ (j+1)
тут ошибка.
должно быть
Код:
            mass(i, j) = mass(1, j) ^ i
ну и полностью код я бы так записал:
Код:
Sub Массив()
    Dim mass() As Double, i As Integer, j As Integer, s$, n As Integer

    n = InputBox("Введите количество элементов массива", "Определение размера массива")


    ReDim mass(1 To n, 1 To n) As Double
    Randomize
    For j = 1 To n
            mass(1, j) = Int(10 * Rnd + 1)
    Next j
    For i = 2 To n
        For j = 1 To n
            mass(i, j) = mass(1, j) ^ i
        Next j
    Next i

    s = ""
    For i = 1 To n
        For j = 1 To n
            s = s & mass(i, j) & "   "
        Next j
        s = s & Chr(13)
    Next i
    MsgBox ("Массив: " & Chr(13) & s)
End Sub
Serge_Bliznykov вне форума Ответить с цитированием
Старый 24.05.2019, 17:01   #5
SkyGir
Пользователь
 
Регистрация: 24.05.2019
Сообщений: 31
По умолчанию

Ваш код в мой корявый кодЕще раз человеческое спасибо
SkyGir вне форума Ответить с цитированием
Старый 24.05.2019, 17:04   #6
SkyGir
Пользователь
 
Регистрация: 24.05.2019
Сообщений: 31
По умолчанию

Ваш полный код отлично работает
SkyGir вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сформировать квадратную матрицу, каждая строка которой преlставляет собой заданный массив сдвинутый на 1 элемент вправо harinal Общие вопросы C/C++ 4 16.09.2018 14:56
Составьте программу,заменяющую меньшее из трех данных чисел произведением этих чисел Делька Помощь студентам 1 24.09.2015 17:21
Среди заданных чисел найти отрицательные и вывести на экран модули этих чисел reapple Общие вопросы Delphi 4 20.04.2015 11:47
Задача по Делфи - С клавиатуры вводят 3 числа.Сколько из этих чисел не находятся в диапазоне [10;25]? Bracho1994 Помощь студентам 14 11.04.2013 01:00
С клавиатуры вводятся числа K, L, M. Найти максимальное из этих чисел.(язык C++) yunin.aleksei2012 Помощь студентам 9 17.03.2012 12:32