СДЕЛАЙТЕ СВОИ УРОКИ ЕЩЁ ЭФФЕКТИВНЕЕ, А ЖИЗНЬ СВОБОДНЕЕ

Благодаря готовым учебным материалам для работы в классе и дистанционно

Скидки до 50 % на комплекты
только до

Готовые ключевые этапы урока всегда будут у вас под рукой

Организационный момент

Проверка знаний

Объяснение материала

Закрепление изученного

Итоги урока

Презентация "Программирование массивов в Паскале" 10 класс

Категория: Информатика

Нажмите, чтобы узнать подробности

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

Просмотр содержимого документа
«Презентация "Программирование массивов в Паскале" 10 класс»

Массивы в Pascal Одномерные массивы

Массивы в Pascal

Одномерные массивы

Массивы Один из самых распространенных способов организации данных – табличный. Таблицы могут состоять из 1 строки (линейная):     а 1   а 2 а 3 а 4 и из нескольких строк и столбцов (прямоугольная):      а 11   а 12 а 13 а 14      а 21   а 22 а 23 а 24      а 31   а 32 а 33 а 34 Массив – совокупность данных одного типа.

Массивы

Один из самых распространенных способов организации данных – табличный.

Таблицы могут состоять из 1 строки (линейная):

а 1 а 2 а 3 а 4

и из нескольких строк и столбцов (прямоугольная):

а 11 а 12 а 13 а 14

а 21 а 22 а 23 а 24

а 31 а 32 а 33 а 34

Массив – совокупность данных одного типа.

Массивы  Одномерные массивы Обозначаются массивы латинскими буквами, строки нумеруются сверху вниз, столбцы слева направо. Элемент, расположенных на i – том месте линейной таблицы обозначается A [ i ] Название массива Номер элемента

Массивы Одномерные массивы

  • Обозначаются массивы латинскими буквами, строки нумеруются сверху вниз, столбцы слева направо. Элемент, расположенных на i – том месте линейной таблицы обозначается A [ i ]

Название массива

Номер элемента

Массивы  Одномерные массивы Прежде чем использовать массив в программе необходимо зарезервировать в памяти место под него. Для этого используется зарезервированное слово array – массив: Var   a:array[1..n] of integer; Число элементов массива

Массивы Одномерные массивы

  • Прежде чем использовать массив в программе необходимо зарезервировать в памяти место под него. Для этого используется зарезервированное слово array – массив:
  • Var

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

Число элементов массива

Алгоритм решения задач с использованием массивов: Описание массива Заполнение массива Вывод массива (распечатка) Выполнение условий задачи Вывод результата

Алгоритм решения задач с использованием массивов:

  • Описание массива
  • Заполнение массива
  • Вывод массива (распечатка)
  • Выполнение условий задачи
  • Вывод результата
Способы задания  элементов массива: Ввод с клавиатуры. Write(‘Введите число элементов’); Read(n); For i:=1 to n do Read(a[i]); Writeln; For i:=1 to n do Write(a[i]:4); Ввод элементов массива Вывод элементов массива

Способы задания элементов массива:

  • Ввод с клавиатуры.

Write(‘Введите число элементов’);

Read(n);

For i:=1 to n do

Read(a[i]);

Writeln;

For i:=1 to n do

Write(a[i]:4);

Ввод элементов массива

Вывод элементов массива

Способы задания  элементов массива: 2. С помощью генератора случайных чисел. Randomize; Write(‘Введите число элементов’); Read(n); For i:=1 to n do begin a[i]:=random(10); Write(a[i]:4); End; Ввод элементов массива Вывод элементов массива

Способы задания элементов массива:

2. С помощью генератора случайных чисел.

Randomize;

Write(‘Введите число элементов’);

Read(n);

For i:=1 to n do begin

a[i]:=random(10);

Write(a[i]:4);

End;

Ввод

элементов

массива

Вывод элементов массива

0 then s:=s+a[i]; end; write('s= ',s); readkey; end. " width="640"

Пример 1 В одномерном массиве посчитать сумму положительных элементов

program sum;

uses crt;

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

i,n,s:integer;

begin

clrscr;

write('Введите число элементов');

read(n);

for i:=1 to n do

read(a[i]);

for i:=1 to n do begin

write(a[i]:4);

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

end;

write('s= ',s);

readkey;

end.

  Пример 2  В одномерном массиве вычислить  минимальный элемент program minimum; uses crt; var a:array[1..10] of integer;  i,n,min:integer; begin  clrscr; write('Введите число элементов');  read(n);  for i:=1 to n do  read(a[i]); writeln;  for i:=1 to n do  write(a[i]:4);  min:=a[1];  for i:=2 to n do  if a[i]  writeln;  write('Мин. элемент= ',min); readkey; end.

Пример 2 В одномерном массиве вычислить минимальный элемент

program minimum;

uses crt;

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

i,n,min:integer;

begin

clrscr; write('Введите число элементов');

read(n);

for i:=1 to n do

read(a[i]); writeln;

for i:=1 to n do

write(a[i]:4);

min:=a[1];

for i:=2 to n do

if a[i]

writeln;

write('Мин. элемент= ',min);

readkey;

end.

 Пример 3  Дан массив целых чисел.  Записать его наоборот program massiv; uses crt; var a:array[1..10] of integer;{описание массива}  i,n:integer; begin  clrscr;  randomize; {генератор случайных чисел}  write('Введите число элементов');  read(n);  for i:=1 to n do begin  a[i]:=random(10); {заполнение массива}  write(a[i]:4); {вывод массива}  end;  writeln;{переход на след. строку}  for i:=n downto 1 do  write(a[i]:4); {вывод массива наоборот} readkey end.

Пример 3 Дан массив целых чисел. Записать его наоборот

program massiv;

uses crt;

var a:array[1..10] of integer;{описание массива}

i,n:integer;

begin

clrscr;

randomize; {генератор случайных чисел}

write('Введите число элементов');

read(n);

for i:=1 to n do begin

a[i]:=random(10); {заполнение массива}

write(a[i]:4); {вывод массива}

end;

writeln;{переход на след. строку}

for i:=n downto 1 do

write(a[i]:4); {вывод массива наоборот}

readkey

end.

 Пример 4  Определить, сколько пар одинаковых соседних элементов содержится в массиве. program massiv; uses crt; var a:array[1..10] of integer;{описание массива}  i,n,s:integer; begin  clrscr;  randomize; {генератор случайных чисел}  write('Введите число элементов');  read(n);  for i:=1 to n do begin  a[i]:=random(10); {заполнение массива}  write(a[i]:4); {вывод массива}  end;  writeln;{переход на след. строку}  for i:=1 to n do  if a[i]=a[i+1] then s:=s+1;  write('s=',s); {вывод массива наоборот} readkey end.

Пример 4 Определить, сколько пар одинаковых соседних элементов содержится в массиве.

program massiv;

uses crt;

var a:array[1..10] of integer;{описание массива}

i,n,s:integer;

begin

clrscr;

randomize; {генератор случайных чисел}

write('Введите число элементов');

read(n);

for i:=1 to n do begin

a[i]:=random(10); {заполнение массива}

write(a[i]:4); {вывод массива}

end;

writeln;{переход на след. строку}

for i:=1 to n do

if a[i]=a[i+1] then s:=s+1;

write('s=',s); {вывод массива наоборот}

readkey

end.

Пример 5  В одномерном массиве заменить все нулевые элементы на 10 program massiv; uses crt; var a:array[1..10] of integer;{описание массива}  i,n,s:integer; begin  clrscr;  randomize; {генератор случайных чисел}  write('Введите число элементов'); read(n);  for i:=1 to n do begin  a[i]:=random(10); {заполнение массива}  write(a[i]:4); {вывод массива}  end; writeln;{переход на след. строку}  for i:=1 to n do begin  if a[i]=0 then a[i]:=10;  write(a[i]:4); {вывод массива наоборот}  end; readkey end.

Пример 5 В одномерном массиве заменить все нулевые элементы на 10

program massiv;

uses crt;

var a:array[1..10] of integer;{описание массива}

i,n,s:integer;

begin

clrscr;

randomize; {генератор случайных чисел}

write('Введите число элементов'); read(n);

for i:=1 to n do begin

a[i]:=random(10); {заполнение массива}

write(a[i]:4); {вывод массива}

end; writeln;{переход на след. строку}

for i:=1 to n do begin

if a[i]=0 then a[i]:=10;

write(a[i]:4); {вывод массива наоборот}

end;

readkey

end.

5 (используя Пример 5). В одномерном массиве найти произведение ненулевых элементов (используя Пример 1). " width="640"

Самостоятельно:

  • В одномерном массиве найти разность наибольшего и наименьшего элементов (используя Пример 2).
  • Дан одномерный массив. Вывести на экран числа 5 (используя Пример 5).
  • В одномерном массиве найти произведение ненулевых элементов (используя Пример 1).
Самостоятельная работа. Генератор случайных чисел В-1 В-2 Создать и напечатать одномерный массив случайными числами от 0 до 15 и вывести на экран те из них, которые больше 10. Создать и напечатать одномерный массив случайными числами от 0 до 10 и вывести на экран те из них, которые больше последнего элемента массива. Создать и напечатать одномерный массив случайными числами от 0 до 9. Если есть в нем элементы, равные 3, то заменить их последующими числами. Создать и напечатать одномерный массив случайными числами от 0 до 12 и вывести на экран те из них, которые меньше 7. Создать и напечатать одномерный массив случайными числами от 0 до 15 и вывести на экран те из них, которые больше первого элемента массива. Создать и напечатать одномерный массив случайными числами от 0 до 9. Если есть в нем элементы, равные 8, то заменить их первыми числами.

Самостоятельная работа. Генератор случайных чисел

В-1

В-2

  • Создать и напечатать одномерный массив случайными числами от 0 до 15 и вывести на экран те из них, которые больше 10.
  • Создать и напечатать одномерный массив случайными числами от 0 до 10 и вывести на экран те из них, которые больше последнего элемента массива.
  • Создать и напечатать одномерный массив случайными числами от 0 до 9. Если есть в нем элементы, равные 3, то заменить их последующими числами.
  • Создать и напечатать одномерный массив случайными числами от 0 до 12 и вывести на экран те из них, которые меньше 7.
  • Создать и напечатать одномерный массив случайными числами от 0 до 15 и вывести на экран те из них, которые больше первого элемента массива.
  • Создать и напечатать одномерный массив случайными числами от 0 до 9. Если есть в нем элементы, равные 8, то заменить их первыми числами.
Решение задач: Первый уровень сложности Второй уровень сложности Задан одномерный массив целых чисел. Задан одномерный массив целых чисел. Найти сумму четных элементов массива, имеющих нечетные индексы. Дан одномерный массив размерностью N, заполненный случайными числами. Каждый третий элемент массива возвести в квадрат, если элемент отрицательный. Измененный массив вывести на экран Вывести все нечетные элементы массива Найти сумму нечетных элементов этого массива. Найти количество нечетных элементов массива Вывести все нечетные элементы массива Найти сумму нечетных элементов этого массива. Найти количество нечетных элементов массива Найти номер наименьшего элемента в массиве Элементы, заданные, например, на интервале [-19, 26], описываются так: a[i]:= random(46)-19;

Решение задач:

Первый уровень сложности

Второй уровень сложности

  • Задан одномерный массив целых чисел.
  • Задан одномерный массив целых чисел. Найти сумму четных элементов массива, имеющих нечетные индексы.
  • Дан одномерный массив размерностью N, заполненный случайными числами. Каждый третий элемент массива возвести в квадрат, если элемент отрицательный. Измененный массив вывести на экран
  • Вывести все нечетные элементы массива Найти сумму нечетных элементов этого массива. Найти количество нечетных элементов массива
  • Вывести все нечетные элементы массива
  • Найти сумму нечетных элементов этого массива.
  • Найти количество нечетных элементов массива
  • Найти номер наименьшего элемента в массиве

Элементы, заданные, например, на интервале [-19, 26], описываются так: a[i]:= random(46)-19;

Массивы в Pascal Двумерные массивы

Массивы в Pascal

Двумерные массивы

Массивы  Двумерные массивы Двумерный массив (матрица) – это прямоугольная таблица, состоящая из нескольких строк и столбцов.  -1 3 -2 6  -4 0 5 -2  9 -8 3 2 Обозначение: a[i,j], где i – номер строки,  j – номер столбца var  a:array[1..n, 1..m] of integer;

Массивы Двумерные массивы

  • Двумерный массив (матрица) – это прямоугольная таблица, состоящая из нескольких строк и столбцов.

-1 3 -2 6

-4 0 5 -2

9 -8 3 2

Обозначение: a[i,j],

где i – номер строки,

j – номер столбца

var

a:array[1..n, 1..m] of integer;

Задание элементов двумерного массива randomize; write(‘Введите число строк’); readln(n); writeln(‘Введите число столбцов’); readln(m); for i:=1 to n do  for j:=1 to m do  a[i,j]:=random(10); for i:=1 to n do begin  for j:=1 to m do  write(a[i,j]:4); Writeln; end;

Задание элементов двумерного массива

randomize;

write(‘Введите число строк’);

readln(n);

writeln(‘Введите число столбцов’);

readln(m);

for i:=1 to n do

for j:=1 to m do

a[i,j]:=random(10);

for i:=1 to n do begin

for j:=1 to m do

write(a[i,j]:4);

Writeln;

end;

Цикл открываем только по строкам program uvelich; uses crt; var a:array[1..10,1..10] of integer;  n,m,i,j:integer; begin  clrscr;  randomize;  writeln('Введите число строк'); read(n);  writeln('Введите число столбцов'); read(m);  for i:=1 to n do begin  a[i, 2 ]:=a[i, 2 ]*2;  end;  writeln;  for i:=1 to n do begin  for j:=1 to m do  write(a[i,j]:4);  writeln;  end; readkey end. Пример 1 В двумерном массиве увеличить элементы 2 столбца в 2 раза и напечатать полученный массив.

Цикл открываем только по строкам

program uvelich;

uses crt;

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

n,m,i,j:integer;

begin

clrscr;

randomize;

writeln('Введите число строк'); read(n);

writeln('Введите число столбцов'); read(m);

for i:=1 to n do begin

a[i, 2 ]:=a[i, 2 ]*2;

end;

writeln;

for i:=1 to n do begin

for j:=1 to m do

write(a[i,j]:4);

writeln;

end;

readkey end.

Пример 1

В двумерном массиве увеличить элементы 2 столбца в 2 раза и напечатать полученный массив.

a[1,1] then s:=s+a[i,j]; end; writeln; write('Сумма=',s); end. Пример 2 Найти сумму всех элементов двумерного массива, больших первого элемента этого массива. " width="640"

program summ;

uses crt;

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

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

begin

clrscr; randomize;

writeln('Введите число строк'); read(n);

writeln('Введите число столбцов'); read(m);

for i:=1 to n do

for j:=1 to m do

a[i,j]:=random(10);

for i:=1 to n do begin

for j:=1 to m do

write(a[i,j]:4);

writeln; end ;

for i:=1 to n do begin

for j:=1 to m do

if a[i,j]a[1,1] then s:=s+a[i,j];

end; writeln; write('Сумма=',s);

end.

Пример 2

Найти сумму всех элементов двумерного массива, больших первого элемента этого массива.

Главная и побочная диагонали Матрица, у которой число строк равно числу столбцов, называется квадратной , и у нее имеются главная и побочная диагонали. а 11  а 12  а 13  а 14 а 21  а 22  а 23  а 24 а 31  а 32  а 33  а 34 а 41  а 42  а 43  а 44   Побочная диагональ Главная диагональ

Главная и побочная диагонали

  • Матрица, у которой число строк равно числу столбцов, называется квадратной , и у нее имеются главная и побочная диагонали.

а 11 а 12 а 13 а 14

а 21 а 22 а 23 а 24

а 31 а 32 а 33 а 34

а 41 а 42 а 43 а 44

Побочная

диагональ

Главная диагональ

n-j+1 – под диаг. i а 11 а 12 а 13 а 14 а 21 а 22 а 23 а 24 а 31 а 32 а 33 а 34 а 41 а 42 а 43 а 44 Главная диагональ i = j i j – под диаг. i " width="640"

Квадратная матрица

Побочная

i = n-j+1

диагональ

i n-j+1 – под диаг.

i

а 11 а 12 а 13 а 14

а 21 а 22 а 23 а 24

а 31 а 32 а 33 а 34

а 41 а 42 а 43 а 44

Главная диагональ

i = j

i j – под диаг.

i

program zadacha 3; var a:array[1..4,1..4] of integer;  i,j,n,s:integer; begin  n:=4;s:=1;  randomize; for i:=1 to n do  for j:=1 to n do  a[i,j]:=random(10); for i:=1 to n-1 do  for j:=1 to n-i do  s:=s*a[i,j]; for i:=1 to n do begin  for j:=1 to n do  write (a[i,j]:4);  writeln;  end ; writeln; write('s=',s); end. Пример 3 Найти произведение элементов, расположенных над побочной диагональю квадратной матрицы.

program zadacha 3;

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

i,j,n,s:integer;

begin

n:=4;s:=1;

randomize;

for i:=1 to n do

for j:=1 to n do

a[i,j]:=random(10);

for i:=1 to n-1 do

for j:=1 to n-i do

s:=s*a[i,j];

for i:=1 to n do begin

for j:=1 to n do

write (a[i,j]:4);

writeln;

end ;

writeln;

write('s=',s);

end.

Пример 3

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


Скачать

Рекомендуем курсы ПК и ППК для учителей

Похожие файлы

Вебинар для учителей

Свидетельство об участии БЕСПЛАТНО!