Меню
Разработки
Разработки  /  Информатика  /  Разное  /  9 класс  /  Массивы в Паскале

Массивы в Паскале

Работа содержит объяснение понятия массивы, разбор примеров, задания и проверочную работу. Урок ориентирован на учащихся школ с гуманитарным профилем.
23.01.2013

Описание разработки

    Наряду с простыми переменными (поименованными участками оперативной памяти), существует еще один способ размещения данных в памяти, когда однородные данные помещаются друг за другом, носят одно общее имя и снабжаются своими порядковыми номерами.

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

Элемент массива называется индексной переменной, т.к. имеет свой номер (индекс) и с ним можно работать как с простой переменной.

Такая организация данных применяется тогда, когда с различными данными необходимо произвести одинаковые действия («пересмотреть» всех учащихся, чтобы определить самого высокого, сложить температурные показания за каждый день месяца, чтобы определить среднюю температуру и т.д.).

Работа с массивами:

  1. Массив должен быть объявлен в разделе объявления переменных:

VAR      M: array[1..N] of integer;

М – имя массива, которое вы задаете сами;

1..N – количество элементов массива;

of integerописание типа элементов, из которых состоит массив.

  1. Прежде чем начать работу с массивом, надо его заполнить данными
  2. Доступ к элементу массива осуществляется путем указания имени массива и индекса (номера) элемента: M[6]
  3. Для ввода, вывода и обработки массивов удобно применять инструкцию циклов.

При заполнении массивов удобно использовать датчик случайных чисел, который подключается после оператора BEGIN с помощью команды RANDOMIZE. Вызывается датчик командой RANDOM(N) и выдает число от 0 до N-1.

Например, нам надо получать числа в диапазоне от 4 до 12, для этого, при вызове датчика, указываем следующие числа: RANDOM(9)+4.

Задача № 1

Допустим, нам надо заселить 12 типовых домиков семьями, состав которых колеблется от 3-х до 7 человек.

Сформируем массив домиков, содержимое которых – целые числа (количество человек в семье). Заполнять массив будем с помощью датчика случайных чисел.

Program prim;

Uses crt;

Var     DOM: array[1..12] of integer; {массив целых чисел}

            I: integer;  {переменная под счетчик цикла (перебор всех домов по порядку)}

BEGIN

Clrscr;

Randomize;  {подключение датчика случайных чисел}

For  I:=1  to  12 do

   DOM[I]:= RANDOM(5)+3;   {заселяем случайным образом в дома жителей}

For  I:=1   to  12  do

   WRITELN('DOM[', I, ']= ', DOM[I]);  {вывод на экран содержимого массива}

END.

Задача № 2 (продолжение задачи №1)

Нахождение суммы элементов массива и элементов массива, отвечающих заданному условию

а) Посчитать общее количество человек, заселенных в дома (см. предыдущую задачу).

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

б) Посчитать количество домиков, в которых заселилось 3 человека. Для этих целей заведем переменную С (счетчик).

Program prim1;

Uses crt;

Var     DOM: array[1..12] of integer; {массив целых чисел}

            I: integer;  {переменная под счетчик цикла (перебор всех домов по порядку)}

            S,C: integer;

BEGIN

Clrscr;

Randomize;  {подключение датчика случайных чисел}

S:=0;   {сумма всех жильцов равна 0}

For  I:=1  to  12 do

begin

DOM[I]:= RANDOM(5)+3;   {заселяем случайным образом в дома жителей}

S:=S+ DOM[I];    {каждый раз добавляем к сумме жильцов следующего

заселяемого домика}

WRITELN('DOM[', I, ']= ', DOM[I]);  {вывод на экран элемента массива}

end;

WRITELN('общее количество заселенных жильцов =',S);

For  I:=1  to  12 do

IF DOM[I]=3  THEN C:=C+1;

WRITELN('количество домов с тремя жильцами =',C);

END.

Задание 1

  1. Заполнить массив из 10 элементов целыми числами в диапазоне от 1 до 10 с помощью датчика случайных чисел;
  2. Вывести на экран элементы массива: а) в столбик, б) в строчку;
  3. Посчитать среднее арифметическое элементов массива;
  4. Найти количество элементов массива, значение которых равно 4.

Задание 2

  1. Заполнить с клавиатуры массив, состоящий из 5 английских слов и вывести их на экран;
  2. Посчитать количество слов в массиве, которые начинаются на букву «а»

Вариант 1

1.  Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=2*I;

           S:=S+MAS[I];

END;

WRITELN (S);

2.  Дан фрагмент программы. Что появится на экране?

     FOR    I:=1  TO  4      DO

           MAS[I]:=I;

          MAS[2]:=MAS[1];

        WRITELN (MAS[2]);

3. Как объявить массив из 8 вещественных чисел?

4. Как задать датчику случайных чисел диапазон от 2 до 12?

Вариант 2

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=2;

           S:=S+MAS[I];

END;

WRITELN (S);

2. Дан фрагмент программы. Что появится на экране?

FOR    I:=1  TO  4      DO

           MAS[I]:=I+1;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);

3. Как объявить массив из 10 целых чисел?

4. Как задать датчику случайных чисел диапазон от 1 до 10?

Вариант 3

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=2*I-1;

           S:=S+MAS[I];

END;

WRITELN (S);

2. Дан фрагмент программы. Что появится на экране?

FOR    I:=1  TO  4      DO

           MAS[I]:=10-I;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);

3. Как объявить массив из 10 символов?

4. Как задать датчику случайных чисел диапазон от 3 до 12?

Вариант 4

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=1;

           S:=S+MAS[I];

END;

WRITELN (2*S);

2. Дан фрагмент программы. Что появится на экране?

FOR    I:=1  TO  4      DO

           MAS[I]:=2+I;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);

3. Как объявить массив из 12 целых чисел?

4. Как задать датчику случайных чисел диапазон от 10 до 100?

Вариант 5

1.  Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=1+I;

           S:=S+MAS[I];

END;

WRITELN (S);

2.  Дан фрагмент программы. Что появится на экране?

FOR    I:=1  TO  3      DO

           MAS[I]:=8;

MAS[2]:=MAS[1]+2;

WRITELN (MAS[2]);

3. Как объявить массив из 6 вещественных чисел?

4. Как задать датчику случайных чисел диапазон от 1 до 3?

Вариант 6

1.  Дан фрагмент программы. Что появится на экране?

S:=0;

FOR    I:=1  TO  4      DO

BEGIN

           MAS[I]:=I;

           S:=S+MAS[I];

END;

WRITELN (S);

2.  Дан фрагмент программы. Что появится на экране?

                    FOR    I:=1  TO  4      DO

                        MAS[I]:=I;

                       MAS[1]:=MAS[4];

                      WRITELN (MAS[1]);

3. Как объявить массив из 15 целых чисел?

4. Как задать датчику случайных чисел диапазон от 4 до 6?

Содержимое разработки

МАССИВЫ

Наряду с простыми переменными (поименованными участками оперативной памяти), существует еще один способ размещения данных в памяти, когда однородные данные помещаются друг за другом, носят одно общее имя и снабжаются своими порядковыми номерами.

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

Элемент массива называется индексной переменной, т.к. имеет свой номер (индекс) и с ним можно работать как с простой переменной.

Такая организация данных применяется тогда, когда с различными данными необходимо произвести одинаковые действия («пересмотреть» всех учащихся, чтобы определить самого высокого, сложить температурные показания за каждый день месяца, чтобы определить среднюю температуру и т.д.).


Работа с массивами:

  1. Массив должен быть объявлен в разделе объявления переменных:

VAR M: array[1..N] of integer;

М – имя массива, которое вы задаете сами;

1..N – количество элементов массива;

of integerописание типа элементов, из которых состоит массив.

  1. Прежде чем начать работу с массивом, надо его заполнить данными

  2. Доступ к элементу массива осуществляется путем указания имени массива и индекса (номера) элемента: M[6]

  3. Для ввода, вывода и обработки массивов удобно применять инструкцию циклов.


При заполнении массивов удобно использовать датчик случайных чисел, который подключается после оператора BEGIN с помощью команды RANDOMIZE. Вызывается датчик командой RANDOM(N) и выдает число от 0 до N-1.

Например, нам надо получать числа в диапазоне от 4 до 12, для этого, при вызове датчика, указываем следующие числа: RANDOM(9)+4.


Задача № 1

Допустим, нам надо заселить 12 типовых домиков семьями, состав которых колеблется от 3-х до 7 человек.

Сформируем массив домиков, содержимое которых – целые числа (количество человек в семье). Заполнять массив будем с помощью датчика случайных чисел.


Program prim;

Uses crt;

Var DOM: array[1..12] of integer; {массив целых чисел}

I: integer; {переменная под счетчик цикла (перебор всех домов по порядку)}


BEGIN

Clrscr;

Randomize; {подключение датчика случайных чисел}


For I:=1 to 12 do

DOM[I]:= RANDOM(5)+3; {заселяем случайным образом в дома жителей}


For I:=1 to 12 do

WRITELN('DOM[', I, ']= ', DOM[I]); {вывод на экран содержимого массива}


END.

Задача № 2 (продолжение задачи №1)

Нахождение суммы элементов массива и элементов массива, отвечающих заданному условию

а) Посчитать общее количество человек, заселенных в дома (см. предыдущую задачу).

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

б) Посчитать количество домиков, в которых заселилось 3 человека. Для этих целей заведем переменную С (счетчик).


Program prim1;

Uses crt;

Var DOM: array[1..12] of integer; {массив целых чисел}

I: integer; {переменная под счетчик цикла (перебор всех домов по порядку)}

S,C: integer;

BEGIN

Clrscr;

Randomize; {подключение датчика случайных чисел}

S:=0; {сумма всех жильцов равна 0}

For I:=1 to 12 do

begin

Эти операции можно делать в одном цикле

DOM[I]:= RANDOM(5)+3; {заселяем случайным образом в дома жителей}

S:=S+ DOM[I]; {каждый раз добавляем к сумме жильцов следующего

заселяемого домика}

WRITELN('DOM[', I, ']= ', DOM[I]); {вывод на экран элемента массива}

end;

WRITELN('общее количество заселенных жильцов =',S);

Операцию сравнения можно проводить только с уже заполненным массивом!


For I:=1 to 12 do

IF DOM[I]=3 THEN C:=C+1;


WRITELN('количество домов с тремя жильцами =',C);


END.




Задание 1

  1. Заполнить массив из 10 элементов целыми числами в диапазоне от 1 до 10 с помощью датчика случайных чисел;

  2. Вывести на экран элементы массива: а) в столбик, б) в строчку;

  3. Посчитать среднее арифметическое элементов массива;

  4. Найти количество элементов массива, значение которых равно 4.



Задание 2

  1. Заполнить с клавиатуры массив, состоящий из 5 английских слов и вывести их на экран;

  2. Посчитать количество слов в массиве, которые начинаются на букву «а»

Вариант 1

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

Ответ:

9

Ответ:

16

Ответ:

2

Ответ:

8

Ответ:

1

Ответ:

20

BEGIN

MAS[I]:=2*I;

S:=S+MAS[I];

END;

WRITELN (S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 4 DO

MAS[I]:=I;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);


  1. Как объявить массив из 8 вещественных чисел?

  2. Как задать датчику случайных чисел диапазон от 2 до 12?



Вариант 2

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

BEGIN

MAS[I]:=2;

S:=S+MAS[I];

END;

WRITELN (S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 4 DO

MAS[I]:=I+1;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);


3. Как объявить массив из 10 целых чисел?

4. Как задать датчику случайных чисел диапазон от 1 до 10?



Вариант 3

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

BEGIN

MAS[I]:=2*I-1;

S:=S+MAS[I];

END;

WRITELN (S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 4 DO

MAS[I]:=10-I;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);

3. Как объявить массив из 10 символов?

4. Как задать датчику случайных чисел диапазон от 3 до 12?



Вариант 4

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

Ответ:

14

Ответ:

3

Ответ:

20

BEGIN

MAS[I]:=1;

S:=S+MAS[I];

END;

WRITELN (2*S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 4 DO

MAS[I]:=2+I;

MAS[2]:=MAS[1];

WRITELN (MAS[2]);


3. Как объявить массив из 12 целых чисел?

4. Как задать датчику случайных чисел диапазон от 10 до 100?


Вариант 5

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

BEGIN

MAS[I]:=1+I;

S:=S+MAS[I];

END;

WRITELN (S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 3 DO

MAS[I]:=8;

Ответ:

10

MAS[2]:=MAS[1]+2;

WRITELN (MAS[2]);


3. Как объявить массив из 6 вещественных чисел?

4. Как задать датчику случайных чисел диапазон от 1 до 3?


Вариант 6

1. Дан фрагмент программы. Что появится на экране?

S:=0;

FOR I:=1 TO 4 DO

BEGIN

Ответ:

4

Ответ:

10

MAS[I]:=I;

S:=S+MAS[I];

END;

WRITELN (S);


2. Дан фрагмент программы. Что появится на экране?

FOR I:=1 TO 4 DO

MAS[I]:=I;

MAS[1]:=MAS[4];

WRITELN (MAS[1]);


  1. Как объявить массив из 15 целых чисел?

  2. Как задать датчику случайных чисел диапазон от 4 до 6?


-80%
Курсы дополнительного образования

Создание динамических веб-страниц с помощью PHP и MySQL

Продолжительность 72 часа
Документ: Cвидетельство о прохождении курса
4000 руб.
800 руб.
Подробнее
Скачать разработку
Сохранить у себя:
Массивы в Паскале (25.34 КB)

Комментарии 0

Чтобы добавить комментарий зарегистрируйтесь или на сайт