Типовые задачи на Pascal (массивы). методическая разработка по информатике и икт (9 класс) по теме

Типовые задачи на Pascal (массивы). методическая разработка по информатике и икт (9 класс) по теме

Типовые задачи на Pascal (массивы). Качественное пособие, содержащее краткую теорию, задачи с исходниками решения, а также задания для самостоятельной работы по одно- и двумерным массивам.

Скачать:

ВложениеРазмер paskal.rar 19 КБ

Предварительный просмотр:

Типовые задачи на Паскале (массивы)

Массив - это упорядоченный набор однотипных элементов, обозначаемых одним именем; доступ к элементу массива осуществляется по его номеру.

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

В программе для каждого массива должны быть указаны его параметры: имя, размерность и размер. Бывают одномерные, двумерные и т.д. массивы. Это называется размерностью.

Одномерные массивы (последовательности).

I - номер элемента, A[I] - элемент массива, стоящий на I-ом месте

  1. Сформировать и вывести на экран последовательность из n элементов, заданных датчиком случайных чисел на интервале [-23, 34].

Var a: array[1..100] of integer;

Write (‘Сколько элементов? ’); Readln (n);

2. Найти произведение элементов одномерного массива, состоящего из n элементов. Элементы вводятся с клавиатуры.

Var a: array[1..100] of integer;

Write (‘Сколько элементов? ’); Readln (n);

write (‘введите число’); readln (a[i]);

writeln(‘произведение элементов равно: ‘,p);

3. Найти сумму элементов одномерного массива. Размер произвольный. Элементы вводятся с клавиатуры.

Var a: array[1..100] of real;

Write (‘n=’); Readln (n);

write (‘введите число’); readln (a[i]);

writeln(‘сумма элементов равна ‘,s);

4. Задан массив А, состоящий из n чисел. Найти среднее арифметическое его элементов. Элементы вводятся с клавиатуры.

Var a: array[1..100] of real;

Write (‘n=’); Readln (n);

write (‘введите число’); readln (a[i]);

writeln(‘среднее арифметическое элементов: ‘,s);

5. Найти сумму элементов массива с четными номерами, содержащего N элементов. Элементы вводятся с клавиатуры.

Var a: array[1..100] of real;

Write (‘n=’); Readln (n);

write (‘введите число’); readln (a[i]);

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

writeln(‘сумма элементов с четными номерами: ‘,s);

6. Сформировать и вывести на экран массив, элементы которого заданы датчиком случайных чисел на интервале [-19, 26] (размер произвольный). Найти произведение элементов с нечетными номерами.

Var a: array[1..100] of integer;

Write (‘Сколько элементов? ’); Readln (n);

if i mod 2 0 then P=P*a[i];

Writeln(‘Произведение элементов с нечетными номерами:’, P);

7. Сформировать и вывести на экран массив, элементы которого заданы датчиком случайных чисел на интервале [-56, 47] (размер произвольный). Найти произведение элементов с четными номерами, которые превосходят некоторое число t.

Var a: array[1..100] of integer;

i, n, p, t: integer;

Write (‘Сколько элементов? ’); Readln (n);

a[i]:= Random(104)-56; writeln (a[i],’ ‘);

if (i mod 2 = 0) and (a[i]>t) then P=P*a[i];

Writeln(‘Произведение элементов с четными номерами, превосходящие число t:’, P);

8. Найти наименьший элемент одномерного массива, состоящего из n элементов. Элементы вводятся с клавиатуры.

Var a: array[1..100] of real;

Write (‘n=’); Readln (n);

Writeln(‘наименьшее число: ‘,min);

9. Найти номер наименьшего элемента в массиве, заданного датчиком случайных чисел на интервале [-20, 25]. Размер произвольный.

Var a: array[1..100] of integer;

i, n, num, min: integer;

Write (‘n=’); Readln (n);

Writeln(‘ номер наименьшего элемента: ‘,num);

10. В заданном одномерном массиве, состоящем из n целых чисел, подсчитать количество нулей.

Var a: array[1..100] of integer;

Write (‘n=’); Readln (n);

if a[i]=0 then k:=k+1;

Writeln(‘количество 0 равно ’, k);

11. В заданном одномерном массиве, состоящем из n целых чисел, подсчитать количество четных элементов.

Var a: array[1..100] of integer;

Write (‘n=’); Readln (n);

if a[i] mod 2=0 then k:=k+1;

Writeln(‘количество четных элементов: ’, k);

12. Найдите среднее арифметическое элементов массива, состоящего из 10 чисел, которые превышают по величине число С. Элементы вводятся с клавиатуры.

Var a: array[1..10] of real;

For i:=1 to 10 do

write(‘введите С: ‘); readln (C );

For i:=1 to 10 do

begin S=S+a[i]; K=K+1; end;

Writeln(‘среднее арифметическое чисел, превосходящих ‘,C,’ равно ‘,sred);

13. Найти произведение элементов целочисленного одномерного массива с четными номерами, состоящего из n элементов. Элементы вводятся с клавиатуры.

Var a: array [1..100] of integer;

if i mod 2=0 then p:=p*a[i];

Writeln ('произведение элементов массива с четными номерами равно ',p);

14. Массив А вводится с клавиатуры. Сформировать новый массив В, состоящий из четных элементов массива А. Элементы вводятся с клавиатуры. Размер n.

Var a: array[1..100] of integer;

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

if a[i] mod 2=0 then

if kol=0 then writeln(‘четных элементов нет’) else

for k:=1 to kol do write(‘b[‘,k,’]=’,b[k]);

Задачи для самостоятельной работы

  1. Массив А вводится с клавиатуры. Найти сумму его элементов. Размер произвольный.
  2. Найти произведение элементов, кратных 3 в массиве, заданном датчиком случайных чисел на интервале [-28, 27]. Размер произвольный.
  3. Массив А вводится с клавиатуры. Найти среднее арифметическое его элементов с нечетными номерами. Размер произвольный.
  4. Массив А вводится с клавиатуры. Найти сумму его элементов с четными номерами, произведение отрицательных элементов, количество нечетных элементов. Размер произвольный.
  5. Найти наибольший элемент и его номер в последовательности, элементы которой вводятся с клавиатуры. Размер произвольный.
  6. Найти средне арифметическое элементов последовательности, превосходящих некоторое число С. Массив задан датчиком случайных чисел на интервале [-44, 35]. Размер произвольный. Значение С вводится с экрана.
  7. Массив А вводится с клавиатуры. Вывести только нечетные элементы. Размер произвольный.
  8. Упорядочить данную последовательность по убыванию. Элементы вводятся с клавиатуры. Размер произвольный.
  9. Упорядочить данную последовательность по убыванию. Массив задан датчиком случайных чисел на интервале [-54, 33]. Размер произвольный.
  10. Массив А вводится с клавиатуры. Сформировать новый массив В, состоящий из положительных элементов массива А. Размер произвольный.
  11. Массив задан датчиком случайных чисел на интервале [-31, 45]. Сформировать новый массив В, состоящий из нечетных элементов массива А. Размер произвольный.
  12. Массив А вводится с клавиатуры. Сформировать новый массив В, состоящий из положительных элементов массива А и найти в нем наибольший элемент. Размер произвольный.
  13. Массив задан датчиком случайных чисел на интервале [-37, 66]. Найти наименьший нечетный элемент. Размер произвольный.

Двумерные массивы (матрицы)

1. Сформировать с помощью датчика случайных чисел и вывести на экран матрицу, размером МхN. Элементы задаются на интервале [-20, 25].

Var a: array[1..50,1..50] of integer;

i, j, n, m: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

2. В двумерном массиве, состоящем из n целых чисел, найти сумму элементов в каждой строке. Размер произвольный.

Var a: array[1..50,1..50] of integer;

i, j, n, m,S: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

Writeln(‘сумма элементов в ‘,i,’ строке равна ‘,S);

3. Найти наименьший элемент двумерного массива. Размер MXN. Элементы задаются на интервале [-30, 45].

Var a: array[1..50,1..50] of integer;

i, j, n, m, min: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

Writeln(‘наименьшее число ‘,min);

4. В двумерном массиве, состоящем из целых чисел, найти наименьший элемент и номер строки, в которой он находится. Элементы вводятся с клавиатуры. Размер MXN.

Var a: array[1..50,1..50] of integer;

i, j, m, n, min, K: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

begin write(‘a[‘,i,’,’,j,’]=’); readln (a[i,j]); end;

Writeln(‘наименьшее число ‘,min,’ находится в ‘, k , ‘ строке’);

5. Найти сумму элементов в каждой строке двумерного массива, состоящего из целых чисел. Размер MXN. Элементы задаются на интервале [-19, 30].

Var a: array[1..50,1..50] of integer;

i, j, n, m,sum: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

for j:=1 to n do sum:=sum+a[i,j];

writeln('сумма элементов в ',i,' строке: ',sum);

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

Var a: array[1..50,1..50] of integer;

i, j, m, n, kol: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

begin write(‘a[‘,i,’,’,j,’]=’); readln (a[i,j]); end;

for j:=1 to n do if a[i,j]>0 then kol:=kol+1;

writeln('количество положительных элементов в ',i,' строке: ',kol);

7. Сформировать матрицу типа 1 0 0 0

Var a: array[1..50,1..50] of integer;

i, j, m, n: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

if i=j then a[i,j]:=1 else a[i,j]:=0;

8. Найти номер столбца массива размером МхN, в котором находится наибольшее количество отрицательных элементов. Элементы вводятся с клавиатуры.

Var a: array[1..50,1..50] of integer;

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

i, j, m, n, max, jmax: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

writeln(‘Наибольшее количество отрицательных элементов в ‘;jmax ; ‘столбце’);

9. Упорядочить каждый столбец матрицы по возрастанию. Массив размером МхN, элементы которого задаются датчиком случайных чисел на интервале [-17;26].

Var a: array[1..50,1..50] of integer;

i, j, n, m,t,r: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

For i:=1 to m-1 do

if a[i,j]> a[i+1,j] then

For j:=1 to n do write(a[i,j],’ ‘);

10. Сформировать матрицу 1 1 1 1

Var a: array[1..3,1..4] of integer;

11. Найти наибольшее нечетное число в матрице размером МхN, элементы которой задаются датчиком случайных чисел на интервале [-27, 38].

Var a: array[1..50,1..50] of integer;

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

i, j, n, m, p, max, k: integer;

Write(‘сколько строк?’); Readln(m);

Write(‘сколько столбцов?’); Readln(n);

If a[i;j]mod 2 0 then

if k=0 then writeln(‘нечетных элементов нет’) else

if b[p]>max then max:=b[p];

writeln(‘наибольшее нечетное число’, max);

Задачи для самостоятельной работы

  1. Подсчитать количество положительных элементов в каждом столбце матрицы размером МхN, элементы которой вводятся с клавиатуры.
  2. Подсчитать количество отрицательных элементов в каждой строке матрицы размером МхN, элементы которой задаются с помощью датчика случайных чисел на интервале [-35; 65].
  3. Подсчитать количество четных элементов в каждом столбце матрицы размером МхN, элементы которой задаются с помощью датчика случайных чисел на интервале [-98; 54].
  4. Подсчитать количество четных отрицательных элементов в матрице размером МхN, элементы которой вводятся с клавиатуры.

5. Сформировать матрицу 1 1 1 1

6. Сформировать матрицу 1 2 3 4

7. Сформировать матрицу 0 0 0 1

8. Найти номер наибольшего элемента массива размером МхN, элементы которого задаются датчиком случайных чисел на интервале [-67;23].

9. Найти номер наибольшего элемента массива размером МхN, элементы которого вводятся с клавиатуры.

10. Найти наибольший элемент массива размером МхN, элементы которого задаются датчиком случайных чисел на интервале [-25;19].

11. Найти наименьший элемент массива размером МхN, элементы которого вводятся с клавиатуры.

12. Найти сумму элементов в каждом столбце массива размером МхN, элементы которого задаются датчиком случайных чисел на интервале [-19;20].

13. Найти произведение элементов в каждом столбце массива размером МхN, элементы которого вводятся с клавиатуры.

14. Найти произведение элементов в каждой строке массива размером МхN, элементы которого вводятся с клавиатуры.

15. Найти произведение диагональных элементов массива размером МхN, элементы которого вводятся с клавиатуры.

16. Найти сумму элементов, стоящих на побочной диагонали массива размером МхN, элементы которого вводятся с клавиатуры.

17. Найти номер столбца массива размером МхN, в котором находится наименьшее количество положительных элементов. Элементы вводятся с клавиатуры.

18. Найти номер строки массива размером МхN, в котором находится наименьшее количество положительных элементов. Элементы вводятся с клавиатуры.

19. Найти номер строки массива размером МхN, в котором находится наибольшее количество четных элементов. Элементы задаются датчиком случайных чисел на интервале [-54;61].

20. Найти номер столбца массива размером МхN, в котором находится наибольшее количество элементов, кратных 5. Элементы задаются датчиком случайных чисел на интервале [-27;43].

21. Найти наименьшее четное число в матрице размером МхN, элементы которой задаются датчиком случайных чисел на интервале [-65, 45].

22. Найти наибольшее число, кратное 3, в матрице размером МхN, элементы которой вводятся с клавиатуры.

📎📎📎📎📎📎📎📎📎📎