Министерство Образования Российской Федерации
Московский Государственный Педагогический Университет
Кафедра прикладной математики-информатики
Курсовая работа
по дисциплине «Программирование»
Тема: «Выявление функциональной зависимости
в массиве данных»
Москва-2009
Введение
В настоящее время формализованы многие задачи, возникающие в процессе человеческой деятельности, и все шире осуществляется их автоматизация на основе средств вычислительной техники.
Одним из методов формализации является алгоритмическое решение задач. Эффективность алгоритмического метода заключается в том, что он позволяет легко автоматизировать решение задачи путем составления программы на одном из языков программирования.
Простым в изучении, хорошо формализованным и широко распространенным языком программирования является язык C++. Его формальная строгость, высокая мощность конструкций объявления и обработки данных, возможности объектного программирования, а также общая направленность на обучение методам программирования выгодно выделяют этот язык среди других языков программирования высокого уровня.
С ходом научно-технического прогресса человечество всё более нуждается в удобном способе хранения и поиска данных.
Самоорганизующиеся списки (таблицы) обеспечивают способы наиболее эффективного хранения, поиска и наилучшей обработки данных. Именно поэтому самоорганизующиеся таблицы приобретают все большее значение в современном мире. В условиях глобальной компьютеризации самоорганизующиеся таблицы из фактора узкопрофессионального назначения переходят на более глобальный и, более того, даже бытовой уровень!
В этой работе приводится одна из реализаций простейшей самоорганизующейся таблицы, с самоорганизацией методом транспозиции.
1. Формальная постановка задачи
Определить функциональную зависимость в массиве данных.
2. Описание алгоритма
Алгоритм определяемой функциональной зависимости состоит из одного главного модуля и нескольких модулей. В главном модуле находится 3 цикла. В главном модуле создается файл, в котором сохраняется вся информация. Вывод информации производится в файле «dat.txt».3. Описание программы
Программа состоит из одного главного модуля, в котором используются операторы стандартных библиотек:
· stdio.h.
· stdlib.h
· conio.h
· math.h
· time.h
· io.h
· dos.h
· string.h
· sysstat.h
Для хранения информации в программе создается файл «dat.txt».
Атрибут a функционально определяет атрибут b , если каждому значению атрибута a соответствует не более одного значения атрибута b .
4. Инструкция пользователю
Программа предназначена для определения функциональной зависимости в массиве данных.
Программа функционирует на IBMPC/AT 386 и выше и для нормальной работы требует 1 Мб оперативной памяти и 15 Кб дисковой памяти.
Входные данные заполняются в программе случайными целыми числам.
Для завершения работы с программой необходимо нажать клавишу escape.
Контрольный пример
5.
Заключение
На данном тестовом наборе программа функционирует успешно. Поставленная задача выполнена полностью, оформление соответствует требованиям ЕСПД.
|
# include <stdio.h>
# include <conio.h>
# include <math.h>
# include <stdlib.h>
# include <time.h>
# include <io.h>
# include <dos.h>
# include <string.h>
# include <SYSSTAT.H>
int const m=6, n=10, Ld=m*n/4, Lk=m*5;
unsigned short kk=0;
int a [n-1] [m-1];
int b [n-1] [m-1];
unsigned short k[Lk];
unsigned short kn[m];
unsigned short d[Ld] [2];
unsigned short dn[m] [2];
unsigned short kt [m+1];
unsigned short Lt;
unsigned short mt;
// – //
unsigned short i, j;
void tabl()
{
int i;
randomize();
for (i=0; i<n; i++)
for (j=0; j<m; j++)
{
a[i] [j]=rand()%(n+m);
if (a[i] [j]<0)
a[i] [j]=0;
}
}
void vivod_1 ()
{
FILE *f;
int i, j;
f=fopen («dat.txt», «a+»);
fprintf (f, «matrican»);
for (i=1; i<=m; i++)
fprintf (f,» a % 1d», i);
fprintf (f, "n»);
for (i=0; i<n; i++)
{
for (j=0; j<m; j++)
fprintf (f, «%3d», a[i] [j]);
fprintf (f, "n»);
}
fprintf (f, "n»);
fclose(f);
}
void vivod_2 ()
{
FILE *f;
int i, j;
f=fopen («dat.txt», «a+»);
fprintf (f, «new_matrican»);
for (i=1; i<=m; i++)
fprintf (f,» a % 1d», dn[i] [1])
Внимание, отключите Adblock
Вы посетили наш сайт со включенным блокировщиком рекламы!
Ссылка для скачивания станет доступной сразу после отключения Adblock!
Одними из наиболее популярных услуг на рынке IT-технологий являются создание и продвижение лендингов. Они способны положительно влиять на деятельность любого бизнес-проекта в интернете. Судя по многочисленным отзывам, заказавшие создание лендингов люди ни разу не пожалели о потраченных деньгах. Они вложили в будущее, которое неразрывно связано с интернетом. Всё больше и больше предпринимателей обращаются к услугам разных агентств, веб-студий, чтобы заказать создание лендинга у профессионалов.