Главная страница
Навигация по странице:

  • Примеры выполнения заданий

  • SUB lab7()

  • Next i

  • .font.name=”Times New Roman”

  • ЛАБОРАТОРНАЯ РАБОТА № 9. « Обработка двумерных массивов в

  • ЛАБОРАТОРНАЯ РАБОТА №10. « Обработка символьных данных в

  • Е. А. Рябухина, О. А. Гущина, Д. А. Губанов, Д. В. Емельянов


    Скачать 3.08 Mb.
    НазваниеЕ. А. Рябухина, О. А. Гущина, Д. А. Губанов, Д. В. Емельянов
    Дата17.05.2023
    Размер3.08 Mb.
    Формат файлаdoc
    Имя файлаVBA.doc
    ТипДокументы
    #1138184
    страница8 из 11
    1   2   3   4   5   6   7   8   9   10   11

    ЛАБОРАТОРНАЯ РАБОТА № 7.

    «Формирование матриц»

    Цель работы: разработка, отладка и тестирование программ для ввода/вывода и обработки мас­сивов.
    Задание: сформировать элементы массива А размерностью 5×5 по формулам, указанным в табл. 14.

    Таблица 14

    Вариант

    Формула




    Вариант

    Формула

    1

    Aij = i+ j.




    9



    2






    10

    Aij = 2(i j).


    3






    11



    4






    12



    5






    13



    6






    14




    7






    15



    8






    16




    Примеры выполнения заданий

    Условие: сформировать элементы массива А размерностью 5×5:



    Исходя из поставленных условий массив имеет вид:











































































































    Программныйкод:

    SUB lab7()

    Dim A(1 To 5,1 To 5) As Integer, i As Byte, j As Byte

    For i=1 To 5

    For j=1 To 5

    If i +1< j

    Then A(i,j)=3*j

    Else

    If i+1=j Then A(i,j)=0 Else A(i,j)=i

    Next j

    Next i

    For i=1 To 5

    For j=1 To 5

    Cells(i,j)=A(i,j)

    Next j

    Next i

    Activesheet.Range(“A1:E5”).select

    With selection

    .Font.bold=true

    .Font.italic=true

    .font.size=14

    .font.name=”Times New Roman”

    .borders.color=RGB(100,0,100)

    End With

    End SUB
    ЛАБОРАТОРНАЯ РАБОТА № 8.

    «Обработка одномерных массивов в VBA»
    Цель работы: разработка, отладка и тестирование программ для ввода/вывода и обработки одномерных мас­сивов.
    Задания:

    1. Вставить в упорядоченный по возрастанию массив Х(10) новый элемент с сохранением упорядоченности.

    2. Определить, является ли массив Х(10) упорядоченным по убыванию.

    3. Определить, является ли массив Х(10) арифметической прогрессией.

    4. Определить, является ли массив Х(6) геометрической прогрессией.

    5. Поменять местами максимальный и минимальный элементы массива Х(10).

    6. Подсчитать сумму элементов массива Х(10), последующих за максимальным элементом.

    7. Переписать массив Х(10) следующим образом: сначала все положительные в порядке следования, затем все отрицательные в порядке следования.

    8. Переписать массив Х(10) следующим образом: сначала все четные в порядке следования, затем все нечетные в порядке следования.

    9. Из всех нечетных элементов массива Х(100) вычесть 1, а четные удвоить.

    10. Подсчитать количество элементов массива Х(10), отклоняющихся от среднего не более чем на 0.5.

    11. В массиве Х(10) поменять элементы попарно: первый и второй, третий и четвертый и т.д.

    12. Определить, все ли элементы массива Х(10) различны.

    13. Верно ли, что сумма положительных элементов массива Х(10) меньше суммы квадратов отрицательных элементов.

    14. Определить, все ли элементы массива Х(10) попарно различны.

    15. Подсчитать сумму элементов массива Х(10), расположенных между его минимальным и максимальным элементами.

    16. Разделить отрицательные элементы массива Х(10) на сумму его положительных элементов.

    17. Записать массив Х(10) в обратном порядке.

    18. Заменить в массиве Х(10) элементы, кратные числу k, на предыдущий элемент.

    19. Опредеить максимальную разницу между двумя соседними элементами массива Х(10).

    20. Заменить элементы массива Х(10), большие числа А, на полусумму соседних элементов.

    21. Определить, является ли массив Х(10) знакочередующимся.

    22. Определить, является ли массив Х(10) симметричным по значению элементов.

    23. Из массива Х(10) сформировать новый массив Y(10), сдвинув элементы массива Х вправо на k элементов.

    24. Пусть элементы массива Х(10) представляют собой последовательность цифр целого двоичного числа (т.е. равны либо 0, либо 1). Получить эквивалент этого числа в десятичной системе по формуле: .

    25. Верно ли, что в массиве Х(10) последовательно чередуются нечетные и четные числа.


    ЛАБОРАТОРНАЯ РАБОТА № 9.

    «Обработка двумерных массивов в VBA»
    Цель работы: разработка, отладка и тестирование программ для ввода/вывода и обработки двумерных мас­сивов.
    Задания:

    1. Заменить отрицательные элементы под главной диагональю матрицы А(5x5) их квадратами (матрицу А считать целочисленной).

    2. Разделить элементы матрицы А(5x5), лежащие в интервале [3; 7] на сумму элементов главной диагонали.

    3. Поменять местами строки с минимальным и максимальным элементами матрицы А(5x5) (матрицу А считать целочисленной).

    4. Подсчитать количество строк матрицы А(5x5), не содержащих отрицательные элементы (матрицу А считать целочисленной).

    5. Определить, является ли матрица А(5x5) симметричной относительно главной диагонали (матрицу А считать целочисленной).

    6. В матрице А(5x5) заменить элементы, лежащие в интервале [1; 5] на симметричные им относительно главной диагонали (матрицу А считать целочисленной, определить ее таким образом, чтобы два симметричных элемента не относились оба к указанному интервалу).

    7. Верно ли, что сумма элементов четных строк матрицы А(6x6) в два раза больше суммы элементов нечетных строк. Матрицу А считать целочисленной.

    8. Подсчитать сумму элементов главной и побочной диагоналей матрицы А(6x6) . Матрицу А считать целочисленной.

    9. Верно ли, что минимальный и максимальный элемент матрицы А(5x5) находятся в одном столбце или одной строке. Матрицу А считать целочисленной.

    10. Подсчитать количество строк матрицы А(5x5), являющихся арифметической прогрессией. Матрицу А считать целочисленной).

    11. Поменять местами минимальный и максимальный элементы матрицы А(5x5).

    12. Заменить в матрице А(5x5) элементы, лежащие в интервале [2; 6] на максимальный элемент предшествующей строки (первая строка остается без изменений!).

    13. Определить максимальный из минимальных элементов каждого столбца матрицы А(5x5).

    14. В матрице А(5x5) поменять местами строки с максимальной и минимальной суммами элементов.

    15. Исключить из матрицы А(6x4) строку с минимальным элементом.

    16. Вставить в матрицу А(5x5) строку, состоящую из нулей, после строки с максимальным элементом.

    17. Подсчитать количество строк матрицы А(5x5), начинающихся с нуля или заканчивающихся нулем.

    18. Разделить положительные элементы матрицы А(5x5) на максимальный элемент под ее главной диагональю.

    19. Верно ли, что максимальный и минимальный элементы матрицы А(5x5) расположены по разные стороны ее главной диагонали.

    20. Верно ли, что сумма средних арифметических положительных элементов каждой строки матрицы в два раза больше ее максимального элемента.

    21. Верно ли, что сумма положительных элементов над главной диагональю матрицы А(5x5) равна сумме квадратов отрицательных элементов под ее главной диагональю.

    22. Вставить в матрицу А(5x5) строку, содержащую первые элементы каждой строки, после строки с номером k.


    ЛАБОРАТОРНАЯ РАБОТА №10.

    «Обработка символьных данных в VBA»
    Цель работы: изучение способов обработки текстовой инфор­мации в алгоритмических языках программирования и разработка программ на VBA.
    Задания:

    Вариант 1.

    1. Переписать текстовую константу следующим образом: сначала все буквы, затем все цифры.

    2. Верно ли, что в текстовой константе больше символов «а», чем «б».

    3. Заменить в текстовой константе все символы «а» на символ «*», а символы «в» удвоить.


    Вариант 2.

    1. Заменить в текстовой константе все символы «*» их порядковыми номерами.

    2. Определить, все ли символы текстовой константы различны.

    3. Переписать текстовую константу следующим образом: сначала все символы на четных местах, затем на нечетных.


    Вариант 3.

    1. Заменить в текстовой константе все символы, предшествующие символу «*» на символы «%».

    2. Верно ли, что в текстовой константе все символы попарно различны.

    3. Переписать текстовую константу следующим образом: удвоить все цифры на четных местах и заменить все знаки «*» на нечетных местах их порядковыми номерами.


    Вариант 4.

    1. Исключить из текстовой константы все символы «а».

    2. Определить, является ли текстовая константа палиндромом (перевертышем).

    3. Удвоить в текстовой константе все цифры от 3 до 7 (по значению).


    Вариант 5.

    1. Разделить текстовую константу на группы по три символа, отделяя каждую знаком «%».

    2. Верно ли, что сумма цифр, входящих в текстовую константу, кратна числу р.

    3. Заменить в текстовой константе все прописные латинские буквы (коды 65-90) соответствующими строчными (коды 97-111).


    Вариант 6.

    1. Дана текстовая константа и натуральное число N. Если длина текстовой константы меньше N, то дописать к ней справа соответствующее количество нулей, в противном случае обрезать тестовую константу с правого конца.

    2. Заменить все цифры текстовой константы латинскими буквами A-J соответственно.

    3. Верно ли, что в текстовой константе все цифры расположены по убыванию.


    Вариант 7.

    1. Можно ли из тестовой константы S1 составить текстовую константу S2 меньшей длины (все символы в каждой из текстовых констант различны).

    2. Поменять в текстовой константе символы попарно. Если длина ее нечетна, последний символ оставить без изменения.

    3. Переписать текстовую константу следующим образом: после каждой цифры вставить знак “*”.


    Вариант 8.

    1. Верно ли, что в текстовой константе S1 в два раза больше цифр, чем в текстовой константе S2 букв.

    2. Вычислить сумму всех порядковых номеров символов «*», входящих в текстовую константу.

    3. Определить, упорядочены ли латинские буквы, входящие в состав текстовой константы, по алфавиту (константа содержит не более 26 букв).


    Вариант 9.

    1. Определить, есть ли в текстовой константе повторяющиеся цифры.

    2. Заменить в текстовой переменной все символы «а» предшествующими им.

    3. Удвоить в текстовой переменной все символы «%».


    Вариант 10.

    1. Даны две текстовые константы. Сформировать новую константу из символов, одинаковых в обеих константах.

    2. Записать текстовую константу в обратном порядке.

    3. Заменить в текстовой константе пару одинаковых символов, расположенных рядом, знаком «*».
    Вариант 11.

    1. Удалить из текстовой константы все знаки «+», за которыми следует цифра.

    2. Тестовая константа начинается с некоторого количества цифр, за которыми следует некоторое количество букв. Верно ли, что число, расположенное в начале константы больше количества последующих букв?


    Вариант 12.

    1. Преобразовать число, записанное в двоичной системе, в десятичное число по формуле



    где k – количество цифр в числе (цифры нумеруются справа налево).

    1. Удвоить в текстовой константе все символы «а».


    Вариант 13.

    1. Дана текстовая константа и натуральные числа n и m (n<m). Все символы, начиная с n и заканчивая m заменить их порядковыми номерами.

    2. Записать в алфавитном порядке все латинские прописные буквы, входящие в состав заданной текстовой константы.

    3. Текстовая константа содержит не более 10 слов (групп символов, разделенных одним пробелом). Определить слово максимальной длины.


    Вариант 14.

    1. Переписать текстовую константу следующим образом: сначала все цифры, затем все буквы, а остальные символы удвоить.

    2. Даны три символьных константы, имеющие вид натуральных не более чем 5-значных чисел. Напечатать символ, код которого равен сумме цифр всех констант. Если код превышает 256, то код символа равен остатку от деления на 256. Если полученный результат <32, то в качестве результата напечатать «*****».

    3. Верно ли, что в текстовой константе содержится 5 цифр подряд.


    Вариант 15.

    1. Удвоить в текстовой константе все цифры (по значению). Если результат больше 10, то взять лишь последнюю цифру.

    2. Дана текстовая константа и число n. Переписать текстовую константу следующим образом: an+1…am a1 a2 a3…an. Здесь m – длина константы.

    3. Удвоить в текстовой константе все символы, последующие за символом «*».


    Вариант 16.

    1. Переписать текстовую константу следующим образом: сначала все буква, затем все цифры.

    2. Определить, все ли символы текстовой константы различны.

    3. Определить в текстовой константе максимальное количество цифр, записанных подряд.


    Вариант 17.

    1. Исключить из текстовой константы все вхождения символов «ав».

    2. Верно ли, что сумма цифр, входящих в текстовую константу, кратна числу р.

    3. Заменить все цифры тестовой константы латинскими буквами A-J соответственно.


    Вариант 18.

    1. Дана текстовая константа. Определить, можно ли ее использовать в качестве имени переменной (см. правила имен переменных в Паскале).

    2. Вычислить сумму всех порядковых номеров символов «*», входящих в текстовую константу.

    3. Удвоить в текстовой переменной все символы «&».


    Вариант 19.

    1. Текстовая константа состоит из 10 символов, три из которых одинаковые. Заменить эти символы знаком «*».

    2. Заменить в текстовой константе латинские буквы их кодами в числовом выражении.

    3. Записать текстовую константу в обратном порядке.
    Вариант 20.

    1. Удвоить в текстовой константе все цифры (по значению). Если результат больше 10, то взять лишь последнюю цифру.

    2. Дана текстовая константа и число n. Переписать текстовую константу следующим образом: an+1…am a1 a2 a3…an. Здесь m – длина константы.

    3. Удвоить в текстовой константе все символы, последующие за символом «*».
    1   2   3   4   5   6   7   8   9   10   11


    написать администратору сайта