Essays.club - Получите бесплатные рефераты, курсовые работы и научные статьи
Поиск

Динамические переменные в языке программирования С

Автор:   •  Апрель 16, 2018  •  Лабораторная работа  •  1,505 Слов (7 Страниц)  •  475 Просмотры

Страница 1 из 7

Министерство образования и науки РФ

ФГБОУВПО Тульский государственный университет

КАФЕДРА ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ

Динамические переменные в языке программирования С

Отчет по лабораторной работе № 12

по курсу «Программирование»

Вариант № 11

Выполнила:  студент группы 220631    _________  Леонова В. Г.

                    (подпись)

Проверила:                                                          _________  Кушнир О.А.

                    (подпись)

 

Тула 2014

Цель работы

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

Задание

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

Схема алгоритма

На рисунке 1 представлена схема алгоритма определения ортогональности матрицы

[pic 1]

Рисунок 1 - Схема алгоритма определения ортогональности матрицы

На рисунке 2 представлена схема алгоритма выделения памяти под массив

                   [pic 2]

Рисунок 2 - Схема алгоритма выделения памяти под массив

На рисунке 3 представлена схема алгоритма освобождения памяти

                                       [pic 3]

Рисунок 3 - Схема алгоритма освобождения памяти

На рисунке 4 представлена схема алгоритма вывода матрицы на экран

                                [pic 4]

Рисунок 4 - Схема алгоритма вывода матрицы на экран

На рисунке 5 представлена схема алгоритма подсчета суммы парного произведения соответствующих элементов

                              [pic 5]

Рисунок 5 - Схема алгоритма подсчета суммы парного произведения

соответствующих элементов

На рисунке 6 представлена схема алгоритма определения ортогональности матрицы

                                           [pic 6]

Рисунок 6 - Схема алгоритма определения ортогональности матрицы

На рисунке 7 представлена схема алгоритма для вывода сообщения об ортогональности на экран и в файл

                         [pic 7]

Рисунок 7 - Схема алгоритма для вывода сообщения об ортогональности

на экран и в файл

Текст программы

Далее приведен текст программы на языке Turbo C, который  определяет ортогональность матрицы

#include

#include

int **CreateArray(int N)

{   int i,j;

    int **arr = (int**) malloc (N*sizeof(int*));

    for (i = 0; i

        arr[i] = (int*) malloc (N*sizeof(int));

    return arr;

}

void DestroyArray (int **arr, int N)

{  int i;

    for(i=0;i

        free(arr[i]);

    free (arr);

}

void PrintArray (int **arr, int N, FILE*f)

{   int i,j;

    for (i = 0; i

    {   for (j = 0; j

        {

            printf("%d\t", arr[i][j]);

            fprintf(f,"%d\t",arr[i][j]);

        }

        printf("\n");

        fprintf(f,"\n");

    }

    printf("\n");

}

int DotProduct (int *a, int *b, int N)

{   int i, sum;

    for (i = sum = 0; i

        sum += a[i]*b[i];

    return sum;

}

int IsOrthogonal (int **arr, int N)

{   int i, j, res = 1;

    for (i = 0; i

    {   if (DotProduct(arr[i], arr[i], N) != 1)

            res = 0;

        for (j = i+1; j

            if (DotProduct(arr[i], arr[j], N))

                res = 0;

    }

    return res;

}

void Check (int **arr, int N, FILE *f)

{

    if (IsOrthogonal (arr, N))

    {

        printf("Матрица ортогональна \n");

...

Скачать:   txt (13.4 Kb)   pdf (644.8 Kb)   docx (534.9 Kb)  
Продолжить читать еще 6 страниц(ы) »
Доступно только на Essays.club