Содержание 1 введение 6

Вид материалаРеферат
Контрольная работа № 1
А симметричны относительно главной диагонали, и значение 0 в противном случае. Значение переменной В
R, с центром в точке с координатами (1,1). Координаты заданы массивами X(N)
Подобный материал:
1   ...   17   18   19   20   21   22   23   24   25

Контрольная работа № 1


Тема: «Базовые конструкции языка Visual Basic»


Содержание и требования к контрольной работе
  1. В контрольной работе №1 необходимо выполнить алгоритмические задачи с использованием базовых типов данных и основных операторов языка программирования VBA.
  2. Контрольная работа содержит пять задач, выполнение всех задач обязательно.
  3. Темы задач: простые вычислительные алгоритмы, работа с переменными типа строка, работа с одномерным массивом, работа с двумерным массивом, работа с переменными типа запись.
  4. Определить номер варианта и выполнить все задачи контрольной работы.
  5. Задачи на проверку прислать в виде файлов Word либо Excel, с кодом программы, выполненном в среде VBA соответствующего компонента Office.
  6. В программах обязательно наличие комментариев, поясняющих основные алгоритмические шаги.


Вариант 1

  1. Известны год и номер месяца рождения человека, а также год и номер месяца сегодняшнего дня (январь – 1 и т.д.). Определить возраст человека (число полных лет). В случае совпадения указанных месяцев считать, что прошел весь год.
  2. В файле хранится произвольный текст. Исключить из каждой строки текста группы символов, расположенные между скобками {,}. Сами скобки тоже должны быть исключены. Предполагается, что внутри каждой пары скобок нет других скобок. Результат записать в новый файл.
  3. Написать процедуру, которая в одномерном массиве определяет минимальный и максимальный элементы и находит их среднее арифметическое. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массива выполнить в файл.
  4. Написать процедуру, которая формирует двумерный массив размерностью по следующей схеме:




  1. Дан список, состоящий из названия книг, фамилии авторов, названия издания и года издания. Напечатать список, упорядоченный по фамилии автора. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 2

  1. Услуги телефонной сети оплачиваются по следующему правилу: за разговоры до А минут в месяц – по В руб., а разговоры сверх установленной нормы оплачиваются из расчета С руб. за минуту. Написать программу, вычисляющую плату за пользование телефоном для введенного времени разговоров за месяц.
  2. В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Вывести самое длинное слово в тексте и его длину.
  3. Написать процедуру вычисления , где х изменяется от 50 до 100, а y является элементом массива Значения элементов массива вводите с помощью оператора InputBox. Вывод массива выполнить в файл и на экран с помощью оператора вывода MsgBox.
  4. Даны две матрицы Х(n,m); У(k,l). Найти среднее арифметическое всех элементов в каждой матрице.
  5. Дан список, состоящий из названия книг, фамилии авторов, названия издания и года издания. Напечатать список, упорядоченный по годам изданий. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 3

  1. К финалу конкурса лучшего по профессии «Специалист электронного офиса» были допущены трое: Иванов, Петров, Сидоров. Соревнования проходили в три тура. Иванов в первом туре набрал m1 баллов, во втором – n1, в третьем – p1. Петров – m2, n2, p2 соответственно; Сидоров – m3, n3, p3. Составить программу, определяющую, сколько баллов набрал победитель.
  2. В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Найти количество слов в тексте, у которых первый и последний символ совпадают.
  3. Написать процедуру поиска максимального элемента в массиве из N элементов, используя «кубковую систему»: на первом шаге алгоритма из каждой пары рядом стоящих элементов выбирается максимальный – он проходит в следующий тур. Элемент, которому не находится пара, переходит в следующий тур безусловно. На следующем шаге алгоритм повторяется и так до тех пор, пока в массиве не останется один элемент – он и будет максимальным. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массива выполнить в файл.
  4. Даны три матрицы А(n,m); В(l,l); С(k,l). Вычислить сумму элементов первой строки и произведение последнего столбца в каждой матрице.
  5. Дан список студентов группы и оценки экзаменационной сессии. Напечатать список, упорядоченный по алфавиту, средний балл каждого и фамилии лучшего и худшего студента по среднему баллу. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 4

  1. В небоскребе N этажей и всего один подъезд; на каждом этаже по три квартиры; лифт может останавливаться только на нечетных этажах. Человек садится в лифт и набирает номер квартиры M. На какой этаж лифт должен доставить пассажира?
  2. В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Удалить из каждого слова текста все последующие вхождения его первой буквы. Результат записать в новый файл.
  3. Дан массив Удалить элемент массива, больший заданного числа. Если таких элементов нет, выдать сообщение: «Элементы для удаления не найдены». Если таких элементов несколько, то удалить последний из найденных. Размерность массива и заданное число вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массива выполнить в файл.
  4. Даны две матрицы А(5,5); В(6,6). Уменьшить максимальный элемент в каждой из этих матриц в 10 раз.
  5. Дан список, состоящий из названий книг, фамилий авторов, издательства и года изданий. Упорядочить список по издательствам. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 5

  1. Составить программу, имитирующую применение компьютера в книжном магазине. Компьютер запрашивает стоимость книг, сумму денег, внесенную покупателем; если сдачи не требуется, печатает на экране «Спасибо»; если денег внесено больше, чем необходимо, то печатает «Возьмите сдачу» и указывает сумму сдачи; если денег недостаточно, то печатает сообщение об этом и указывает размер недостающей суммы.
  2. В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Вывести все буквы, которые входят в наибольшее количество слов текста.
  3. Дан массив А(N). В массиве найти сумму элементов после первого отрицательного и сумму элементов до него. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массива выполнить в файл.
  4. Дана матрица А(n,m). Вычислить произведения элементов в каждом столбце заданной матрицы.
  5. Имеется K заявлений на получение жилплощади, в каждом указан срок подачи заявлений, площадь занимаемой квартиры и количество членов семьи. Составить и напечатать список очередности по сроку подачи заявления. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 6

  1. Год является високосным, если его номер кратен 4. Из кратных 100 високосными годами являются лишь те года, которые кратны также 400 (например, 1700, 1800, 1900 – не високосные года, 2000 – високосный год). Дано натуральное число N. Определить, является ли високосным год с таким номером.
  2. В файле хранится произвольный текст. Между словами текста минимум один пробел. Написать программу, которая между словами текста ставит по три знака точка (…). Результат записать в новый файл.
  3. Даны три массива А(N), В(M), С(L). Найти максимальный элемент в каждом массиве и максимальный среди них. Размерность массивов вводите с помощью оператора InputBox. Значения элементов массивов определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массивов выполнить в файл.
  4. Даны две матрицы А(n,m); В(k,l). Вычислить сумму и разность максимальных элементов этих матриц.
  5. Дан список сотрудников лаборатории, должность и возраст каждого сотрудника. Напечатать список по должностям и средний возраст каждой группы. (Должности: ст. инж., м.н.с., с.н.с., лаборант). Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 7

  1. Работа светофора для пешеходов запрограммирована следующим образом: в начале каждого часа в течение трех минут горит зеленый сигнал, затем в течение двух минут – красный, в течение трех минут – опять зеленый и т.д.; дано вещественное число t, означающее время в минутах.
  2. В файле хранится произвольный текст. Написать программу, которая преобразует каждую строку текста, выравнивая ее до заданной длины добавлением пробелов между словами. Результат записать в новый файл.
  3. Дан массив Расположить положительные элементы массива, стоящие на нечетных местах, по возрастанию, остальные оставить на своих местах. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Вывод массива выполнить в файл и на экран с помощью оператора вывода MsgBox.
  4. Дана матрица А(n,m). Если сумма всех элементов матрицы больше 0, то у первого элемента этой матрицы заменить знак на противоположный.
  5. Дан список группы с оценками экзаменационной сессии. Подсчитать количество отличников в группе и в поле «имеется задолженность» студентам, имеющим двойки, напечатать «да», а всем остальным «нет». Вывод на экран сформировать в виде таблицы, упорядоченной по алфавиту. Для ввода данных использовать форму и элементы управления.

Вариант 8

  1. В ЭВМ поступают результаты соревнований по плаванию; для трех спортсменов составить программу, которая выбирает лучший результат и выводит его на экран с сообщением о том, что это результат победителя заплыва.
  2. В файле хранится произвольный текст. Группы символов, разделенные пробелом и не содержащие пробелов внутри себя, будем называть словами. Определить количество слов в каждой строке текста, которые содержат ровно две буквы а. На экран вывести номер строки и соответствующее ей количество слов.
  3. Дан массив А(N). Найти максимальный элемент массива и нормировать элементы массива по максимальному. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массива выполнить в файл.
  4. Даны три матрицы А(n,n); В(n,n); С(n,n). Присвоить переменной Y значение 2, если все матрицы равны между собой, значение 1, если равны какие-либо две из них, значение 0 в противном случае.
  5. Дан список абитуриентов, средний балл аттестата и оценки на вступительных экзаменах у каждого. Считая, что проходной балл 22, определить, станет ли данный абитуриент студентом. Если да, то в графе «принят» поставить «да», в противном случае – «нет». Вывод на экран сформировать в виде таблицы, упорядоченной по алфавиту. Для ввода данных использовать форму и элементы управления.


Вариант 9

  1. В древнем японском календаре был принят 60-летний цикл, состоящий из пяти 12-летних подциклов. Подциклы означались названиями цветов: зеленый, красный, желтый, белый и черный. Внутри каждого подцикла годы носили названия животных: крыса, корова, тигр, заяц, дракон, змея, лошадь, овца, обезьяна, курица, собака и свинья. Например, 1984 год – год начала очередного цикла – назывался годом зеленой крысы.

Составить программу, которая по заданному номеру года нашей эры N выводит его название по древнему японскому календарю.
  1. В файле хранится произвольный текст на русском языке. Проверить, каких букв в нем больше: гласных или согласных.
  2. Дан массив Расположить ненулевые элементы массива по убыванию; остальные элементы оставить на своих местах. Размерность массива вводите с помощью оператора InputBox. Значения элементов массива определить датчиком случайных чисел. Вывод массива выполнить в файл и на экран с помощью оператора вывода MsgBox.
  3. Даны две матрицы А(n,n); В(m,m). Присвоить переменной значение 1, если элементы матрицы А симметричны относительно главной диагонали, и значение 0 в противном случае. Значение переменной В определить аналогично для матрицы В.
  4. Дан список группы и оценки экзаменационной сессии с названием предметов. Напечатать список, упорядоченный по алфавиту, и подсчитать, по какому предмету в группе имеется наибольшее количество двоек. Вывод на экран сформировать в виде таблицы. Для ввода данных использовать форму и элементы управления.


Вариант 10

  1. В некотором учебном заведении действуют следующие правила приема. Абитуриенты сдают три экзамена. Если они набирают не менее 13 баллов, то это дает право поступить на дневное отделение, от 10 до 12 – на вечернее, от 8 до 9 – на заочное, ниже восьми баллов означает отказ в приеме на учебу. Написать программу, которая в зависимости от суммы набранных баллов сообщает абитуриенту его права на поступление.
  2. В файле хранится произвольный текст. Отредактировать заданный текст, удаляя из него все слова с четными номерами и переворачивая (печатая символы в обратном порядке) слова с нечетными номерами. Результат записать в новый файл.
  3. Подсчитать число точек, находящихся внутри круга радиусом R, с центром в точке с координатами (1,1). Координаты заданы массивами X(N), Y(N). Размерность массивов вводите с помощью оператора InputBox. Значения элементов массивов определить датчиком случайных чисел. Для вывода скалярных результатов вычислений используйте оператор вывода MsgBox. Вывод массивов выполнить в файл.
  4. Написать процедуру, которая формирует двумерный массив А по следующему алгоритму:

изменяется от 0 до N, j изменяется от 0 до M.
  1. Дан список группы с результатами сессии. Считая, что студент, имеющий не более одной тройки, имеет право на стипендию, поставить в соответствие такому студенту в поле «стипендия» знак «+», в противном случае – знак «–». Вывод на экран сформировать в виде таблицы, упорядоченной по алфавиту. Для ввода данных использовать форму и элементы управления.