Читайте также:
|
|
С помощью оператора Forосуществляется циклическое выполнение последовательности действий, управляемой переменной цикла, которой присваиваются последовательно возрастающие или убывающие значения.
Оператор имеет два варианта записи:
1. For <переменная цикла>:= <начало > to <конец> do < оператор>
(С возрастанием переменной цикла)
После вычисления и проверки начального и конечного значений переменной цикла (начало <= конец), выполняются операторы, образующие тело цикла. Далее значение переменной цикла увеличивается на единицу, и процесс, включающий проверку и выполнение операторов, повторяется. Если переменная цикла превышает конечное значение, то происходит выход из цикла и выполняется оператор, следующий за структурой For.
2. For <переменная цикла>:= <начало > downto <конец> do < оператор >
( С убыванием переменной цикла )
В данной конструкции отличие в том, что переменная цикла при каждом повторении уменьшается на единицу, поэтому начальное значение переменной должно быть больше конечного.
Вопрос №12: Базовые алгоритмы: как ищется сумма элементов
Сумму элементов массива можно подсчитать по формуле s=s+a[i] первоначально задав s=0
нахождение суммы элементов массива, находящихся до первого отрицательного.
s:=0; i:=1;
While a[i]>=0 do Begin
s:=s+a[i]; i:=i+1;
End;
Вопрос №13: базовые алгоритмы: как ищется произведение элементов
Произведение элементов массива можно подсчитать по формуле p=p*a[i], первоначально задав p=1. При работе с элементами массива часто приходится изменять значения некоторых элементов, а так же переставлять элементы в массиве. При перестановке необходимо вводить дополнительную переменную.
Вопрос №14: Базовые алгоритмы: как ищется наибольшее число из заданных
поиск максимального элемента в одномерном массиве.
max:=a[1]; i_max:=1;
For i:=1 to 5 do
If a [i] > max then Begin
max:=a [i];
i_max:=i;
End;
Сортировка простым выбором: Выбирается элемент с наименьшей величиной и меняется местами с первым. Затем эти операции повторяются с оставшимися элементами без первого пока не останется только один элемент - наибольший.
Program Work_2;
Var a: array[1..10] of integer;
Var i,k,x,j,n:integer;
Begin
For i:=1 to 10 do read(a[i]);
For i:=1 to 9 do Begin
k:=i; x:=a[I];
For j:=i+1 to 10 do
If x<a[j] then Begin
x:=a[j]; k:=j;
End;
a[k]:=a[i]; a[i]:=x
End;
For i:=1 to 10 do Write(a[i],' ');
End.
Вопрос №15: Базовые алгоритмы: как ищется наименьшее число из заданных
Вопрос №16: Базовые алгоритмы: как ведется счетчик (номер элемента)
Дата добавления: 2015-01-30; просмотров: 114 | Поможем написать вашу работу | Нарушение авторских прав |