ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 23.03.2025
Просмотров: 1040
Скачиваний: 2
ция Format при преобразовании значений в строку (табл. 2.1). Кроме того, в табл. 2.1 используется как пример численное значение
1234,5.
Таблица 2.1 – Символы-заполнители пользовательских форматов
Символ- |
Действие |
заполнитель |
|
0 |
Цифровой символ, отображает цифру, если таковая |
находится в этой позиции, или 0, если – нет. Можно |
|
использовать символ 0 для отображения начальных |
|
нулей для целых чисел и конечных нулей в десятич- |
|
ных дробях; 00000.000 отображает 01234,500 |
|
# |
Цифровой символ, отображает цифру, если таковая |
находится в этой позиции, иначе — не отображает |
|
ничего. Символ-заполнитель # эквивалентен 0, кро- |
|
ме того, что начальные и конечные нули не отобра- |
|
жаются; #####.### отображает 1234,5 |
|
$ |
Отображает знак доллара; $###,###.00 отображает |
$1 234,50 |
|
. (точка) |
Десятичный символ-заполнитель, отображает деся- |
тичную точку в обозначенной позиции в строке |
|
символов-заполнителей 0; #.##.## отображает 1234,5 |
|
% |
Символ процента, умножает значение на 100 и до- |
бавляет знак процента в позицию, указанную сим- |
|
волами-заполнителями 0; #0.00% отображает число |
|
0.12345 как 12,35% (12,345 округляется до 12,35) |
|
, (запятая) |
Разделитель тысяч, добавляет запятые как раздели- |
тели тысяч в строках символов-заполнителей 0 и #; |
|
###,###,###.00 отображает 1 234,50 |
|
Е-, е- |
Отображает значения в экспоненциальном формате |
со знаком порядка только для отрицательных значе- |
|
ний; #.####Е–00 отображает 1,2345Е03; 0,12345 |
|
отображается как 1,2345Е-01 |
|
Е+, е+ |
Отображает значения в экспоненциальном формате |
со знаком порядка для положительных и отрицате- |
|
льных значений; #.####Е+00 отображает 1,2345Е+03 |
46
Пример 1. Процедура, использующая для ввода-вывода файлы на диске и форматирование данных.
Код процедуры lab2
Sub lab2()
Dim x, y As Single
Open "z:\PETROV\LAB2\dat2.txt" For Input As #1
Open "z:\ PETROV\LAB2\res2.txt" For Output As #2
Print #2, Tab(10); "результаты расчетов"
10 Input #1, x
If EOF(1) Then GoTo 99
y = Sin(x)
Print #2, Tab(10); " x= "; Spc(3); Format(x, "##.0#"); _
Tab(30); " y= "; Spc(3); Format(y, "#.##0E+")
GoTo 10
99 Print #2, Tab(15); "Студент Петров ИВАН"
Close #1
Close #2
End Sub
Пояснения к программе.
Функции Tab(n) – перемещает позицию вывода на n позиций относительно начала. Функция Spc(n) – заполняет пробелами n позиций, относительно текущей позиции.
Чтобы позиционировать позицию вывода сразу после последнего выведенного символа, используется разделитель точка с запя-
той (;).
47
Функция EOF (file_number) возвращает значение истина при достижении конца файла, целым допустимым номером file_number.
Файл исходных данных создается в папке лабораторной работы до выполнения программы. Файл результата получается в папке лабораторной работы после выполнения программы.
Файл исходных данных dat2.txt
1
2
3
4
Файл результатов res2.txt
результаты расчетов
x= |
1,0 |
y= |
8,415E-1 |
x= |
2,0 |
y= |
9,093E-1 |
x= |
3,0 |
y= |
1,411E-1 |
x= |
4,0 |
y= |
-7,568E-1 |
Студент Петров ИВАН
2. Практическая часть.
Задание 1. Составить процедуру для вычисления и печати значений функции из таблицы 2.2. Вычислить 8 значений функции на заданном интервале. Исходные данные задать в файле Dat2.txt. Ре-
48
зультат поместить в файл вывода с именем Res2.txt в заданной форме (таблица 2.3).
Таблица 2.2 |
|||||||||||||
№ |
Функция |
Контр. Зна- |
Интервал x |
Вариант |
|||||||||
чение |
xmin |
xmax |
формы |
||||||||||
x* |
y* |
вывода |
|||||||||||
1 |
y = |
(x3 - 6x2)1/3 |
3,0 |
-9,4 |
-3 |
8 |
1 |
||||||
2 |
y = ln10∙(2 - |
x5-1 ) |
1,0 |
4,6 |
-2 |
2 |
2 |
||||||
3 |
y = (2/ )∙arctg x2 |
-1,5 |
0,73 |
-3 |
3 |
3 |
|||||||
4 |
y = x5 - 5x4 + 4 |
1,6 |
4,2 |
-1,5 |
2,5 |
4 |
|||||||
5 |
y = ln |
∙ ex -1 |
0,5 |
0,74 |
-2 |
2 |
1 |
||||||
6 |
y = ln10∙x1/2 ∙e-x |
+ 1 |
1,4 |
1,7 |
1 |
5 |
2 |
||||||
7 |
y = (4x3 - x4)∙e-1/2 |
1,5 |
5,1 |
-1 |
4 |
3 |
|||||||
8 |
y = x3 - |
x2 - 9x+35 |
-0,8 |
39,7 |
-4 |
4 |
4 |
||||||
9 |
y = x∙sinx / |
/2 |
0,5 |
-5 |
5 |
1 |
|||||||
10 |
y = 2 |
/ (x2 + |
) |
0,5 |
1,9 |
-3 |
3 |
2 |
|||||
11 |
y = ln |
(x3 + x2)1/2 |
-0,6 |
0,43 |
-1 |
1,5 |
3 |
||||||
12 |
y = ln8 - 5x4 + |
x5 |
0,7 |
1,4 |
-1,5 |
3,5 |
4 |
||||||
13 |
y = (2 )-1/2 ∙e-x |
0,5 |
1,5 |
0 |
3 |
1 |
|||||||
14 |
y = (x2 - 5x + 6)/(x2 + 1) |
-2 |
4,0 |
-6 |
6 |
2 |
|||||||
15 |
y = e-x∙sin(2 |
x) |
0,2 |
0,78 |
0 |
2 |
3 |
||||||
16 |
y = 2x - |
x2/3 |
1,2 |
-1,1 |
-0,5 |
4 |
4 |
||||||
17 |
y = |
(1,41 - x2)3 |
0,5 |
4,9 |
-1,5 |
1,5 |
1 |
||||||
18 |
y = ex∙x/(x2 + 1) |
1/e |
6,5 |
-3 |
3 |
2 |
|||||||
19 |
y = 1,41(x3 + x4/4) |
-2,5 |
-8,3 |
-4 |
2 |
3 |
|||||||
20 |
y = 1/e + |
x 1/2 |
0,8 |
3,2 |
-2 |
2 |
4 |
||||||
21 |
y = - |
2x / (x2 + 1) |
1,2 |
-4,9 |
-3 |
3 |
1 |
||||||
22 |
y = x2 - |
x-1 |
+ 1 |
-2,1 |
-4,3 |
-5 |
4 |
2 |
|||||
23 |
y = e1/2∙ |
x2 - 1 - 2 |
0,25 |
1,75 |
-2 |
2 |
3 |
||||||
24 |
y = |
1/2∙x∙arctgx |
1 |
1,4 |
-2 |
3 |
4 |
||||||
25 |
y = x2/3 - (x2 - 1)1/3 |
0,5 |
1,5 |
-2 |
2 |
1 |
|||||||
49 |
|||||||||||||
№ |
Функция |
Контр. Зна- |
Интервал x |
Вариант |
||||||||||
чение |
xmin |
xmax |
формы |
|||||||||||
x* |
y* |
вывода |
||||||||||||
26 |
y = x (1-x2)1/2/ln2 |
0,8 |
0,69 |
-1 |
1 |
2 |
||||||||
27 |
y = 2x5/3 - x2/3 + |
1,1 |
4,4 |
1,5 |
2,5 |
3 |
||||||||
28 |
y = |
3(x2 - x4)1/2 |
0,7 |
15,5 |
-1 |
1 |
4 |
|||||||
29 |
y = (x+1)2/3/e1/2 |
1,2 |
1,03 |
-2 |
2 |
1 |
||||||||
30 |
y = |
2x2 - 100(1+x)1/2 |
1,5 |
-136 |
-1 |
3 |
2 |
|||||||
Таблица 2.3 |
||||||||||||||
Вариант |
Форма вывода информации |
|||||||||||||
формы выво- |
||||||||||||||
да |
||||||||||||||
1 |
Таблица значений |
|||||||||||||
I---------------------------------------I |
||||||||||||||
I |
X |
I |
Функция |
I |
||||||||||
I---------------------------------------I |
||||||||||||||
I X=… |
I |
Y=… |
I |
|||||||||||
I X=… |
I |
Y=… |
I |
|||||||||||
I---------------------------------------I |
||||||||||||||
Составил: < Ф.И.О. > |
||||||||||||||
2 |
Таблица |
|||||||||||||
******************************* |
||||||||||||||
* X=… |
* |
Y= … |
* |
|||||||||||
******************************* |
||||||||||||||
* X=… |
* |
Y=… |
* |
|||||||||||
******************************* |
||||||||||||||
Составил: < Ф.И.О. > |
||||||||||||||
4 |
Получено: |
|||||||||||||
для заданной функции Y(…)= … |
||||||||||||||
для заданной функции Y(…)= … |
||||||||||||||
. |
||||||||||||||
Составил: < Ф.И.О. > |
||||||||||||||
50 |
||||||||||||||