Заполнение по формуле

Каждый элемент массива должен быть рассчитан по формуле (например ai=sin i - cos i)

for i:=1 to 10 do

a[i]:=sin(i)-cos(i);

Вывод массива.

For i:=1 to 10 do writeln(a[i]);

Вывод пятого элемента массива записывается так: write(a[5]);

Алгоритмы работы с массивами

Сумма элементов массива.

Program symma;

var a: array [1..10] of integer;

i, s: integer;

begin

s:=0;

for i:=1 to 10 do

begin

readln(a[i]);

s:=s+a[i];

end;

writeln (‘Сумма= ’,s);

еnd.

Сумма положительных чисел.

Program symma2;

var a: array [1..10] of integer;

i, s: integer;

begin

s:=0;

for i:=1 to 10 do

begin

readln(a[i]);

if a[i]>0 then s:=s+a[i];

end;

writeln (‘Сумма положительных чисел = ’,s);

еnd.

Сумма и количество положительных чисел.

Program symma-kol;

var a: array [1..10] of integer;

i, s,k: integer;

begin

s:=0; k:=0;

for i:=1 to 10 do

if a[i]>0 then begin k:=k+1; s:=s+a[i]; end;

writeln (‘Сумма ’,s, ‘ количество’, k);

еnd.

Поиск заданного элемента в массиве.

Найти элементы массива большие числа 5.

Program elem;

var a: array [1..10] of integer;

i: integer;

begin

for i:=1 to 10 do

if a[i]>5 then writeln(a[i]);

еnd.

Поиск наибольшего (наименьшего) элемента в массиве.

Program mm;

var a: array [1..10] of integer;

i, max, min: integer;

begin

for i:=1 to 10 do readln(a[i]);

max:=a[1]; min:=a[1];

for i:=1 to 10 do

begin

if a[i]>max Then max:=a[i];

if a[i]<min Then min:=a[i];

end;

writeln (‘ max=’,max,’ min=’, min);

еnd.

Упорядочение массива

Упорядочение (сортировка) - это расположение значений элементов массива в порядке возрастания или убывания их значений.

Некоторые типичные действия с массивами:

· вывод массива;

· ввод массива;

· поиск в массиве заданного элемента;

· поиск в массиве минимального или максимального элемента;

· сортировка массива.

Вывод массива.

Под выводом массива понимается вывод на экран значений элементов массива. если в программе необходимо вывести значения всех элементов массива, то для этого удобно использовать оператор цикла for, переменная – счетчик которой может быть использована как индекс элемента массива.

var

a: array [1..20] of integer;

i, n: integer;

begin

clrscr;

for i:=1 to n do

writeln (a[i]); {вывод в столбик}

либо write (a[i],’ ‘); {вывод в строчку}

либо writeln (‘a[‘,i,’]=’,a[i]); {вывод с пояснениями}

readln;

end

Задание:

1. В массиве хранятся значения роста двадцати человек. С помощью датчика случайных чисел заполнить массив целыми значениями, лежащими в диапазоне от 50 до 100 включительно.

2. Заполнить массив из двенадцати элементов следующим образом:

     

3. Заполнить массив из двадцати элементов следующим образом:

     

Ввод массива.

Под вводом массива понимается ввод значений элементов массива. Как и вывод массива, ввод удобно реализовать с помощью оператора цикла for. Чтобы пользователь программы знал, ввода какого элемента массива ожидает программа, следует организовать вывод подсказок перед вводом очередного элемента массива. В подсказке обычно указывают индекс элемента массива.

var

a: array [1..20] of integer;

i, n: integer;

begin

clrscr;

writeln (’Введите количество элементов массива’); readln (n);

for i:=1 to n do begin

write (‘a[‘,i,’]=’);

readln (a[i]);

end;

Пример: Найти сумму элементов массива.

var

a: array [1..20] of integer;

i, n, s: integer;

begin

clrscr;

s:=0;

writeln (’Введите количество элементов массива’); readln (n);

for i:=1 to n do begin

write (‘a[‘,i,’]=’);

readln (a[i]);

s:=s+a[i];

end;

writeln (‘Сумма элементов массива=’,s);

readln;

end.

Задание:

1. Заполнить массив:

а) десятью первыми членами арифметической прогрессии с известным первым членом прогрессии a и ее разностью p;

б) двадцатью первыми членами геометрической прогрессии с известным первым членом прогрессии a и ее знаменателем z.

2. Дан массив. Все его элементы:

а) уменьшить на 20;

б) умножить на последний элемент;

в) увеличить на число b.

3. Определить:

а) сумму всех элементов массива;

б) произведение всех элементов массива;

в) сумму квадратов всех элементов массива;

г) сумму шести первых элементов массива;

д) сумму элементов массива с k 1-го по k 2-й (значения k 1 и k 2 вводятся с клавиатуры; k 2> k 1);

е) среднее арифметическое всех элементов массива;

ж) среднее арифметическое элементов массива с s 1-го по s 2-й (значения s 1 и s 2 вводятся с клавиатуры; s 2> s 1).

4. Дан массив. Напечатать:

а) все неотрицательные элементы;

б) все элементы, не превышающие числа 100.

5. Дан массив целых чисел. Напечатать:

а) все четные элементы;

б) все элементы, оканчивающиеся нулем.

6. Дан массив натуральных чисел. Напечатать:

а) все элементы массива, являющиеся двузначными числами;

б) все элементы массива, являющиеся трехзначными числами.

7. Дан массив. Напечатать:

а) второй, четвертый и т.д. элементы;

б) третий, шестой и т.д. элементы.

Поиск в массиве.

При решении многих задач возникает необходимость установить, содержит ли массив определенную информацию или нет. Например, определить есть ли в массиве нулевые элементы. Задачи такого типа называются поиском в массиве.

Для организации поиска в массиве могут быть использованы различные алгоритмы. Наиболее простой – это алгоритм простого перебора. Поиск осуществляется последовательным сравнением элементов массива с образцом.

Например:

· Определить сколько раз в массиве встречается число а.

var

b: array [1..20] of integer;

i, n, k, a: integer;

begin

clrscr;

k:=0;

writeln (‘Введите искомое число’); readln (a);

writeln (’Введите количество элементов массива’); readln (n);

for i:=1 to n do begin

write (‘b[‘,i,’]=’);

readln (b[i]);

if b[i]=a then inc(k);

end;

writeln (‘Количество элементов равных ’,a,’ в массиве ’,k);

readln;

end.

Задачи:

1. Выяснить, верно ли, что сумма элементов массива есть неотрицательное число.

2. Дан массив целых чисел. Выяснить:

а) верно ли, что сумма элементов массива есть четное число;

б) верно ли, что сумма квадратов элементов массива есть пятизначное число.

3. Определить количество положительных и количество отрицательных элементов массива.

4. Дан массив. Найти:

а) сумму элементов массива, значение которых не превышает 20;

б) сумму элементов массива, больших числа a.

5. Дан массив целых чисел. Найти:

а) сумму нечетных элементов;

б) сумму элементов, кратных заданному числу;

в) сумму элементов массива, кратных a или b.

6. Определить сумму второго, четвертого, шестого и т.д. элементов массива.

7. Определить частное от деления суммы положительных элементов массива на модуль суммы отрицательных элементов.

8. Дан массив целых чисел. Определить количество четных элементов и количество элементов, оканчивающихся на цифру 5.

9. Определить количество элементов массива, принадлежащих промежутку от a до b (значения a и b вводятся с клавиатуры; b > a).

10. Найти число пар ''соседних'' элементов массива, являющихся четными числами.

11. Найти число пар ''соседних'' элементов массива, оканчивающихся нулем.

12. Найти число элементов массива, которые больше своих ''соседей'', т.е. предшествующего и последующего.

13. Найти среднее арифметическое элементов массива, больших числа 10.

14. Найти средние арифметические положительных и отрицательных элементов массива.

15. Дан массив вещественных чисел.

а) Каждый отрицательный элемент заменить на его абсолютную величину.

б) Все элементы с нечетными номерами заменить на их квадратный корень.

в) Из всех положительных элементов вычесть элемент с номером k 1, из остальных - элемент с номером k 2.

г) Все элементы с нечетными номерами увеличить на 1, с четными - уменьшить на 1.

д) Из всех положительных элементов вычесть элемент с номером k 1, из всех отрицательных - число n. Нулевые элементы оставить без изменения.

е) Ко всем нулевым элементам прибавить n, из всех положительных элементов вычесть a, ко всем отрицательным прибавить b.

16. Дан массив вещественных чисел.

а) Каждый элемент, больший 10, заменить на его квадратный корень.

б) Все элементы массива с четными номерами заменить на их абсолютную величину.

в) Ко всем отрицательным элементам прибавить элемент с номером m 1, к остальным - элемент с номером m 2.

г) Все элементы с четными номерами удвоить, с нечетными - уменьшить на 1.

д) Ко всем отрицательным элементам прибавить элемент с номером a 1, из всех нулевых вычесть число b. Положительные элементы оставить без изменения.

е) Из всех положительных элементов вычесть a, из всех отрицательных вычесть b. Ко всем нулевым элементам прибавить c.

17. Дан массив целых чисел.

а) Все элементы, оканчивающиеся цифрой 4, уменьшить вдвое.

б) Все четные элементы заменить на их квадраты, а нечетные удвоить.

в) Четные элементы увеличить на a, а из элементов с четными номерами вычесть b.

18. Дан массив целых чисел.

а) Все элементы, кратные числу 10, заменить нулем.

б) Все нечетные элементы удвоить, а четные уменьшить вдвое.

в) Нечетные элементы уменьшить на m, а элементы с нечетными номерами увеличить на n.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: