Табличные процессоры относятся к диалоговым системам, построенным по принципу меню: из списка возможных действий пользователь выбирает то, что ему необходимо. Табличные процессоры обеспечивают:· ввод, хранение и корректировку большого количества данных;· автоматическое обновление результатов вычислений при изменении исходных данных;· дружественный интерфейс;· наглядность и естественную форму документов, представляемых пользователю на экране.В зависимости от вида табличного процессора пользователю доступны различные функции. Как правило, обязательный набор включает следующие основные типы функций:1) для формул при вычислениях:· математические, тригонометрические, включая функции суммирования, произведения, извлечения квадратного корня, логарифмическую и т.п.;· логические функции типа IF (если);· статистические функции средней арифметической и определения количества всех значений в заданном диапазоне клеток;2) текстовые функции, позволяющие отработать некоторым образом текстовые значения клеток, например, отразить только первые три символа текстовой строки;3) финансовые функции для выполнения основных финансовых операций, таких, как определения величины амортизации, величины платежей за инвестиции, начисления процентов и т.п.;4) функции даты и времени;5) функции сгруппированных данных, например, сортировка данных по различным критериям.На основе табличных данных средствами табличного процессора можно проводить графический анализ данных с использованием разнообразных графиков и диаграмм.Возможности табличных процессоров определяются, с одной стороны, характеристиками собственно пакета прикладных программ, а с другой – техническими характеристиками ПК: объемом таблицы (допустимым количеством строк и столбцов), требуемым минимальным объемом оперативной памяти, минимально необходимым объемом дисковой памяти. Основными понятиями табличного процессора Excel являются:<span>· книга – это файл, используемый для обработки и хранения данных, состоящий из отдельных листов;</span><span>· лист – разделен на строки и столбцы и служит основой для выполнения вычислений. Рабочий лист состоит из 256 столбцов и 65536 строк;</span><span>· ячейка – область, определяемая пересечением столбца и строки электронной таблицы (ЭТ);</span><span>· текущая (активная) ячейка – ячейка ЭТ, в которой в данный момент находится курсор;</span><span>· адрес ячейки определяется названием (номером) столбца и номером строки;</span><span>· блок ячеек (диапазон) – группа смежных ячеек, определяемая адресом верхней левой и нижней правой ячеек в прямоугольнике, образуемом блоком. Например, D4:F13;</span><span>· ссылка – ссылка указывает на ячейку или диапазон ячеек листа, которые требуется использовать в формуле;</span><span>· абсолютная ссылка – это ссылка, не изменяющаяся при копировании формулы в другую ячейку;</span><span>· относительная ссылка – это ссылка, автоматически изменяющаяся при копировании в соответствии с положением формулы.</span><span>· формула – это конструкция, начинающаяся со знака “=”, состоящая из математических операторов, значений, ссылок на ячейки и имен функций, при этом результатом выполнения формулы является некоторое новое значение.</span>
<em>// PascalABC.NET 3.2, сборка 1338 от 16.11.2016</em>
type
matrix=array[1..3,1..3] of real;
vector=array[1..3] of real;
procedure MatPrint(a:matrix);
begin
for var i:=1 to 3 do begin
for var j:=1 to 3 do Write(a[i,j]:6:2);
Writeln
end
end;
procedure VecPrint(a:vector);
begin
for var i:=1 to 3 do Write(a[i]:6:2);
Writeln
end;
procedure MV(a:matrix; v:vector; var t:vector);
// Умножение матрицы на вектор
begin
for var i:=1 to 3 do begin
var s:=0.0;
for var j:=1 to 3 do
s+=a[i,j]*v[j];
t[i]:=s
end;
end;
procedure VS(a,b:vector; var t:vector);
// Вычитание векторов
begin
for var i:=1 to 3 do t[i]:=a[i]-b[i]
end;
function SP(a,b:vector):real;
// Скалярное произведение векторов
begin
Result:=0.0;
for var i:=1 to 3 do Result+=a[i]*b[i]
end;
begin
var A:matrix:=((1,2,3),(1,2,1),(3,2,0));
var B:matrix:=((3,1,2),(0,4,3),(1,1,1));
var p:vector:=(0.1,1.7,-1.5);
var q:vector:=(-1.6,0.8,1.1);
var r:vector:=(-0.7,1.3,0.2);
Writeln('Матрица А'); MatPrint(A);
Writeln('Матрица B'); MatPrint(B);
Writeln('Вектор p'); VecPrint(p);
Writeln('Вектор q'); VecPrint(q);
Writeln('Вектор r'); VecPrint(r);
var t1,t2,t3:vector;
MV(A,q,t1);
MV(B,p,t2);
VS(t1,t2,t3);
Writeln('Скалярное произведение равно ',SP(t3,r))
end.
Результаты
Матрица А
1.00 2.00 3.00
1.00 2.00 1.00
3.00 2.00 0.00
Матрица B
3.00 1.00 2.00
0.00 4.00 3.00
1.00 1.00 1.00
Вектор p
0.10 1.70 -1.50
Вектор q
-1.60 0.80 1.10
Вектор r
-0.70 1.30 0.20
Скалярное произведение равно -5.27