Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль



Скачать 449.08 Kb.
страница3/5
Дата09.07.2014
Размер449.08 Kb.
ТипДокументы
1   2   3   4   5

имя: array [нижний_индекс..верхний_индекс] of тип; где

имя – имя переменной – массива.

array – ключевое слово, обозначающее, что переменная является массивом;

нижний_индекс и верхний_индекс – целые числа, определяющие диапазон изменения индексов (номеров) элементов массива и, неявно, количество элементов (размер) массива;

тип – тип элементов массива.

Примеры объявления массивов:

Примеры заполнения массивов

t: array[1..31] of real;

k: array[0..2] of integer;

n: array[1..30] of longint;

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

Например: t[1]:=1.22; d:=k[1]*k[1]-4*k[2]*k[1]; readln (n[i+1]); writeln (t[m]);

Оператор присваивания.

А[1]:=3;

или

B[1]:=’Иванов’;

B[2]:=’Петров’;

Такой способ задания значений используется, если массив небольшой.

Вывод массива.

For i:=1 to 10 do writeln(a[i]);

Вывод пятого элемента массива записывается так : write(a[5]);

1) Оператором ввода с клавиатуры.

For i:=1 to 10 do

begin

Writeln(‘введите ’,i,’-ый элемент массива’);

Readln(a[i]);

end;

{в качестве индекса используется параметр цикла }

Этот способ задания значений используется для небольших массивов.

2) Заполнение массива с использованием генератора случайных чисел.

RANDOMIZE;

For i:=1 to 10 do

a[i]:=Random(x);

{массив заполнится целыми числами в диапазоне от 0 до Х}

3) Заполнение по формуле.

Каждый элемент массива должен быть рассчитан по формуле (например ai=sin i - cos i)

for i:=1 to 10 do a[i]:=sin(i)-cos(i);

Алгоритмы работы с массивами

1) Сумма элементов массива.

s:=0;

for i:=1 to 10 do

begin

s:=s+a[i];

end;

writeln (‘Сумма=’,s);

2) Сумма положительных элементов.

s:=0;

for i:=1 to 10 do

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

writeln (‘Сумма положительных элементов = ’,s);

3) Сумма и количество четных элементов.


s:=0; k:=0;

for i:=1 to 10 do

if a[i] mod 2=0 then begin

k:=k+1;

s:=s+a[i];

end;

writeln (‘Сумма ’,s, ‘ количество’, k);

4) Поиск заданного элемента в массиве.

Найти элементы массива большие числа 5.

for i:=1 to 10 do

if a[i]>5 then writeln(a[i]);

5) Поиск наибольшего элемента в массиве.

max:=a[1];

for i:=1 to 10 do

begin

if a[i]>max Then max:=a[i];

end;

writeln (‘max=’,max);

6) Сортировка массива

q:=n-1;

For i:=1 to n-1 do begin

For i:=1 to q do begin

If a[i]>a[i+1] then

begin

w:=a[i];

a[i]:=a[i+1];

a[i+1]:=w;

end;

end;

q:=q-1;

end;

Поиск в массиве.

Например: определить сколько раз в массиве встречается число t.

k:=0;

writeln (‘Введите искомое число’); readln (t);

for i:=1 to n do if a[i]=a then inc(k);

writeln (‘Количество элементов равных ’,t,’ в массиве =’,k);

Задачи на одномерные массивы:

  1. Заполнить массив:

    1. десятью первыми членами арифметической прогрессии с известным первым членом прогрессии a и ее разностью p;

    2. двадцатью первыми членами геом-кой прогрессии с известным первым членом прогрессии a и ее знаменателем z.

  2. Дан массив. Все его элементы:

    1. уменьшить на 20;

    2. умножить на последний элемент;

    3. увеличить на число b.

  3. Определить:

    1. сумму всех элементов массива;

    2. произведение всех элементов массива;

    3. сумму квадратов всех элементов массива;

    4. сумму шести первых элементов массива;

    5. сумму элементов массива с k1-го по k2-й (значения k1 и k2 вводятся с клавиатуры; k2>k1);

    6. среднее арифметическое всех элементов массива;

    7. среднее арифметическое элементов массива с s1-го по s2-й (значения s1 и s2 вводятся с клавиатуры; s2>s1).

  4. Дан массив из 30 целых чисел массив. Напечатать:

    1. все неотрицательные элементы;

    2. все элементы, не превышающие числа 100.

    3. все четные элементы;

    4. все элементы, оканчивающиеся нулем.

  5. Дан массив натуральных чисел. Напечатать:

    1. все элементы массива, являющиеся двузначными числами;

    2. все элементы массива, являющиеся трехзначными числами.

    3. второй, четвертый и т.д. элементы;

    4. третий, шестой и т.д. элементы.

  1. Дан массив целых чисел. Выяснить:

    1. верно ли, что сумма элементов массива есть четное число;

    2. верно ли, что сумма квадратов элементов массива есть пятизначное число.

  2. Определить количество положительных и количество отрицательных элементов массива.

  3. Дан массив. Найти:

    1. сумму элементов массива, значение которых не превышает 20;

    2. сумму элементов массива, больших числа a.

  4. Дан массив целых чисел. Найти:

    1. сумму нечетных элементов;

    2. сумму элементов, кратных заданному числу;

    3. сумму элементов массива, кратных a или b.

    4. Определить сумму второго, четвертого, шестого и т.д. элементов массива.

    5. Определить частное от деления суммы положительных элементов массива на модуль суммы отрицательных элементов.

    6. Дан массив целых чисел. Определить количество четных элементов и количество элементов, оканчивающихся на цифру 5.

    7. Определить количество элементов массива, принадлежащих промежутку от a до b (значения a и b вводятся с клавиатуры; b>a).

    8. Найти число пар ''соседних'' элементов массива, являющихся четными числами.

    9. Найти число пар ''соседних'' элементов массива, оканчивающихся нулем.

    10. Найти число элементов массива, которые больше своих ''соседей'', т.е. предшествующего и последующего.

    11. Найти среднее арифметическое элементов массива, больших числа 10.

    12. Найти средние арифметические положительных и отрицательных элементов массива.

  5. Дан массив вещественных чисел.

    1. Каждый отрицательный элемент заменить на его абсолютную величину.

    2. Все элементы с нечетными номерами заменить на их квадратный корень.

    3. Из всех положительных элементов вычесть элемент с номером k1, из остальных - элемент с номером k2.

    4. Все элементы с нечетными номерами увеличить на 1, с четными - уменьшить на 1.

    5. Из всех положительных элементов вычесть элемент с номером k1, из всех отрицательных - число n. Нулевые элементы оставить без изменения.

    6. Ко всем нулевым элементам прибавить n, из всех положительных элементов вычесть a, ко всем отрицательным прибавить b.

  6. Дан массив вещественных чисел.

    1. Каждый элемент, больший 10, заменить на его квадратный корень.

    2. Все элементы массива с четными номерами заменить на их абсолютную величину.

    3. Ко всем отрицательным элементам прибавить элемент с номером m1, к остальным - элемент с номером m2.

    4. Все элементы с четными номерами удвоить, с нечетными - уменьшить на 1.

    5. Ко всем отрицательным элементам прибавить элемент с номером a1, из всех нулевых вычесть число b. Положительные элементы оставить без изменения.

    6. Из всех положительных элементов вычесть a, из всех отрицательных вычесть b.

  7. Дан массив целых чисел.

    1. Все элементы, оканчивающиеся цифрой 4, уменьшить вдвое.

    2. Все четные элементы заменить на их квадраты, а нечетные удвоить.

    3. Четные элементы увеличить на a, а из элементов с четными номерами вычесть b.

    4. Все элементы, кратные числу 10, заменить нулем.

    5. Все нечетные элементы удвоить, а четные уменьшить вдвое.

    6. Нечетные элементы уменьшить на m, а элементы с нечетными номерами увеличить на n.

  8. Дан массив. Определить:

    1. а) максимальный элемент;

    2. б) минимальный элемент;

    3. в) на сколько максимальный элемент больше минимального;

    4. г) индекс максимального элемента;

    5. д) индекс минимального и индекс максимального элементов.

  9. Дан массив. Определить:

    1. количество максимальных элементов в массиве;

    2. количество минимальных элементов в массиве.

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

  10. Дан массив.

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

    2. Найти элемент, наиболее близкий к среднему значению всех элементов массива.

  11. Дан массив. Скопировать все его элементы в другой массив такого же размера:

    1. в том же порядке расположения элементов;

    2. в обратном порядке расположения элементов.

  12. Даны два массива одного размера. Получить третий массив, каждый элемент которого равен:

    1. сумме элементов с одинаковыми номерами в заданных массивах;

    2. произведению элементов с одинаковыми номерами в заданных массивах;

    3. максимальному из элементов с одинаковыми номерами в заданных массивах.

  13. Даны два массива одного размера, в которых нет нулевых элементов. Получить третий массив, каждый элемент которого равен 1, если элементы заданных массивов с тем же номером имеют одинаковый знак, и равен нулю в противном случае.

  14. Дан массив целых чисел.

    1. Напечатать все элементы, предшествующие первому элементу с заданным значением n. Если элементов, равных n, в массиве нет, то должны быть напечатаны все элементы.

    2. Напечатать все элементы, следующие за последним элементом, оканчивающимся цифрой "7". Если элементов, оканчивающихся цифрой "7", в массиве нет, то ни один элемент не должен быть напечатан.

  15. Дан массив целых чисел. Найти:

    1. номер первого нечетного элемента. Если нечетных элементов в массиве нет, то должно быть напечатано соответствующее сообщение;

    2. номер первого элемента, кратного числу 13. Если таких элементов в массиве нет, то должно быть напечатано соответствующее сообщение;

  16. Дан массив вещественных чисел. Определить, есть ли в нем отрицательные числа. В случае положительного ответа:

    1. определить номер первого из них и напечатать все следующие за ним элементы;

    2. определить номер последнего из них напечатать все элементы, расположенные слева от него.

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

  18. Определить количество различных цифр в целом числе.

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

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

Двумерный массив — массив, у которого положение каждого элемента характеризуется двумя числами, первое из них определяет номер строки, второе – номер столбца, на пересечении которых находится элемент. Он так же, как и одномерный массив, состоит из значений одного типа. В двумерных массивах хранятся значения прямоугольных таблиц. Примеры описания двумерных массивов:

Var С : array [1. .5, 1. .10] of integer;

R1, R2: array [0. .10, 1. .365] of char;

Sim : array [1. .20, 1. .10] of string[20];

X, S : array [1. .M, 1. .N] of byte;

Работа с элементами

В математике часто используют многомерные массивы (двумерные, трехмерные и т.д.). Мы рассмотрим двумерные массивы, иначе называемые матрицами.

Например :

5 4 3 6

2 8 1 7

4 3 9 5

Данная матрица имеет размер 3 на 4, т.е. она состоит из трех строк и четырех столбцов. Если всю матрицу обозначить одним именем, например А, то каждый элемент матрицы будет иметь два индекса - А[i,j]

Здесь первый индекс i обозначает номер строки (i=1,2,3), второй индекс j - номер столбца (j=1,2,3,4).

Такую матрицу можно описать следующим образом :

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

При решении задач с использованием двумерных массивов во всех случаях (кроме некоторых частных) организуются вложенный цикл.

Перемещение по строке :

for i:=1 to m do {внешний цикл, изменяется номер строки}

for j:=1 to n do {внутренний цикл, изменяется номер столбца}

Перемещение по столбцу :

for j:=1 to n do {внешний цикл, изменяется номер столбца}

for i:=1 to m do {внутренний цикл, изменяется номер строки}

Ввод (заполнение) элементов двумерного массива (матрицы)

For i:=1 to n do

For j:=1 to m do

Readln(A[i,j]);

1. а Заполнение двумерного массива по строке.

Массив содержит 3 строки и 4 столбца, т.е. 3х4=12 элементов


а11

а12

а13

а14

а21

.

.

.

.

.

.

.
F or i:=1 to 3 do

For j:=1 to 4 do

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

1. б Заполнение двумерного массива по столбцу :


а11

а12

.

.

а21

.

.

.

а31

.

.

.
F or j:=1 to 4 do

For i:=1 to 3 do

a[i,j]:=random(100);
1   2   3   4   5

Похожие:

Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconРабота в системе турбо паскаль (ТП)
Яп паскаль был разработан Н. Виртом в 1968 – 1970году и получил широкое распространение благодаря наглядности программ и легкости...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconПрограммирование на процедурном языке высокого уровня(Turbo Pascal)
Паскаль постоянно совершенствовался, и сегодня его наиболее полно представляют версии Turbo Pascal 0, Borland Pascal 0, а также Object...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconУрок n 17 Основы программирования на языке Turbo Pascal
Паскаль (Pascal)- учебный инструментальный язык программирования вычислительных машин и персональных компьютеров. На современных...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconИнтегрированная среда программирования Turbo Pascal Язык программирования Pascal
Блеза Паскаля. Первоначально этот язык был создан для обучения программированию. Однако благодаря заложенным в нем большим возможностям...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconОсновные понятия языка паскаль
Алфавит языка Паскаль. Под алфавитом понимается упорядоченная определенным образом совокупность взаимно различимых знаков — символов....
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconДанные логического, символьного и строкового типа в Turbo Pascal. Библиотека (модуль) crt и Graph. Работа с файлами в Turbo Pascal. Построение графиков функций. Численные методы
Логический тип переменных называется булевым. Он основан на ма- тематической логике, в которой применяются две константы: 1 ис
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconКраткая теория по курсу информатика Типы данных языка программирования Turbo Pascal
В языке программирования Turbo Pascal все данные, используемые программой должны принадлежать к какому-либо типу данных. Некоторые...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconI основы языка высокого уровня турбо pascal алфавит языка Pascal
Прописные и строчные буквы Pascal'eм не различаются. Знаки «возведение в степень» и двойная кавычка в языке отсутствуют
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль iconИнтегрированная среда программирования
Интегрированная среда программирования Delphi позволяет сравнительно легко и быстро создавать законченные приложе­ния Windows. Поэтому...
Интегрированная среда Turbo Pascal. Функциональные клавиши Турбо Паскаль icon"Среда программирования Turbo Pascal "
Развивающая: развитие алгоритмического мышления, навыков работы на компьютере, познавательных интересов, памяти, внимания, самостоятельности...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org