Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
Длина интервала 101, смещение начала интервала –50.
random(101)-50
Пример 2: необходим интервал [20 .. 30].
Длина интервала - 11, смещение начала интервала 20.
random(11)+20
Пример 3: необходим интервал [-1000 .. -500]
Длина интервала 501, смещение начала интервала -1000
random(501)-1000
Задача 3: Вывод массива.
Алгоритм состоит из двух пунктов:
1. Вывод имени массива.
2. Вывод массива по элементам.
Фрагмент программы:
…
{1 - вывод имени массива}
writeln ('Массив А[',n,']');
{2 - вывод элементов массива}
for i:=1 to n do
writeln('A[',i,']=',a[i]);
…
Вычисление суммы и среднего арифметического элементов
массива
Задача 4: Подсчитать сумму элементов массива.
Алгоритм содержит два пункта:
1. Сумма S=0.
2. Проход по всем элементам массива и прибавление их значений к
сумме S.
Приведем полный текст программы – решение этой задачи:
{Пример обработки одномерного массива}
{ Задание: Ввести массив. Подсчитать сумму элементов массива.}
.........
Begin
{ ввод массива с клавиатуры }
write(‘Введите n=’);
read(n); {ввод количества элементов}
for i:=1 to n do
read(A[i]); {ввод самих элементов}
{Подсчет суммы элементов массива}
{1} s:=0;
{2} for i:=1 to n do
s:=s+A[i];
{Вывод полученного значения суммы}
writeln(‘сумма элементов массива S=’, S);
end. {конец программы}
Задача 5: Вычислить среднее арифметическое элементов
массива.
Алгоритм содержит три пункта. Первые два совпадают с
предыдущей задачей:
1. Сумма s=0.
2. Проход по всем элементам массива и прибавление их значений к
сумме s.
3. Сумму делим на количество элементов массива sa=s/n.
Фрагмент программы:
Var {дополнительные переменные}
s: integer; {сумма элементов массива}
sa:real; {среднее арифметическое элементов массива}
…
Begin
...
{1} s:=0;
{2} for i:=1 to n do
s:=s+A[i];
{3} s:=s/n;
…
Поиск максимального/минимального элемента массива
Задача 6: Найти значение максимального элемента массива.
Алгоритм содержит три пункта:
1. Максимальным элементом считаем первый элемент: max=A[1].
2. Начиная со второго элемента, сравниваем имеющийся
максимальный элемент max с очередным элементом массива A[i].
3. Если очередной элемент массива больше имеющегося
максимального элемента, то это и есть новый максимальный
элемент max=A[i].
Фрагмент программы:
Var {дополнительные переменные}
max:integer; {значение максимального элемента массива}
…
Begin
...
{1} max:=A[1];
{2} for i:=2 to n do
{3} if A[i]>max then max:=A[i];
…
Задача 7: Найти min и max значения элементов массива.
Фрагмент программы:
Var {дополнительные переменные}
max, min:integer;{значение максимального и минимального
элементов массива}
…
Begin
...
max:=A[1];
min:=A[1];
for i:=2 to n do
if A[i]>max then max:=A[i]
else if A[i]<min then min:=A[i];
…
Подсчет количества элементов, удовлетворяющих заданному
условию
Задача 8: Подсчитать, сколько раз в массиве встречается
элемент, равный 10.
Задача решается по следующему алгоритму:
1. Количество нужных элементов k=0.
2. Проходим по всем элементам массива,
3. И если очередной элемент массива равен 10,
4. Тогда увеличиваем k (количество элементов равных 10) на 1.
Фрагмент программы:
Var {дополнительные переменные}
k:integer; {количество элементов, равных 10}
…
Begin
...
{1} k:=0;
{2} for i:=1 to n do
{3} if A[i]=10
{4} then k:=k+1;
…
Удаление элемента из массива
Задача 9: Удалить из массива 1-ый элемент.
Удаление элемента заключается в:
1. сдвиге элементов, стоящих правее удаляемого влево;
2. уменьшении количества элементов массива n на количество
удаляемых элементов.
Сдвиг элементов выполняется так:
1. Начиная с удаляемого элемента, копируем содержимое элемента,
стоящего правее в текущий элемент: A[i]:=A[i+1].
2. Переходим к следующему элементу вправо: i:=i+1.
3. Заканчиваем сдвиг, когда i=n-1, так как i+1 при i=n-1 равен n..
Фрагмент программы:
…
{1 - сдвигаем элементы на одну позицию вправо}
{вначале i:=1, потому что надо удалить 1-ый элемент}
for i:=1 to n-1 do
A[i]:=A[i+1];
{2 - уменьшаем количество элементов в массиве}
n:=n-1;
…
Задача 10: Удалить из массива максимальный элемент массива.
Для этого надо:
1. Найти индекс максимального элемента.
2. Удалить элемент с найденным индексом.
Фрагмент программы:
Var {дополнительные переменные}
imax:IndexEl; {индекс максимального элемента}
…
Begin
...
{1 - ищем индекс максимального элемента массива}
imax:=1; {вначале imax указывает на первый элемент}
{в цикле начиная со 2-го элемента}
for i:=2 to n do
{сравниваем i-ый элемент с максимальным на текущий
момент времени, и если i-ый элемент больше
максимального, то максимальным становится
i-ый элемент}
if A[i]>A[imax] then imax:=i;
{2 - удаляем элемент массива с индексом imax}
for i:=imax to n-1 do
A[i]:=A[i+1];
dec(n); {уменьшаем n на 1}
Замечание: в ТР имеются процедуры увеличения и уменьшения
переменной целого типа.
Inc - увеличение значения переменной.
Вид вызова для целого X
Inc(x); x:=x+1;
Inc(x, n); x:=x+n;
где x - переменная целого типа;
n - целочисленное выражение.
В первом случае переменной x присваивается следующее
значение (например, x была равна 10, тогда после выполнения inc(x)
x равна 11). Таким образом, можно сказать, что запись inc(x)
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 |


