Массивы

Автор: Пользователь скрыл имя, 20 Января 2012 в 14:19, контрольная работа

Описание работы

Общие сведения о массивах. Массив – это именованная группа однотипных данных, хранящихся в последовательных ячейках памяти. Каждая ячейка содержит элемент массива. Элементы нумеруются по порядку, но необязательно начиная с единицы (хотя в языке программирования Pascal чаще всего именно с нее). Порядковый номер элемента массива называется индексом этого элемента. Определить количество элементов, значение которых больше, чем у соседних элементов массива.

Работа содержит 1 файл

Алгоритмические языки и программирование. Смирнов.doc

— 108.50 Кб (Скачать)

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИЮ 

  Государственное образовательное учреждение

  высшего профессионального  образования

 

«Московский государственный  университет 

приборостроения  И информатики» 
 
 

Контрольная работа 
 

Дисциплина: «Алгоритмические языки и программирование» 
 

Тема: «Массивы» 
 
 
 
 

 
 
 
 
 
 
Выполнил: студент группы

ИТ-7 1101 (Роботы)

Смирнов Д.М.

                                                        

 
 
 
 
 
 
 
 
 
 
 

Москва, 2011 

Общие сведения о массивах. 

Массив –  это именованная группа однотипных данных, хранящихся в последовательных ячейках памяти. Каждая ячейка содержит элемент массива. Элементы нумеруются по порядку, но необязательно начиная с единицы (хотя в языке программирования Pascal чаще всего именно с нее). Порядковый номер элемента массива называется индексом этого элемента. 

Все элементы определенного  массива имеют  один и тот же тип. У разных массивов типы данных могут различаться. Например, один массив может состоять из чисел типа integer, а другой – из чисел типа real. 

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

Простой массив является одномерным. Он представляет собой линейную структуру. 

var ch: array [1..11] of char;

    h: char;

    i: integer;

 

begin

    for i := 1 to 11 do read (ch[i]);

 

    for i := 1 to 11 do write (ch[i]:3);

 

readln

end. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Задание к зачету: 

Задача: 

Пользователь  вводит n элементов массива. Требуется  определить количество элементов, значение которых больше, чем у соседних элементов массива. 
 

Описание  переменных:  

m - количество  реальных элементов массива;

qty - количество  элементов массива, значение которых  больше, чем у соседей. 

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

  1. Считываем числа с помощью процедуры read() и помещаем их в массив.
  2. Переменной qty присваиваем значение 0.
  3. Переменной i, которая обозначает индекс массива, присваиваем значение 2, т.к проверять первый элемент массива не имеет смысла (у него нет левого соседа).
  4. В условии цикла выражение i < m говорит о том, что последний элемент массива также не проверяется, т.к. у него нет правого соседа.
  5. Если очередной элемент массива (arr[i]) больше предшествующего (arr[i-1]) и очередной элемент массива (arr[i]) больше последующего (arr[i+1]), то ...
  6. ... увеличить значение qty на единицу и ...
  7. ... увеличить значение i на 2, т.к проверять следующий элемент нет смысла, т.к. уже известно, что он меньше левого соседа.
  8. Иначе (если условие не выполнилось) перейти к следующему элементу массива (i := i + 1).
  9. Вывести значение qty на экран.
 
 
 
 
 
 
 
 
 
 
 

Код программы: 

const

    n = 100

var

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

    i, m, qty: byte;

begin

    write('Количество элементов массива: ');

    readln(m);

    write('Элементы массива через пробел: ');

    for i:=1 to m do

        read(arr[i]);

    readln;

 

    qty := 0;

    i := 2;

    while i < m do

        if (arr[i] > arr[i-1]) and (arr[i] > arr[i+1]) then begin

                qty := qty + 1;

                i := i + 2

        end

        else

            i := i + 1;

 

    writeln('Кол-во элементов, которые больше соседей: ', qty);

 

readln;

end. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Информация о работе Массивы