Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
УМК_ОАиП.doc
Скачиваний:
47
Добавлен:
01.04.2025
Размер:
5.06 Mб
Скачать

Решение задач по вариантам.

1. Определите члены последовательность Фибоначчи.

2. Найдите максимальный элемент в одномерном массиве.

3. Составьте алгоритм вычисления суммы .

Указание. Обозначьте и используйте соотношения

4. Вычислите

5. Определите n–й член последовательности, в которой каждый следующий член равен сумме обратных величин всех предыдущих.

6. Определите n–й член последовательности, в которой каждый следующий член равен сумме квадратов всех предыдущих.

7. При положительном а решением уравнения х=х/2+а/(2х) служит х= . Рекуррентное соотношение

можно использовать для быстрого вычисления . Определите корень квадратный числа а.

8. Составьте алгоритм для вычисления , используя соотношение

9. Составьте алгоритм, вычисляющий n–й член последовательности, заданной соотношениями:

10. Составить рекурсивную программу ввода с клавиатуры последовательности чисел (окончание ввода - 0) и вывода ее на экран в обратном порядке.

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

Раздел 6. Массивы. Стандартные алгоритмы на массивах. Тема 6.1. Одномерные массивы. Способы задания одномерных массивов. Обработка массива.

Цель: перейти к рассмотрению структурированных типов данных.

  • Понятие массива.

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

  • Способы задания одномерных массивов

  • Типовые алгоритмы обработки одномерных массивов

Определение. Массив – это совокупность объектов, состоящая из фиксированного упорядоченного числа элементов, имеющих один и тот же тип.

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

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

Для описания массива используется словосочетание array of (массив из) и имеет вид:

array [тип индекса] of <тип>

Тип индекса – любой порядковый номер, определяющий границы изменения значений индекса.

Описание массива задается следующим образом:

<имя типа> = array [тип индекса] of <тип данных>;

Например,

Program Name;

Const

m=50;

Type

mas=array [1..m] of integer; {массив из m целых чисел}

digit = array [0 .. 9] of char; {массив десяти символов, имеющих порядковые номера от 0 до 9}

matrix = array [byte] of string; {массив 256 строк, пронумерованных с 0 до 255}

Var

massiv: mas;

m: matrix;

d: digit;

a: array [1..n] of real; {явное описание переменной типа массив}

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

Если несколько массивов имеют одинаковый тип индексов и одинаковый базовый тип, то можно при описании объединить массивы в один список. Например

Var

a, b, c: mas;

Такой записью мы объявили три массива вещественных чисел a, b, c, каждый из которых содержит по 50 элементов:

A[1], А[2], ... A[50],_

В[1], В[2], ... В[50],

С[1], С[2], ... С[50].

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

Общий объем = количество ячеек памяти * объем одной ячейки

Индекс элемента

0

1

2

3

4

5

6

7

8

9

m

2

*

4

=

в

о

с

е

м

ь

m[4] – элемент массива m, находящийся в ячейке с индексом 4 и равный символу ‘в’