Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MU_k_Semestrovoi_rabote.doc
Скачиваний:
20
Добавлен:
13.11.2019
Размер:
1.43 Mб
Скачать

Счётесли(диапазон значений, критерий отбора)

Использование функции СЧЁТЕСЛИ приведено на рис. 35

Рис. 35. Использование функции СЧЁТЕСЛИ в Excel

Циклические алгоритмы и программы

Алгоритмы, при исполнении которых отдельные команды или серии команд выполняются неоднократно, называют циклическими. В Delphi существует три циклических оператора: оператор цикла с предусловием «Пока», оператор цикла с параметром, оператор цикла с постусловием «До».

В MathCad существует три циклических оператора: оператор цикла с предусловием «Пока», оператор цикла с параметром.

Р ассмотрим цикл "пока". Циклический алгоритм имеет вид:

Реализация циклического алгоритма представлена в табл. 11.

Таблица 11. Циклические оператор "пока"

В Delphi

while <условие> do

<тело цикла>;

В MathCad

тело цикла

условие

Выполнение: Сначала вычисляется значение логического выражения. Если значение истинно, то выполняется тело цикла, и снова вычисляется значение выражения. Цикл завершается, когда значение станет ложным.

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

С

Поле 1

Поле 3

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

Поле 2

где в Поле 1 вводится имя переменной, := - оператор присваивания, квадратики справа от символа ":=" вводятся путём нажатия на диапазон значений , находящаяся на панели векторов и матриц. В поле 2 вводится начальное значение аргумента, а в поле 3 – конечное значение аргумента. Шаг изменения аргумента принимается равным 1, когда начальное значение < конечного значения и -1 в противном случае.

Синтаксис задания ранжированной переменной в общем случае имеет вид: n:=nz, nz+h .. kz, где n - имя переменной, nz - начальное значение, h - шаг изменения аргумента, kz - конечное значение.

Последовательность выполнения действий в MathCad рассмотрим на том же примере. Пример вычисления значений функции приведён на рис.36

Рис. 36. Табулирование функции в MathCad

Эту же задачу можно решить разными способами. Ещё один способ решения приведён на рис. 37

Рис. 37. Табулирование функции в MathCad

Функции подсчёта количества отрицательных значений функции y представлены на рис. 38 и рис. 39

Рис. 38. Функция подсчёта количества в MathCad

Рис. 39. Функция подсчёта количества в MathCad

Более подробную информацию смотрите в литературе [1], [2], [17].

Для решения этой задачи в Delphi будем использовать цикл "пока". Листинг программы представлен ниже, а его реализация на рис. 40

procedure TForm1.Button1Click(Sender: TObject);

var Xn,Xk,dX,X,f,a,b:real; k:integer;

begin

Xn:=strtofloat(Edit1.Text); Xk:=strtofloat(Edit2.Text);

dX:=strtofloat(Edit3.Text);

X:=Xn;

a:=strtofloat(Edit4.Text); b:=strtofloat(Edit5.Text);

k:=0;

while X<=Xk do

begin

if X=a then ShowMessage ('Нет решения')

else if X<a then f:=sin(x)/(1-exp (sin (x) *ln (2)))

else if x<b then f:=(2*x)/(1-x)

else f:=x*x-ln (x);

if f<0 then k:=k+1;

Label4.Caption:=Label4.Caption+#13+floattostr(X);

Label5.Caption:=Label5.Caption+#13+floattostr(f);

X:=X+dX;

end;

Label8.Caption:=Label8.Caption+inttostr(k);

end;

Рис. 40. Реализация в Delphi

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]