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

Primer2_1_Задачи. Введение в программирование на vba



Скачать 67.5 Kb.
Название Введение в программирование на vba
Анкор Primer2_1_Задачи.doc
Дата 02.12.2017
Размер 67.5 Kb.
Формат файла doc
Имя файла Primer2_1_Задачи.doc
Тип Задача
#11584

Лабораторное задание №2_1

Тема: Введение в программирование на VBA

Цель занятия. Ознакомиться со средой разработчика VBA. Научиться записывать и отлаживать тексты программ на VisualBasic. Ознакомиться с концепцией данных VisualBasic и операторами передачи управленияIf и Select Case. Ознакомиться с некоторыми функциями обработки данных.

Копируйте данный документ (файл Primer2_1_Задачи.doc) в собственную папку и сохраните как файл с поддержкой макросов.

Включите вкладку Разработчик на ленте (включается в параметрах Word), перейдите в среду разработчика Visual Basic.

Дальнейшие задания выполняются в среде визуального редактирования VBA записью процедур обработки данных Sub…Exit Sub. Запуск процедуры выполняется по кнопке Run Sub .

Задание №1. Тема: Оператор присваивания, типы данных

Задача 1. Прочтите пример Number() «Из числа в строку». Введенное дробное число, например, 12.33, переводится в число прописью: «12 руб. 33 коп.». При этом с использованием операции конкатенации (знак + или &) формируется строка, которая выводится в окно сообщений.

Указание 1. Окно ввода InputBox возвращает строку. Для перевода из числа в строку используется функция Str(число), для обратного перевода используется функция Val(строка).

Указание 2. Для отделения целой части числа от дробной используется функция Int.

Задача 2. Запишите процедуру решения задачи для пересчета указанного значения веса из фунтов в килограммы (1 фунт = 405,9 грамма).

Указание: можно использовать тип Single или Double.

Задание 3. Запишите процедуру решения задачи: определить, как наименьшим числом купюр можно выдать сумму К рублей (K<9999), если есть купюры достоинством 1000 руб., 500 руб., 100 руб., 50 руб. и 10 руб. Оставшуюся мелочь выдать рублями.

Указание. Введенная сумма, это целое число. Операция \ – деление нацело, Mod – остаток от деления. Результат формируется как длинная строка, чтобы в окне вывода каждое значение было выведено в отдельной строке, используется константа vbCr – переход на новую строку.

Задание №2. Тема: Условный оператор

Задача 1. Ввести дату. По значению даты определить, является ли год високосным.

Указание. Использовать тип Date. Как целое значение номер года выделит функция Year(дата).

Задача 2. Ввести дату. По значению даты определить время года.

Указание. Как целое значение номер месяца вернет функция Month(дата).

Задача 3. Генерировать пример на сложение двух чисел, заданных в диапазоне от 1 до 100. Ввести ответ и проверить его правильность. Вывести сообщение «Правильно» или «Неправильно».

Указание. Функция Rnd() возвращает случайное число типа Single в диапазоне от 0 до 1. Это значение можно присвоить переменной целого типа. Для повышения значения результат умножается на константу, например: Rnd()*100. Для инициализации генератора случайных чисел в код включается директива Randomize.

Задание №3. Тема: Оператор Select Case

Задача 1. Прочтите пример My_Case() «Запись числа прописью». Обратите внимание на использование функций Val() и Str().

Задание. Измените код таким образом, чтобы введенное значение не имело бы ограничений. Выбор по-прежнему осуществляется оператором Case, но анализируется остаток от деления числа на 10. Так, для остатка, равного 1, наименование «рубль», для остатка, равного 2,3,4, наименование «рубля», для остатка, равного 5, 6, 7, 8, 9, 0 наименование «рублей». Исключением являются числа второго десятка – 11 рублей, 12 рублей, 13 рублей, 14 рублей.

Задача 2. Результат сдачи ЕГЭ представлен как числовое значение в диапазоне от 0 до 100 баллов. Требуется ввести значение в баллах (контролировать при вводе), и пересчитать в пятибалльную систему.

Задание №4. Тема: Нестандартные задачи

Задача 1. Летит стадо гусей, а навстречу ворона. Ворона говорит: «Как много вас, гусей, наверное, N?», на что вожак отвечает «Если взять нас столько, и еще пол столько, и четверть столько, то будет N». Сколько же гусей в стае? Иметь в виду, что гуси и вороны считают не очень хорошо, и N не может быть любым.

Задача 2. Одна жемчужина диаметром d стоит Cost рублей. Найти сколько будет стоить ожерелье на шею, обхват которой D см.

Указание. Исходные данные ввести, вычислить результат, вывести в денежном представлении. Использовать тип Currency – денежное представление.

Присваивание, типы данных:

Task_1. Задание 7. От полуночи минутная стрелка описала угол K градусов (целочисленное значение).

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

Указание: использовать операции целочисленного деления.

Условный оператор

Задание 2. Дано натуральное число N, в записи которого ровно пять знаков.

Определить, является ли это число палиндромом или нет, напечатать сообщение текстом. Значение числа вводить в диалоге, иметь возможность повторного обращения.

Задание 2. Является ли строка палиндромом – удалить пробелы и знаки препинания, к одному регистру.
Trim(string) Вырезает из строки все пробелы слева и справа.

Mid(string, start[, length]) Вырезает из строки string с позиции start length символов.

Left(string, length) Возвращает length символов, начиная с первого левого символа строки string

Right(string, length) Возвращает length символов, начиная с самого правого символа строки string

Len(string) Возвращает длину строки. Например, длина строки "Добрый день" составляет 11 символов - учитывая пробел. Выходное значение имеет тип Long.
Выбор

Case: Ввести длину ребра, материал изготовления???, вычислить массу.
написать администратору сайта