3. Практические занятия (8 лекций в ворде)

2017-08-02СтудИзба

Описание файла

Файл "3. Практические занятия" внутри архива находится в папке "Lection 1". Документ из архива "8 лекций в ворде", который расположен в категории "". Всё это находится в предмете "информатика" из 1 семестр, которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "лекции и семинары", в предмете "информатика" в общих файлах.

Онлайн просмотр документа "3. Практические занятия"

Текст из документа "3. Практические занятия"

17

Практические занятия по информатике

1-й семестр

Неделя

Тема

Примеры заданий

1

Знакомство с системой программирования Delphi (консольный режим). Структура программы. Основные стандартные типы данных. Оператор присваивания. Выражения. Процедуры ввода - вывода. Разработка программ линейной структуры.

  1. Ввести два целых числа. Вывести результаты выполнения над ними 6-и арифметических действий (+ , - , * , / , DIV, MOD).

  2. Ввести символ. Определить его код по таблице ASCII. Используя значение кода в качестве величины радиуса, вычислить длину окружности, площадь круга и объем шара.

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

  4. Определить площадь треугольника по заданным координатам его вершин и его углы.

  5. По заданным коэффициентам a1,a2,b1,b2 и правым частям c1,c2 найти решение системы двух линейных уравнений в предположении, что ее определитель не равен 0.

  6. Присвоить символьным переменным с1, с2, с3 соответственно левую, среднюю и правую цифры целого трехзначного числа k.

  7. Определить площадь и периметр правильного n – угольника, вписанного в окружность радиуса R и описанного около нее. Сравнить полученные данные с площадью круга и длиной окружности радиуса R.

  8. Треугольник в пространстве задан координатами своих вершин A(x,y,z), B(u, v, w), C(r, p, q). Найти периметр и площадь треугольника. Определить скалярное произведение векторов .

  9. Задано пятизначное число a. Проверить, является ли оно палиндромом.

2

Операторы: условный, составной и выбора. Логические операции. Разработка программ разветвляющейся структуры.

  1. Ввести три числа. Определить и вывести наименьшее из них. Если оно отрицательное, то возвести его в квадрат и вывести.

  2. Вычислить значения y по одной из формул:

при x<=0;

при 0<x<=1;

y = lg(x) при x>1.

  1. Разработать программу, которая для двух введенных чисел позволяет выполнять одно из четырех арифметических действий (использовать оператор выбора).

  2. Определить площадь закрашенных участков, если точка с координатами x,y располагается внутри них.

  1. Написать программу, имитирующую работу калькулятора. Калькулятор должен иметь арифметическую и функциональную часть. Работа калькулятора осуществляется следующим образом. Вводится вещественное число а. Вводится знак арифметической операции (+,-,*,/) или буква F. Если введен знак операции, то вводится значение вещественной переменной b и выполняется нужная операция. Если же введен символ функциональной части F, то должна вводиться первая буква вычисляемой функции, например s или S соответствуют функции Sin(a).

  2. Записать выражение x=a b c с помощью условных операторов. В этом выражении x, a, b, c – логические переменные. Операции OR и AND не использовать.

  3. Даны три точки . Определить, расположены ли они на одной прямой. Если нет, то вычислить угол .

  4. Дано натуральное число n<101, являющееся возрастом человека в годах. Вывести для этого числа надпись «год», «года» или «лет». Например, 2 года, 56 лет, 34 года и т.д.

3

Операторы цикла (с известным и неизвестным числом повторений). Разработка программ циклической структуры.

  1. Протабулировать функцию y=x* sin(x) в диапазоне изменения х от А до В с шагом Н (A,B и H вводятся с клавиатуры). Использовать разные операторы цикла.

  2. Вычислить факториал введённого целого числа. Использовать разные операторы цикла.

  3. Вычислить сумму членов ряда с точностью до члена ряда по абсолютной величине, меньшего ε (ε – малое вводимое число).

  4. Вводится целое n и вещественные числа x1,y1 , x2,y2, … , xn, yn . Рассматривая пары xi,yi как координаты точки на плоскости, определить минимальный радиус круга с центром в начале координат, в котором разместятся все введенные точки.

  5. Найти так называемое «машинное эпсилон» для разных типов вещественных данных Delphi (single и т.д.), т.е. найти такое минимальное не равное нулю число, которое после прибавления его к 1.0 еще дает результат, отличный от 1.0

  6. Получить таблицу значений для x, изменяющегося в диапазоне с шагом .

4

РУБЕЖНЫЙ КОНТРОЛЬ

Операторы, выражения, программы различной структуры – 10(6) баллов.

5

Использование типовых приемов программирования на примере обработки одномерных массивов (ввод, вывод, преобразование, создание, вычисление суммы и произведения, максимума и минимума, сортировка, поиск элементов и т.д.).

  1. Ввести массив из целых чисел A[N], где N<=10 – размерность массива (вводятся по запросу). Найти сумму и произведение его элементов, а также максимальный элемент. Вывести на экран массив и найденные значения.

  2. Ввести массив из целых чисел A[N], где N<=10 – размерность массива. Из его отрицательных элементов создать другой массив. Вывести на экран оба массива. Если отрицательных элементов нет, вывести соответствующее сообщение.

  3. В массиве А после каждого отрицательного элемента вставить элемент с заданным значением.

  4. В массиве А поставить элемент с максимальным значением перед элементом с минимальным значением. Порядок следования остальных элементов не должен меняться (в упрощенном варианте можно поставить этот элемент на первое или на последнее место).

  5. В одномерном массиве целых чисел найти наибольший и наименьший элементы и поменять их местами.

  6. Упорядочить одномерный массив целых чисел по возрастанию суммы цифр каждого числа.

  7. Заданы два упорядоченных по возрастанию массива целых чисел с числом элементов n1 и n2. Слить их в один (третий) массив, также упорядоченный по возрастанию.

6

Разработка и отладка приложений для решения типовых задач (обработка одномерных и двумерных массивов, обработка числовых рядов, вычисление интегралов т.п.).

  1. Ввести массив из целых чисел A[N,M], где N<=10, M<=20 – размерности массива (вводятся по запросу). Вывести массив в виде матрицы. Создать и вывести массив из элементов матрицы, которые больше среднего значения элементов матрицы.

  2. Ввести массив из целых чисел A[N,M], где N<=10, M<=20 – размерности массива (вводятся по запросу). Вывести массив в виде матрицы. Вывести отдельно столбец матрицы, произведение элементов которого минимально.

  3. Ввести массив из целых чисел A[N,N], где N<=10 – размерность массива (вводится по запросу). Вывести массив в виде матрицы. Вывести отдельно элементы матрицы, расположенные над главной диагональю.

  4. Получить матрицу В из матрицы А путем удаления k-го столбца.

  5. Расположить столбцы матрицы в порядке возрастания значений элементов k-ой строки.

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

  7. Найти наибольший и наименьший элементы под (над) главной (побочной) диагоналями матрицы, включая (не включая) элементы самой диагонали.

  8. Заполнить квадратную матрицу последовательными натуральными числами, начиная с 1 до n*n, совершая обход по спирали от верхнего левого угла к центру матрицы.

7

Организация подпрограмм. Функции.

  1. Ввести два массива из целых чисел A1[N1] и A2[N2] , где N1<=10, а N2<=5 – размерности массивов (вводятся по запросу). Определить минимальный элемент которого из них больше. Использовать функцию.

  2. Разработать функцию, определяющую площадь треугольника по координатам его вершин. Использовать её в программе для вычисления площади выпуклого 5-угольника (координаты его вершин вводятся).

  3. Разработать функцию, определяющую максимальный элемент побочной диагонали квадратной целочисленной матрицы. Использовать её в программе для обработки двух введённых массивов А1[3,3] и А2[4,4]. Вывести массивы в виде матриц и найденные элементы.

  4. Вывести на экран таблицу значений функции для x, изменяющегося в диапазоне с шагом . Функция оформляется в виде подпрограммы-функции.

  5. Задан массив, элементами которого являются произвольные целые числа (положительные и отрицательные). Преобразовать их, изменив порядок следования цифр в их значениях на обратный. Использовать функцию.

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

  7. На плоскости заданы n точек. Найти треугольник, имеющий наибольшую площадь из всех треугольников, которые можно построить на этих точках. Использовать функцию.

8. Заполнить случайным образом матрицу размером n x m последовательными без повторений числами Фибоначчи

8

РУБЕЖНЫЙ КОНТРОЛЬ

Одномерные и двумерные числовые массивы – 20(12) баллов.

9

Процедуры. Параметры подпрограмм.

  1. Ввести массив из целых чисел A[N], где N<=10 – размерность массива (вводятся по запросу). С помощью одной процедуры найти в нём максимальный и минимальный элементы, а с помощью другой – упорядочить по убыванию. Вывести исходный, упорядоченный массивы и найденные элементы.

  2. Разработать процедуру, вычисляющую корни х1 и х2 квадратного уравнения ах2+вх+с=0 для введённых значений коэффициентов а, в и с (а≠0 и дискриминант положителен). Использовать её в программе для двух введённых наборов коэффициентов а1, в1, с1 и а2, в2, с2.

  3. Разработать процедуру, меняющую местами k-ю и m-ю строки целочисленной матрицы (k и m вводятся по запросу). Использовать её в программе для обработки двух введённых массивов А1[3,4] и А2[4,3]. Вывести исходные и преобразованные массивы в виде матриц. Для ввода и вывода массивов использовать процедуры.

  4. Составить процедуру для перемещения элементов квадратной матрицы, расположенных в первом столбце, первой строке и на побочной диагонали, на одну позицию против часовой стрелки. Использовать разработанную процедуру для перемещения указанных элементов на k позиций.

  5. Составить функцию, которая представлена в виде функционального ряда

Составить процедуру для решения методом половинного деления уравнения

  1. Составить процедуру для вычисления определенного интеграла по формуле трапеций с автоматическим выбором шага. Применить процедуру для вычисления интегралов

и .

7. Найти матрицу

, если степень матрицы определяется по формуле

10

Работа с символьными и строковыми данными (поиск, замена, удаление, вставка символов в строках, преобразование строк) с использованием подпрограмм.

  1. Ввести строку из букв. Поменять все буквы «а» на букву «А» и вывести. Вывести строку в обратном порядке. Упорядочить буквы в строке по алфавиту и вывести.

  2. Ввести простое предложение (без знаков препинания внутри, слова разделены одним пробелом, в конце строки один из знаков – «.», «!», «?»). Подсчитать количество слов начинающихся и заканчивающихся на одинаковую букву. Использовать подпрограмму.

  3. Ввести простое предложение. Заменить в нём одно из слов (по запросу) на новое и вывести. Если запрашиваемого слова нет, вывести соответствующее сообщение. Использовать подпрограмму.

  4. Определить строчную букву латинского алфавита, которая чаще всего встречается в строке произвольной длины.

  5. Строка произвольной длины состоит из слов, отделенных друг от друга пробелом. Записать эти слова в массив строк так, чтобы каждое слово являлось элементом массива. Упорядочить элементы полученного массива по алфавиту.

  6. Преобразовать строку произвольной длины, удалив в ней все повторения строчных букв латинского алфавита.

  7. Строка произвольной длины состоит из слов, отделенных друг от друга пробелом. Записать эти слова в новую строку, изменив порядок их следования на обратный.

  8. Написать процедуру, которая помещает первые вхождения букв в заданной строке в другую строку. Написать программу, в которой процедура применяется для обработки строк, вводимых пользователем.

  9. Сделать бегущую на экране строку.

11

Работа с записями. Обработка массивов записей с использованием подпрограмм.

  1. Ввести массив записей (не более 20-и) с полями – «фамилия», «оценка». Вывести на экран. Упорядочить массив по алфавиту и вывести. Определить средний балл.

  2. Ввести массив записей (не более 5-и) с полями – «наименование продукта», «цена», «количество» и «срок годности». Вывести на экран. По введённой дате вывести список испорченных продуктов и подсчитать убыток. Если нет испорченных продуктов, вывести соответствующее сообщение. Использовать подпрограмму.

  3. Ввести массив записей (не более 10-и) с полями – «фамилия сотрудника», «стаж работы», «оклад». Вывести на экран. Вывести в алфавитном порядке данные тех сотрудников, чей оклад ниже среднего по предприятию. Тому из малооплачиваемых, чей стаж максимальный, увеличить оклад в 2 раза. Вывести обновленный список всех сотрудников. Использовать подпрограмму.

  4. Задан массив записей, которые содержат фамилию человека, год рождения и пол. Переписать в новый массив фамилии лиц мужского пола 1982 – 1984 года рождения.

  5. Задан массив записей, полями которых являются координаты точки. Определить площадь минимального круга с центром в ближайшей к началу координат точке, в котором расположатся все заданные точки.

  6. Задан массив записей, которые содержат фамилию человека и рост. Расположить их по росту. Не нарушая упорядоченности внести в упорядоченный список лиц, данные которых вводятся с клавиатуры по дополнительному запросу. Найти человека, рост которого наиболее близок к среднему росту представленных в списке.

  7. Создать массив записей с полями: фамилия студента, баллы за экзамен по 4-м дисциплинам. Выдать фамилию студента, средний балл которого наиболее близок к среднему баллу группы.

  8. Создать массив записей с полями: фамилия, специальность. Выдать специальность, по которой имеется наибольшее количество сотрудников.

12

РУБЕЖНЫЙ КОНТРОЛЬ

Обработка строк и записей – 20(12) баллов.

13

Типизированные файлы. Процедуры и функции для создания и обработки файлов.

  1. Создать типизированный файл из нескольких целых чисел. Вывести его содержимое на экран. Заменить один из элементов файла (по запросу его номера) на новый. Вывести содержимое изменённого файла.

  2. Создать типизированный файл, элементы которого – значения функции на интервале изменения x от А до В с шагом Н (А<B, А>0 и Н – вводятся по запросу). Вывести содержимое файла на экран. Переписать из него во второй типизированный файл элементы, начиная с N-го по M-й (N и M – вводятся по запросу). Вычислить значение среднего арифметического этих элементов и записать его в конец второго файла, содержимое которого вывести на экран. Использовать подпрограмму.

  3. Создать типизированный файл записей (поля – «марка автомобиля» и его «цена»). Переписать из него в другой типизированный файл записи в порядке возрастания цены. Вывести на экран содержимое обоих файлов. Использовать подпрограмму.

  4. В файле вещественного типа после компонента с максимальным значением поставить новый компонент с заданным значением.

  5. В файле вещественного типа упорядочить все компоненты по возрастанию их значений.

  6. Результаты предварительных соревнований по бегу содержатся в виде записей в типизированном файле. Полями являются фамилия спортсмена и его результат (время забега). Удалить из файла спортсменов с результатами ниже квалификационного.

  7. В типизированный файл поместить информацию о сотрудниках организации в виде: фамилия, год рождения. Удалить из файла юбиляров (возраст оканчивается на 0 или 5), дописав их в конец файла в том же порядке, в каком они представлены в файле. Задачу решить с использованием хотя бы одной процедуры.

  8. В типизированном файле содержатся квадратные матрицы размером 2 x 2. Просматривая попарно все матрицы, найти такие две матрицы, определитель произведения которых имеет наибольшее значение.

  9. Упорядочить типизированный файл фамилий по алфавиту. Вспомогательный массив не использовать.

14

Текстовые файлы и их особенности. Использование текстовых файлов для ввода – вывода числовых данных.

  1. Создать текстовый файл из нескольких строк символов. Вывести его содержимое на экран. В строке под номером k (по запросу) подсчитать количество цифр. Полученное значение записать в конец файла и вывести содержимое изменённого файла на экран.

  2. Создать с помощью текстового редактора (например, «Блокнот») файл, содержащий несколько чисел. Разработать программу, которая выводит на экран содержимое файла и вычисляет значение среднего арифметического чисел из этого файла. Использовать подпрограмму.

  3. Записать в первый текстовый файл несколько записей (поля – название горы и её высота). Переписать из первого во второй текстовый файл записи о горах, высота которых больше 3000 м. Найти в текстовом файле гору с минимальной высотой. Использовать подпрограмму.

  4. В файле задан текст. Записать этот текст в другой файл, выполнив контекстную замену слова. Заменяемое и заменяющее слова вводятся с клавиатуры.

  5. Создать в файле текст, содержащий несколько предложений, которые заканчиваются точкой. Переписать этот текст в другой файл, отформатировав его так, чтобы в каждой строке нового файла либо содержалось n символов, если в ней отсутствует точка, либо она заканчивалась бы точкой.

  6. Текстовый файл представляет собой совокупность строк, состоящих из слов. Слова отделены друг от друга пробелом. Переписать этот текст в другой, поменяв местами первое слово каждой строки с последним. (Определить строку, в которой наибольшее количество заглавных букв).

  7. В текстовый файл поместить информацию о сотрудниках организации в виде: фамилия, год рождения. Переписать в конец файла в алфавитном порядке фамилии юбиляров (возраст оканчивается на 0 или 5) и их возраст в заданном пользователем году

  8. Создать n текстовых файлов с разным количеством строк. Вывести на экран их имена в порядке возрастания количества строк в файлах.

  9. В текстовом файле находятся две квадратные матрицы с их размерами в строго заданном виде:

Размер матриц

3

Матрица 1 Матрица 2

3 4 5 2 0 3

2 5 0 3 5 1

1 2 4 4 1 8

Найти произведение матриц, и результат дописать в тот же файл, снабдив заголовком «Произведение матриц 1 и 2».

15

Создание модулей пользователя. Структура модуля. Использование подпрограмм по работе с файлами и данными структурированного типа в составе модуля.

  1. Разработать функцию, вычисляющую произведение четных элементов одномерного числового массива, и процедуру, сортирующую этот массив по возрастанию, и поместить их модуль. Использовать этот модуль в программе, обрабатывающей два массива А1[4] и А2[5].

  2. Разработать программу, определяющую что длиннее: гипербола y=1/x или парабола y=x2 в диапазоне изменения x от A до B с шагом H (В>A, H<B-A). Вычисление длины линии реализовать в подпрограмме, которую поместить в модуль. Использовать процедурный тип.

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

  • Создание типизированного файла записей (фамилия, номер телефона).

  • Вывод содержимого файла на экран.

  • Изменение номера у абонента с заданной фамилией (по запросу).

  • Завершение работы.

Первые три пункта реализовать в процедурах, которые поместить в модуль.

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

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

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

16

РУБЕЖНЫЙ КОНТРОЛЬ

Обработка файлов. Модули – 20(12) баллов.

17

ЗАЧЕТ

2-й семестр

1

Понятие объекта и класса. Объектно-ориентированное программирование и визуальное проектирование в Delphi. Обработка символьных, строковых и числовых данных Компоненты TLabel, TEdit, TButton, TPanel.

Обработка строк и чисел. Функция InputBox, процедура ShowMessage.

  1. Ввести предложение. Определить в нём самое длинное слово и слово, последнее по алфавиту.

  2. Ввести два числа. Обеспечить выполнение основных четырёх арифметических действий. Учесть некорректный ввод чисел и невозможность деления на ноль.

  3. Разработать программу - кнопочный калькулятор.

  4. Задача об определении температуры, заданной в градусах Цельсия, в шкалах Реомюра и Фаренгейта.

  5. Решение квадратного уравнения ax2+bx+c=0 (с проверками коэффициента а, дискриминанта).

  6. Найти площадь треугольника по координатам его вершин на плоскости.

  7. Две окружности заданы своими радиусами R1, R2 и координатами их центров на плоскости O1(x1, y1), O2(x2, y2). Выдать сообщение о том, пересекаются, не пересекаются или касаются друг друга эти окружности.

2

3

Обработка одномерных массивов чисел, строк и записей. Компоненты TMemo, TListBox.

  1. Ввести числовой массив. На место первого элемента записать среднее арифметическое его элементов, а на место последнего – среднее геометрическое. Вывести исходный и изменённый массивы.

  2. Ввести в поле ввода список фамилий. Вывести в другом поле этот список, упорядоченный по алфавиту. Найти самую короткую фамилию.

  3. Ввести массив записей (поля – «фамилия футболиста», «название клуба», «количество забитых мячей»). Вывести список фамилий футболистов запрашиваемого клуба. Найти самого результативного футболиста.

  4. Преобразовать целочисленный массив, расположив его элементы в порядке возрастания сумм цифр их значений. Исходный и преобразованный массивы отображаются в Memo1 (в виде строк или в виде столбцов).

  5. С использованием метода Add свойства Items создать в компоненте TListBox массив строк (фамилий). Предусмотреть режимы вставки (Insert), удаления (Delete), сортировки в прямом и в обратном направлении.

  6. В одномерном массиве целых чисел найти цифру, которая встречается чаще всего.

  7. Упорядочить одномерный массив по возрастанию. Выдать полученный массив на экран, указав рядом с каждым элементом в скобках его порядковый номер в исходном массиве

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

4

РУБЕЖНЫЙ КОНТРОЛЬ

Одномерные массивы чисел, строк и записей – 20(12) баллов.

5

Работа с таблицами. Компонент TStringGrid.

Обработка двумерных массивов.

  1. Создать таблицу с данными о нескольких деталях, содержащую: «Наименование детали», «Номер детали» и «Массу детали». Найти самую тяжелую деталь.

  2. Создать таблицу с данными о горах, содержащую: «Название горы», «Высота горы». Перенести данные о всех горах высотой более 5000 метров в другую таблицу. Найти среди гор второй таблицы самую низкую.

  3. Ввести двумерный массив чисел размерностью не более 5 строк на 10 столбцов (по запросу). Вывести его в виде матрицы в таблице. Упорядочить строки матрицы по убыванию и вывести изменённый массив в другой таблице.

  4. Разместить на форме два компонента TStringGrid и меню. В колонках таблицы должны отражаться следующие данные: фамилия студента, индекс группы и три оценки (целые числа). Активизация пунктов меню должна обеспечивать размещение данных в таблице, обработку данных таблицы, очистку таблиц и закрытие приложения. При активизации пункта «Обработка» в компоненте StringGrid2 должны быть представлены индексы групп и количество неуспевающих студентов в них.

  5. Указать в матрице местоположение элементов, являющихся числами Фибоначчи и одновременно простыми.

  6. Разместить в таблице фамилии студентов, номера групп, успеваемость по 4-м дисциплинам в баллах. Вывести по запросу:

    • номер группы с наивысшим баллом;

    • фамилии студентов – отличников (неуспевающих);

    • средний балл студента по его фамилии.

  1. Разместить в таблице фамилии, имена, пол и год рождения сотрудников. Вывести фамилии всех юбиляров на текущую дату (использовать системное время) или фамилии всех мужчин или женщин заданного возраста

6

7

Обработка двумерных массивов.

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

  2. Ввести двумерный массив чисел размерностью не более 5 строк на 5 столбцов (по запросу). Вывести его в виде матрицы в таблице. В каждой строке матрицы поменять местами максимальный элемент с элементом побочной диагонали и вывести изменённый массив в другой таблице.

  3. Ввести двумерный массив чисел размерностью не более 5 строк на 5 столбцов (по запросу). Вывести его в виде матрицы в таблице. Поменять местами максимальный и минимальный элементы главной диагонали и вывести изменённый массив в другой таблице.

  4. Разместить на форме два компонента TStringGrid и меню (или четыре кнопки). В ячейках таблицы StringGrid1 должны отображаться элементы целочисленной матрицы. Активизация пунктов меню (кнопок) должна обеспечивать заполнение ячеек исходной таблицы, обработку матрицы, очистку таблиц и закрытие приложения. При активизации пункта «Обработка» в компоненте StringGrid1 должна появиться дополнительная колонка, в которой должны быть представлены элементы соответствующих строк, значения которых наиболее близки к средним арифметическим соответствующих строк, а в компоненте StringGrid2 должны быть представлены строки исходной матрицы, среднее арифметическое в которых больше заданного числа, которое вводится функцией InputBox. Значения элементов матрицы задаются случайными числами. Подпрограммы заполнения матрицы, нахождения искомых элементов должны размещаться в модуле пользователя.

  5. Найти произведение двух матриц. Первый и второй сомножитель в произведении определяет пользователь. Использовать три компонента TStringGrid.

  6. Поменять местами строки матрицы, в которых находятся наибольший и наименьший элементы матрицы. Представить результат в новой таблице.

  7. Заданы две квадратные матрицы одинакового размера. Провести взаимный обмен элементов матриц, расположенных на одинаковых местах в правом треугольнике между диагоналями. Результат представить в новых таблицах.

8

РУБЕЖНЫЙ КОНТРОЛЬ

Двумерные массивы. Таблицы – 30(18) баллов.

9

Обработка текстовых файлов. Компоненты TOpenDialog, ТSaveDialog, TMainMenu.

Обработка типизированных файлов.

  1. Разработать программу, содержащую меню, позволяющее:

  • Создавать, открывать и сохранять текстовый фал из нескольких строк – предложений.

  • Находить в файле самое короткое предложение.

  • Находить в файле само длинное слово.

  • Определять сколько раз в файле встречается запрашиваемое слово.

  • Завершать работу программы.

  1. Разработать программу, содержащую меню, позволяющее:

  • Создавать, открывать и сохранять типизированный фал из записей (поля – «марка автомобиля», «год выпуска» и «цена»)

  • Добавлять, удалять и редактировать записи.

  • Выводит данные об автомобилях запрашиваемого года выпуска.

  • Находить в файле самый дешевый автомобиль.

  • Завершать работу программы.

  1. Разместить на форме меню и компонент TMemo. В строках редактора должны отображаться следующие данные: фамилия студента, индекс группы и три оценки (целые числа). Каждое значение начинается с фиксированной позиции. Активизация пунктов меню режима «Файл» должна обеспечивать сохранение данных в текстовом файле (опции «сохранить» и «сохранить как»), загрузку данных из текстового файла (опция «открыть») и размещение их в Memo и выход из приложения. Выбор имени файла осуществляется с использованием стандартных диалогов. При активизации режима «Обработка» из открытого файла должны быть считаны данные и в компоненте Memo представлены фамилии отличников.

  2. В текстовом файле, найти слова, которые начинаются с прописной или строчной гласной (согласной) буквы, слова – числа, слова – палиндромы. Переместить эти слова в другой файл в алфавитном порядке по возрастанию (убыванию).

  3. Создать типизированный файл записей типа: фамилия, год рождения, пол, специальность, стаж работы. Переместить в другой файл фамилии людей заданного возраста, специальности и т.д., расположив их в алфавитном порядке.

  4. В текстовом файле записана программа на языке Pascal. Проверить правильность расстановки служебных слов begin и end (регистр символов произволен), правильность расстановки скобок в выбранной строке.

10

11

Многооконные и многомодульные приложения.

  1. Разработать программу, содержащую меню, позволяющее:

  • Создавать и выводить одномерный массив чисел (в основном окне).

  • Вычислять сумму четных элементов массива (в основном окне).

  • Сортировать массив по возрастанию или по убыванию и выводить (в 1-м дополнительном окне).

  • Выводить справочную информацию о программе (во 2-м дополнительном окне).

  • Завершать работу программы.

Вычисление суммы и сортировки оформить в виде подпрограмм, которые поместить в отдельный дополнительный модуль.

  1. Разработать программу, содержащую меню, позволяющее:

  • Создавать, открывать и сохранять текстовый фал из нескольких строк, содержащих фамилию и имя (в основном окне).

  • Находить в тексте заданное имя (InputBox, ShowMessage).

  • Сортировать строки текста в алфавитном или в обратном порядке (в основном окне).

  • Выводить отдельно список фамилий или список имён (в 1-м дополнительном окне).

  • Выводить информацию об авторе программы (во 2-м дополнительном окне).

  • Завершать работу программы.

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

  1. Приложение, обеспечивающее для функции f(x), выбираемой из заданного набора (компонент TComboBox), вычисление в произвольном диапазоне значений аргумента[a,b],разбиваемом на N интервалов, и представление в табличном виде:

  • в произвольных сочетаниях значений самой функции, приближенных значений ее первой и второй производной и накапливаемых значений интеграла на соответствующих значениях аргумента;

  • приближения корней уравнения f(x)=0;

  • приближения экстремумов f(x) и значений функции в них.

F(x)=Sin(z)*Sh(z*x)+Sh(z)*Sin(z*x);

F(x)=Sin(z*x)*Sh(z)-Sh(z*x)*Sin(z); ( уравнения собственных форм колебаний).

Значения z выбираются из заданного списка в компоненте TComboBox.

  1. Разработать программу для работы с файлами, в которых содержится информация о работниках предприятия. Файл анкетных данных, файл продвижений по службе, файл предыдущих мест работы и должностей и др. Обеспечить возможность добавления новых данных, удаления и корректировки данных, подбора сотрудников по заданным критериям, сортировку подборки по разным признакам и др.

12

РУБЕЖНЫЙ КОНТРОЛЬ

Многооконные и многомодульные приложения – 30(18) баллов.

13

Графика в Delphi. Построение и преобразование изображений. Компоненты TImage, TShape. Свойство Canvas.

Графика в Delphi. Движение. Компонент TTimer.

  1. Используя различные методы рисования графических примитивов (линия, прямоугольник, круг, эллипс, дуги и т.д.), изобразить дом (автомобиль, корабль, самолёт, автобус, бабочку, рыбу, жука, кошку и т.п.) и подписать рисунок. Выполнить линейные преобразования (перенос, масштабирование, поворот) с ними.

  2. Изобразить один из вариантов анимации:

  • Подпрыгивающий и вращающийся разноцветный мяч.

  • Уменьшающийся в размере (тающий) снеговик, под которым появляется лужа.

  • Два разноцветных круга, произвольно движущихся по прямоугольному полю и отскакивающих друг от друга и от границ этого поля.

  • Часы, с циферблатом и движущимися стрелками.

  • Спутник, стартующий с Земли, облетающий Луну (по эллиптической траектории) и возвращающийся обратно.

  • Колебательное движение маятника. Маятник представляет собой нить, на конце которой - вращающееся колесо со спицами.

  • Движение по диагонали экрана треугольника с одновременным его вращением вокруг одной из вершин.

  • Движение планет солнечной системы, сталкивающихся с произвольно перемещающимися по системе телами.

14

15

Графика в Delphi. Построение графиков функций.

  1. Разработать программу, позволяющую строить график функции (например, y=sin(x)) в диапазоне изменения x от А до В (В>A - вводятся по запросу). Поле вывода графика покрыто координатной сеткой, а на осях системы координат подписаны значения аргумента и функции.

  2. Разработать программу, позволяющую строить на одном поле графики двух функции (например, y=sin(x) и y=2cos(x)) в одном и в разных масштабах. Использовать процедурный тип.

  3. В дополнение к задаче 11.3 построить в новом окне график функции, которая представляет собой отношение выбранной из заданного списка функции к ее максимальному значению.

  4. Построение графика функций с бесконечными разрывами (1/x, tg(x), sin(x)/x и др.).

16

РУБЕЖНЫЙ КОНТРОЛЬ

Графика в Delphi – 20(12) баллов.

17

ЗАЧЕТ



Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5137
Авторов
на СтудИзбе
440
Средний доход
с одного платного файла
Обучение Подробнее