Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Примеры использования процедур и функций модуля Crt




Пример 1.

uses Crt;

begin

...

TextColor(Red); {устанавливает красный цвет}

writeln(’Ага!’);

TextColor(Red+Blink); {устанавливает мигающий красный цвет}

writeln(’Ого!’);

...

end.

Пример 2.

Задание. С помощью символов «*» построить на экране график функции , таким образом, чтобы график функции был «растянут» на весь экран. Диапазон изменения .

Решение. Размер экрана - 80 столбцов на 25 строк. Верхний левый угол экрана имеет координаты (1, 1), правый нижний - (80, 25). Шаг по х должен быть подобран таким образом, чтобы диапазон изменения «укладывался» в 80 позиций. Область значений функции у - [-1, 1], поэтому по у также должен быть подобран коэффициент «растягивающий» область значений на 25 строк.

Для поиска коэффициентов преобразования номера столбца в аргумент необходимо решить систему уравнений:

Здесь ,  - конец и начала отрезка , ; ,  - минимальное и максимальное значение координаты – номера столбца , , тогда

,

Система уравнений для определения номера строки по значению функции:

Здесь ,  - минимальное и максимальное значение функции на отрезке: , ; ,  - минимальное и максимальное значение координаты – номера строки , , тогда

,

 

uses Crt;

var i: integer;

x, y: real;

begin

ClrScr;

for i:=1 to 80 do

begin

x:= (i – 1) * 2*pi/79;

y:= 13 – 12*sin(x);

gotoXY(i,trunc(y));

write(’*’);

end;

repeat

until KeyPressed;

end.

 

Задания для самостоятельной работы

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

Задачи

1. Разработать программу, которая с помощью символов «*» строит на экране график заданной функции , так, чтобы график функции был «растянут» на весь экран.

1.1.

1.2.

1.3.

1.4.

1.5.

1.6.

1.7.

1.8.

1.9.

1.10.

1.11.

1.12.

2. Доработать программу таким образом, чтобы символы «*» выводились на экран разными цветами: для значений  <  - жёлтым, для значений  >  - красным, во всех остальных случаях - белым.

№ варианта
2.1. 0.25 0.75
2.2. 0.5 0.8
2.3. 0.5 1.5
2.4. -1 0.5
2.5. 0.1 5
2.6. 0.63 1.88
2.7. 1 3
2.8. 1 4
2.9. 0.5 0.8
2.10. 0.5 1.5
2.11. 0.04 0.1
2.12. 0.06 0.1

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

3.1. Модуль должен содержать

3.1.1. описание типа Matrix_3x3 (двумерный массив), для хранения матрицы размером 3х3 элементов;

3.1.2. процедуру задания значений массива типа Matrix_3x3 с клавиатуры;

3.1.3. процедуру вывода на экран значений массива типа Matrix_3x3;

3.1.4. функцию сложения двух матриц, хранящихся в массивах типа Matrix_3x3.

3.2. Модуль должен содержать

3.2.1. описание типа StatData15 - одномерный массив на 15 элементов;

3.2.2. процедуру заполнения массива типа StatData15 случайными значениями (с помощью функции random);

3.2.3. процедуру вывода на экран значений массива типа StatData15;

3.2.4. функцию поиска минимального значения в массиве типа StatData15;

3.2.5. функцию расчёта математического ожидания по значениям массива типа StatData15.

3.3. Модуль должен содержать

3.3.1. описание типа Matrix_5x5 (двумерный массив), для хранения матрицы размером 5х5 элементов;

3.3.2. процедуру заполнения массива типа Matrix_5x5 случайными значениями (с помощью функции random);

3.3.3. процедуру вывода на экран значений массива типа Matrix_5x5;

3.3.4. процедуру транспонирования матрицы, хранящейся в массиве типа Matrix_5x5.

3.4. Модуль должен содержать

3.4.1. описание типа StatData10 - одномерный массив на 10 элементов;

3.4.2. процедуру задания значений массива типа StatData10 с клавиатуры;

3.4.3. процедуру вывода на экран значений массива типа StatData10;

3.4.4. функцию расчёта математического ожидания по значениям массива типа StatData10;

3.4.5. функцию расчёта дисперсии по значениям массива типа StatData10.

3.5. Модуль должен содержать

3.5.1. описание типа Matrix_5x5 (двумерный массив), для хранения матрицы размером 5х5 элементов;

3.5.2. процедуру заполнения массива типа Matrix_5x5 случайными значениями (с помощью функции random);

3.5.3. процедуру вывода на экран значений массива типа Matrix_5x5;

3.5.4. процедуру смены знака всех элементов матрицы, хранящейся в массиве типа Matrix_5x5.

3.6. Модуль должен содержать

3.6.1. описание типа StatData8 - одномерный массив на 8 элементов;

3.6.2. процедуру задания значений массива типа StatData8 с клавиатуры;

3.6.3. процедуру вывода на экран значений массива типа StatData8;

3.6.4. функцию поиска максимального значения в массиве типа StatData8;

3.6.5. функцию расчёта математического ожидания по значениям массива типа StatData8.

3.7. Модуль должен содержать

3.7.1. описание типа StatData10 - одномерный массив на 10 элементов;

3.7.2. процедуру задания значений массива типа StatData10 с клавиатуры;

3.7.3. процедуру вывода на экран значений массива типа StatData10;

3.7.4. процедуру сортировки массива типа StatData10 по возрастанию.

3.8. Модуль должен содержать

3.8.1. описание типа StatData20 - одномерный массив на 20 элементов;

3.8.2. процедуру заполнения массива типа StatData20 случайными значениями (с помощью функции random);

3.8.3. процедуру вывода на экран значений массива типа StatData20;

3.8.4. функцию расчёта математического ожидания по значениям массива типа StatData20;

3.8.5. функцию расчёта среднеквадратичного отклонения по значениям массива типа StatData20.

3.9. Модуль должен содержать

3.9.1. описание типа Matrix_3x3 (двумерный массив), для хранения матрицы размером 3х3 элементов;

3.9.2. процедуру задания значений массива типа Matrix_3x3 с клавиатуры;

3.9.3. процедуру вывода на экран значений массива типа Matrix_3x3;

3.9.4. процедуру сложения двух матриц, хранящихся в массивах типа Matrix_3x3.

3.10. Модуль должен содержать

3.10.1. описание типа StatData20 - одномерный массив на 20 элементов;

3.10.2. процедуру заполнения массива типа StatData20 случайными значениями (с помощью функции random);

3.10.3. процедуру вывода на экран значений массива типа StatData20;

3.10.4. процедуру сортировки массива типа StatData20 по убыванию.

3.11. Модуль должен содержать

3.11.1. описание типа Matrix_4x4 (двумерный массив), для хранения матрицы размером 4х4 элементов;

3.11.2. процедуру задания значений массива типа Matrix_4x4 случайными значениями (с помощью функции random);

3.11.3. процедуру вывода на экран значений массива типа Matrix_4x4;

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

3.12. Модуль должен содержать

3.12.1. описание типа Matrix_4x4 (двумерный массив), для хранения матрицы размером 4х4 элементов;

3.12.2. процедуру заполнения массива типа Matrix_4x4 случайными значениями (с помощью функции random);

3.12.3. процедуру вывода на экран значений массива типа Matrix_5x5;

3.12.4.  процедуру инвертирования матрицы, хранящейся в массиве типа Matrix_5x5.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...