Алгоритмізація та програмування

Автор работы: Пользователь скрыл имя, 08 Июня 2015 в 22:42, курсовая работа

Описание работы

Си - универсальный язык программирования. Он тесно связан с системой UNIX, так как был разработан в этой системе, которая, как и большинство программ, работающих в ней, написаны на Си. Однако язык не привязан жестко к какой-то одной операционной системе или машине. Хотя он и назван «языком системного программирования», поскольку удобен для написания компиляторов и операционных систем, оказалось, что на нем столь же хорошо писать большие программы другого профиля.

Файлы: 1 файл

КурсачПрограммирование.docx

— 271.65 Кб (Скачать файл)

 

 

4.Разработка и описание алгоритма решения поставленной задачи

 

4.1  Задачи сортировки

В цикле 1 производим проверку: если текущий элемент больше 0, то записываем его в дополнительный массив C. Таким образом, проходим по всему массиву.  В следующем цикле, цикле 2, мы сортируем положительные элементы в дополнительном массиве C методом вставок. В цикле 3 мы заменяем положительные элементы из исходного массива на отсортированные положительные элементы из дополнительного массива.


 


 

 

 


 



 

 

 


 




 

 




 


 

 



 




 


 






 

 

 

 




 

 

5. Описание программы

 

 Сведения о программе

  • Наименование программы  - «menu.exe»
  • Программа написана на языке программирования Си в среде Microsoft Visual Studio 2010.
  • Логическая структура программы:

Программа состоит из пяти файлов: menu.срр, first.h, second.h, third.h, menu_f.h.

 

  1. Описание файла cl.h

 

Файл содержит в себе функцию SetColor(), которая

определяет цвет и фон текста..

 

Параметры функции:

      • ConsoleColor text – определяет цвет текста;
      • ConsoleColor background – определяет фон текста.

 

Функция имеет тип void.

 

5.2     Описания файла first.h.

 

Файл содержит функции для реализации задания №1 - методы сортировки;

 

      1. random()

  Функция random() формирует случайным образом значения элементов массива. В таблице 5.1 представлены локальные переменные используемые функцией rand()

 

Параметры функции:

    • int *A – указатель на массив, который необходимо заполнить;
    • int n – количество элементов массива;

 

Функция имеет тип void.

Таблица 5.1. Локальные переменные функции random ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива


 

 

      1. klava()

  Функция klava() заполняет массив значениями, которые пользователь вводит с клавиатуры.

В таблице 5.2 представлены локальные переменные используемые функцией klava()

 

Параметры функции:

    • int *A – указатель на массив, который необходимо заполнить;
    • int n – количество элементов массива;

 

Функция имеет тип void.

Таблица 5.2. Локальные переменные функции klava ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива


 

      1. file()

` Функция file() заполняет массив значений из файла.

В таблице 5.3 представлены локальные переменные используемые функцией file()

 

Параметры функции:

    • int *A– указатель на массив, который необходимо заполнить;
    • int n – количество элементов массива.
    • char *name - Массив символов, в который записывается имя файла

 

Функция имеет тип void.

Таблица 5.3. Локальные переменные функции file ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива

f

FILE*

Файл, из которого считываются значения массива


 

      1. vivod()

Функция vivod() выводит на экран массив.

В таблице 5.4 представлены локальные переменные используемые функцией vivod()

 

Параметры функции:

      • int *A – указатель на массив, который необходимо заполнить;
      • int n – количество элементов массива.

 

Функция имеет тип void.

Таблица 5.4. Локальные переменные функции vivod ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива


 

      1. vivod2()

Функция vivod2() выводит на экран массив, в котором определенные элементы закрашиваются определенным цветом.

В таблице 5.5 представлены локальные переменные используемые функцией vivod2()

 

Параметры функции:

      • int *A– указатель на массив, который необходимо заполнить;
      • int n – количество элементов массива.

 

Функция имеет тип void.

Таблица 5.5 Локальные переменные функции vivod2 ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива


 

 

      1. obrabotka()

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

 

В таблице 5.6 представлены локальные переменные используемые функцией obrabotka()

 

Параметры функции:

      • int *A – указатель на массив, который необходимо заполнить;
      • int n – количество элементов массива.

 

Функция имеет тип void.

 

Таблица 5.6. Локальные переменные функции obrabotka ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива A

j

int

Параметр цикла по элементам массива C

tmp

int

Переменная в которую записывается заменяемый элемент

int

Указатель на дополнительный массив для записи положительных элементов

k

int

Количество элементов массива С


 

 

5.3 Описание файла second.h

Файл содержит функции для реализации задания №2 – построение графических фигур.

 

      1. round()

Функция round() выполняет рисование соответственно заданию: ф-ия рисует круг, обеспечивает его движение, изменение фона, шлейф и исчезновение шлейфа .

 

В таблице 5.7 представлены локальные переменные используемые функцией round()

 

Параметры функции:

- int R – переменная задает радиус круга

- int d – переменная задает размер окна

 

Функция имеет тип void.

 

Таблица 5.7. Локальные переменные функции round ().

Имя

Тип

Назначение

i

int

Определяет длину шлейфа

c

int

Отвечает за смену цвета круга

bk

int

Отвечает за смену цвета фона

x

int

Текущая позиция центра круга

h

int

Шаг смещения круга по диагонали

ch

Char 

Хранит код кнопки


 

 

 

 

5.4 Описание файла third.h

Файл содержит функции для реализации задания №3 – обработка текстовых файлов.

 

Перечень глобальных переменных приведен в таблице 5.8 .

 

Таблица 5.8. Глобальные переменные файла third.h.

Имя

Тип

Назначение

N

char[Count][10]

Массив исходных местоимений

K

char[Count][10]

Массив исходных местоимений в множественном числе

Count

define

Количество местоимений

Separate

char[]

Массив разделителей


 

 

      1. filesize()

    Функция filesize() определяет размер файла.

 

        В таблице 5.9 представлены локальные переменные используемые функцией filesize()

 

Параметры функции:

- FILE *F – Указатель на файл, размер которого мы считаем

- int cur – текущее положение курсора

 

Функция имеет тип int и возвращает n-размер файла.

 

Таблица 5.9. Локальные переменные функции filesize ().

Имя

Тип

Назначение

n

int

Количество символов в файле

c

char

Текущий символ


 

      1. zamena()

Функция zamena() выполняет замену символов в файле

В таблице 6.1 представлены локальные переменные используемые функцией zamena()

 

Параметры функции:

- FILE *F – Файл, размер которого мы считаем

- fpos_t pos - позиция, с которой начинается местоимение в файле

- int k – номер местоимения

 

Функция имеет тип void.

 

Таблица 6.1. Локальные переменные функции zamena ().

Имя

Тип

Назначение

i

int

Позиция, с которой начинается местоимение в файле

c

char

Текущий символ


 

 

 

      1. isseparate()

Функция isseparate() проверяет элемент, является ли тот разделительным знаком.

В таблице 6.2 представлены локальные переменные используемые функцией isseparate()

 

Параметры функции:

- char *s - текст

- char c – символ, который проверяется

 

Функция имеет тип int и возвращает i.

 

Таблица 6.2. Локальные переменные функции isseparate ().

Имя

Тип

Назначение

i

int

Параметр цикла по элементам массива разделителей


 

      1. mestoimenie()

Функция проверяет, является ли слово местоимением

В таблице 6.3 представлены локальные переменные используемые функцией mestoimenie()

Информация о работе Алгоритмізація та програмування