Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Создание массива

Читайте также:
  1. Creating and using arrays Создание и использование массивов
  2. Creating constants Создание константы
  3. Creating loops in Swift Создание петель в Swift
  4. Creating optional variables Создание дополнительных переменных
  5. Defining and instantiating classes Определение и создание экземпляра классы
  6. IV. Создание сбалансированного портфеля
  7. Using inheritance Создание вычисляемых свойств

Методы работы с элементами одномерного массива

Изменение значения некоторых элементов

Пример:

Заменить отрицательные элементы на противоположные по знаку.

Решение

Для этого опишем процедуру. Ей будет передавать один параметр - массив, который будет результатом её выполнения, так как некоторые элементы могут быть заменены.

Procedure Substitation1 (Var m: myarray);

Var i: Integer;

Begin

For i:=1 To n Do

If m[i]<0 Then m[i]:=-m[i];

End;

Пример:

Прибавить к каждому элементу число 25.

Решение

Преобразуем предыдущую процедуру.

Procedure Sudstitation2 (Var m: myarray);

Var i: Integer;

Begin

For i:=1 To n Do m[i]:=m[i]+25;

End;

Пример:

Если элемент чётный, то прибавить к нему первый, если нечётный - прибавить последний. Первый и последний элементы не изменять.

Решение

Будем просматривать каждый элемент, кроме первого и последнего, и если он чётный, то есть делиться на 2 без остатка, то увеличим его на значение первого элемента, иначе - на значение последнего элемента.

Procedure Sudstitation3 (Var m: myarray);

Var i: Integer;

Begin

For i:=2 To n-1 Do

If (i<>1) And (i<>n) Then

If m[i] Mod 2=0 Then m[i]:=m[i]+m[I]

Else m[i]:=m[i]+m[n];

End;

Создание массива

Правила заполнения массивов могут быть разными. Рассмотрим два примера.

Пример:

Даны два одномерных массива одинаковой размерности. Получить третий массив такой же размерности, каждый элемент которого равен сумме соответствующих элементов данных массивов.

Решение

Пусть даны два массива А и В, состоящие из пяти элементов. получим из них массив С, состоящий тоже из пяти элементов, первый элемент этого массива равен сумме первых элементов массивов А и В, второй - сумме вторых элементов данных массивов и так далее.

 

i          
A          
B          
C          

 

Для решения этой задачи опишем процедуру, которой передаются три параметра. Первые два - это два исходных одномерных массива, третий - это одномерный массив той же размерности, который является результатом выполнения и заполняется по правилу.

Procedure Sum-Ar (a, b: myarray; Var c: myarray);

Var i: Integer;

Begin

For i:=1 To n Do c[i]:=a[i]+b[i];

End;

Пример:

Дан первый член арифметической прогрессии и её разность. Найти первые n членов.

Решение

Пусть a 1 - это первый член прогрессии, а k - это её разность, тогда i-й член можно найти по правилу - а[i] = a[i-1] + k, или a[i] = aI + k*(i-1), если i = 1, то a[i]=aI. Опишем процедуру, которой передаём эти два параметра и результатом выполнения является одномерный массив. Первый элемент его равен первому члену прогрессии, второй - второму и так далее. Возьмём в качестве основной первую формулу.

Procedure Progress (a1, k: Integer; Var a: myarray);

Var i: Integer;

Begin

a[1]:=a1; For i:=2 To n Do a[i]:=a[i-1]+k

End;


Дата добавления: 2015-08-17; просмотров: 39 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
При выборе отеля есть несколько основных моментов, которые необходимо учесть.| Удаление элемента

mybiblioteka.su - 2015-2024 год. (0.006 сек.)