Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Структуры данных / Лабораторный практикум ДО.doc
Скачиваний:
45
Добавлен:
23.02.2015
Размер:
189.44 Кб
Скачать

19

Федеральное агентство по образованию

ГОУ ВПО «Уральский государственный технический университет — УПИ»

Кафедра Автоматизированных систем управления

Н.Р. Спиричева

Структуры данных

Методические указания и варианты лабораторных работ

Екатеринбург

2007 Лабораторная работа №1 Фундаментальные структуры данных

Все работы выполнять с применением только целочисленных типов данных.

Для работы с числовыми данными можно использовать следующие операторы языка С++:

Операция

Краткое описание

Унарные операции

++

увеличение на 1

--

уменьшение на 1

sizeof

размер

-

поразрядное отрицание

!

логическое отрицание

-

арифметическое отрицание (унарный минус)

+

унарный плюс

&

взятие адреса

*

разадресация

new

выделение памяти

delete

освобождение памяти

(type)

преобразование типа

Бинарные и тернарная операции

*, /, +, -

Умножение, деление, сложение, вычитание

%

остаток от деления

<<

сдвиг влево

>>

сдвиг вправо

=, !=, <, <=,

>, >=

Операции сравнения

&

поразрядная конъюнкция (И)

^

поразрядное исключающее ИЛИ

|

поразрядная дизъюнкция (ИЛИ)

&&

логическое И

|

логическое ИЛИ

7 ;

условная операция (тернарная)

=

Присваивание

*=, /=, %=, +=, - =, <<=, >>= , &=, |= ,^=

Операции с присваиванием

1. Printf – Функция выводит на стандартное устройство вывода (экран)

int printf (const char *fmt, ...);

Функция выводит на стандартное устройство вывода значения переменных, пе­речисленных в списке, обозначенном многоточием, в формате, определенном строкой format.

2. scanfФункция вводит данные со стандартное устройство вывода (клавиатура)

int scanf (const char *fmt [, par1, par1...] );

Функция вводит строку параметров par1, раr2 и т. д. в формате, определенном строкой fmt, со стандартного устройства ввода (обычно с клавиатуры). Возвра­щает число переменных, которым присвоено значение.

3. powвозведение числа в степень

double pow(double x. double y);

Функция вычисляет значение числа х в степени у.

Задание на лабораторную работу

  1. Реализовать вычисление факториала чисел(на различных целочисленных типах). Определить допустимые диапазоны вычислений.

  2. Выполнить индивидуальное задание.

Варианты индивидуальных заданий

Вариант 1

Реализовать алгоритм Евклида: даны два положительных целых числа m и n. Требуется найти их наибольший общий делитель d и два целых числа a и b, таких, что am+bn=d.

Вариант 2

Последовательность

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, …,

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

Эта знаменитая последовательность была впервые предложена в 1202 г. Леонардо Фибоначчи, поэтому и носит название чисел Фибоначчи. В своей “Книге о счете” величайший математик привел такое упражнение: “Сколько пар кроликов получится от одной пары за год?” При этом предполагается понять, что каждая новая пара дает приплод – пару кроликов – каждый месяц, каждая новая пара становится плодоносящей в возрасте одного месяца и, кроме того кролики никогда не мрут.

Сгенерировать максимально возможную последовательность Фибоначчи.