Поможем написать учебную работу
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.
Тема урока: «Решение типовых задач с массивами»
Контрольные вопросы:
Подсказка. Отмечу, что случайное число из промежутка [-5;5] будет задано формулой: Random(10)-5.
Сумму следует искать в цикле по формуле: S:=S+X(I)
Обязательно надо учесть, что начальное значение величины S должно быть равно 0.
Решение:
Uses crt; Var S,t: integer; x: array [1..12] of integer; Begin Clrscr; Randomize; For i:=1 to 12 do x[i]:=Random(10)-5; Writeln(Массив случайных чисел); For i:=1 to 12 do Write(x[i]:5]; Writeln; S:=0; For i:=1 to 12 do S:=S+x[i]; Write(S=, S:5); End. |
Присоединение модуля Crt Раздел описания переменных Целочисленная переменная Массив Начало алгоритма Очистить экран Заполнение массива Вывод заголовка Вывод массива Перевод курсора на новую строку Обнуление S Вычисление суммы элементов массива Вывод суммы Конец алгоритма |
Сумма |
Произведение |
Количество |
S:=0; for I:=1 to n do S:=S+a(i); |
P:=1; for I:=1 to n do P:=P*a(i); |
K=0; for I=1 to n do K=K+1; |
Сумма |
Произведение |
Количество |
S:=0; for I:=1 to n do if <условие> then S:=S+a(i); |
P:=1; for I:=1 to n do if <условие> then P:=P*a(i); |
K=0; for I=1 to n do if <условие> then K=K+1; |
Здесь S - сумма, P произведение, K количество элементов массива A(n).
Простые операции над массивами.
Задача 1. Массив, состоящий из 15 элементов, заполнен целыми случайными числами из промежутка [0; 100]. Найдите элемент массива, в котором хранится наибольшее число.
Uses crt; Var Max, Nmax, i: integer; x: array [1..15] of integer; Begin Clrscr; Randomize; For i:=1 to 15 do x[i]:=Random(100); Writeln(Массив случайных чисел); For i:=1 to 15 do Write(x[i]:5]; Writeln; Max:=x[1]; Nmax:=1; For i:=2 to 15 do If x[i]>max then Begin Max:=x[i]; Nmax:=I; End; Write(Max=, Max:5, Nmax=”, Nmax:5); End. |
Присоединение модуля Crt Раздел описания переменных Целочисленная переменная Массив Начало алгоритма Очистить экран Заполнение массива Вывод заголовка Вывод элементов массива Перевод курсора на новую строку Поиск максимума Начало цикла Начало ветвления Конец ветвления и цикла Вывод максимального значения и номера максимального элемента Конец алгоритма |
№1. В линейном целочисленном массиве из N элементов найти количество положительных Kp, количество отрицательных Ko, сумму S и среднее арифметическое SA
program arr_1;
uses crt;
var t:array[1..100] of integer;
sa:real; ko,kp,s,i,N:integer;
begin
writeln('vvedite N');
read(N);
writeln('vvedite massiv');
for i:=1 to N do read(t[i]);
s:=0; ko:=0;kp:=0;
for i:=1 to N do
begin
if t[i]<0 then ko:=ko+1;
if t[i]>0 then kp:=kp+1;
s:=s+t[i];
end;
sa:=s/N;
writeln('summa s=',s);
writeln(' sa=',sa:5:2);
writeln('ko=',ko);
writeln('kp=',kp);
end.
№ 2. В линейном целочисленном массиве t из n элементов
найти min значение минимального элемента и его индекс nmin.
program arr_2;
uses crt;
var t:array[1..100] of integer;
min,nmin,i,n: integer;
begin
writeln('vvedite n='); readln(n);
writeln('vvedite massiv');
for i:=1 to n do read(t[i]);
min:=t[1];
nmin:=1;
for i:=2 to n do
if t[i]<min then
begin
min:=t[i];
nmin:=i;
end;
writeln('min=',min);
writeln('nomer min=',nmin);
end.
№ 3. Выполнить сортировку элементов массива А по возрастанию значений элементов.
Алгоритм:
Сравнивая последовательно соседние элементы массива по значению, менять их местами, если они по убыванию. Используем переменную stek для обмена значениями элементов массива.
program sortirovka;
uses crt;
var a:array[1..100] of integer;
n,i,stek:integer;
begin
writeln('введите n=');
readln(n);
writeln('введите массив');
for i:=1 to n do read(a[i]);
For i:=1 To n-1 Do
If a[i+1]<a[i] Then
Begin
stek:=a[i];
a[i]:=a[i+1];
a[i+1]:=stek;
i:=1;
End;
writeln('новый массив');
for i:=1 to n do write(a[i],' ');
End.
Пошаговое выполнение алгоритма для массива из 5 элементов
№i |
1 |
2 |
3 |
4 |
5 |
A[i] |
-5 |
24 |
6 |
3 |
20 |
1-й цикл |
-5 |
6 |
24 |
||
2-й цикл |
-5 |
6 |
3 |
24 |
|
3-й цикл |
-5 |
6 |
3 |
20 |
24 |