Автор работы: Пользователь скрыл имя, 10 Июня 2014 в 15:34, курсовая работа
Язык Си - это универсальный язык программирования, для
которого характерны экономичность выражения, современный
набор операторов и типов данных. Язык Си не является ни
языком "очень высокого уровня", ни "большим" языком, и не
предназначается для некоторой специальной области примене-
ния, но отсутствие ограничений и общность языка делают его
для многих задач более удобным и эффективным, чем языки,
предположительно более мощные. Операционная система, компи-
лятор с языка Си и по существу все прикладные программы сис-
темы "ДЕМОС" написаны на Си. Язык Си не связан с какими-
либо определенными аппаратными средствами или системами, и
на нем легко писать программы, которые можно пропускать без
изменений на любой ЭВМ, имеющей Си-компилятор.
ВВЕДЕНИЕ 3
Лист задания 5
1.Обработка двумерных массивов 6
1.1Алгоритм решения задачи 7
1.2 Описание программы 8
2. Построение графических фигур 9
2.1 Алгоритм решения задачи 10
2.2 Описание программы 11
3. Задачи с использованием геометрических данных 12
3.1 Алгоритм решения задачи 13
3.2 Описание программы 14
4. Главное меню курсовой работы 15
5.1 Обработка двумерных массивов 16
5.2 Контрольный запуск программы 19
6.1 Построение графических фигур 20
6.2 Контрольный запуск программы 21
7.1 Задачи с использованием геометрических данных 22
7.2 Контрольный запуск программы 25
8.1 Главное меню 26
8.2 Контрольный запуск программы 28
Заключение 29
Список используемой литературы: 30
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
ДОНЕЦЬКИЙ НАЦІОНАЛЬНИЙ ТЕХНІЧНИЙ УНІВЕРСИТЕТ
Кафедра АСУ
ПОЯСНЮВАЛЬНА ЗАПИСКА
до курсової роботи з дисципліни «Програмування»
Виконавець
ст.гр. __________________
(підпис) (П.І.Б.)
Керівник __________________ Свiтлична В.А
(підпис) (П.І.Б.)
Дата захисту ______________ Оцінка _______________________
Донецьк 2013г.
РЕФЕРАТ
Пояснительная записка к курсовому проекту
31 стр., 6 рис., 3 блок-схемы, 2 источника, 4 приложения
Целью курсовой работы по дисциплине «Программирование» является практическое закрепление теоретической части курса и приобретение навыков алгоритмизации и программирования с использованием современных программных и технических средств вычислительной техники.
ФУНКЦИЯ, ПРОГРАММА, БЛОК-СХЕМА, ОПЕРАТОР, ВХОДНЫЕ ДАННЫЕ, ВЫХОДНЫЕ ДАНННЫЕ, ГРАФИКА, МАССИВ, АЛГОРИТМ,.
Оглавление
Язык Си - это универсальный язык программирования, для
которого характерны экономичность выражения, современный
набор операторов и типов данных. Язык Си не является ни
языком "очень высокого уровня", ни "большим" языком, и не
предназначается для некоторой специальной области примене-
ния, но отсутствие ограничений и общность языка делают его
для многих задач более удобным и эффективным, чем языки,
предположительно более мощные. Операционная система, компи-
лятор с языка Си и по существу все прикладные программы сис-
темы "ДЕМОС" написаны на Си. Язык Си не связан с какими-
либо определенными аппаратными средствами или системами, и
на нем легко писать программы, которые можно пропускать без
изменений на любой ЭВМ, имеющей Си-компилятор.
Язык Си является универсальным языком программирования.
Он первоначально появился в операционной системе UNIX, и
развивался как основной язык систем, совместимых с ОС UNIX.
Сам язык , однако, не связан с какой-либо одной операционной
системой или машиной; и хотя его называют языком системного
программирования, так как он удобен для написания операцион-
ных систем, он может использоваться для написания любых
больших вычислительных программ, программ для обработки
текстов и баз данных.
Язык Си - это язык относительно "низкого уровня". Это
означает, что Си имеет дело с объектами того же вида, что и
большинство ЭВМ, а именно, с символами, числами и адресами.
Они могут объединяться и пересылаться посредством обычных
арифметических и логических операций, осуществляемых реаль-
ными ЭВМ.
В языке Си отсутствуют операции, имеющие дело непос-
редственно с составными объектами, такими как строки симво-
лов, множества, списки или с массивами, рассматриваемыми как
целое. Здесь, например, нет никакого аналога операциям PL/1,
оперирующим с массивами и строками. Язык не предоставляет
никаких других возможностей распределения памяти, кроме ста-
тического определения и механизма стеков, обеспечиваемого
локальными переменных функций. Сам по себе язык Си не обес-
печивает никаких возможностей ввода-вывода. Все эти меха-
низмы высокого уровня должны обеспечиваться явно вызываемыми
функциями.
Аналогично, язык Си предлагает только простые, последо-
вательные конструкции управления: проверки, циклы, группиро-
вание и подпрограммы, но не мультипрограммирование, парал-
лельные операции, синхронизацию или сопрограммы.
Удержание языка в скромных размерах дает реальные преи-
мущества. Так как Си относительно мал, он не требует много
места для своего описания и может быть быстро выучен.
Данная курсовая работа состоит из трёх частей:
1. Обработка двумерных массивов(матриц)
2. Построение графических фигур
3. Задачи с использованием Геометрических данных
Также, все программы должны быть объединены и запускаться с помощью меню.
Задача:
Задана матрица размером NxM. Минимальный элемент каждой строки матрицы заменить среднеарифметическим значением максимальных элементов остальных строк матрицы.
Требования к выполнению задания:
В начале вводим размеры матрицы , выбираем способ заполнения элементов . После формирования выводим начальную матрицу на экран .
Далее создаем временный массив
(размер равен количеству строк матрицы)
с числами ,равными среднему арифметическому
максимальных чисел всех строк , кроме
данной .После находим в каждой строке
матрицы минимальный элемент и заменяем
его на соответствующий из массива .
Удаляем выделенную память под массив
, выводим обработанную матрицу.
Блок-схема
Программа состоит из 9 функций, подробное описание приведено ниже :
Ввод елементов матрицы вручную с клавиатуры.
Заполнение матрицы с помощью функции rand().
Заполнение матрицы числами из файла. Если в файле недостаточно чисел – дополняется нулями. Файл находится в директории
«d:\\file.txt»
Вывод матрицы на экран.
Функция находит и возвращает среднее арифметическое масимальных элементов всех строк, кроме i – той.
Функция находит и возвращает номер минимального элемента в i – той строке.
Функция заменяет элемент каждой строки матрицы среднеарифметическим значением максимальных элементов остальных строк матрицы.
Записывает матрицу в файл «d:\\file!.txt».
Основная функция , вызывается из меню .
Задача:
Окружность, вписанная в квадрат, меняют свои цвета, размеры и движутся по окружности с центром в середине экрана.
Требования к выполнению задания:
Для начала необходимо задать первоначальные координаты прямоугольника и вписанной окружности. Далее в цикле рисуем движение этого объекта по кругу . Это осуществляется с помощь изменения координат с использованием функций sin(x) и cos(x). Каждые 2 фигура меняет свои параметры.
Блок-схема
Программа состоит из одной функции
Для работы в графическом режиме необходимо:
Initwindow(x,y), где х ,у – размеры окна.
В папке BGI находится графический драйвер.
Для движения по окружности координаты x,y задаются с помощью функций
x=R*cos(i)+А;
y=R*sin(i)+В;
где R-радиус движения; A-координата окружности (х); B-координата окружности (у); i- величина угла (в радианах); x, y- координаты движущейся фигуры (точка на окружности).
Заданы две пересекающиеся прямые, с помощью 4 точек. Найти координаты точки пересечения и расстояния от нее до заданных точек.
Требования к выполнению работы:
Необходимо сформировать четыре точки. По условию они образуют две пересекающиеся прямые. Далее используя уравнения прямых находим выражение, которое будет находить точку пересечения двух прямых.
После выводим график на экран.
Блок-схема
Программа состоит из 7 функций:
Формирование точек вручную.
Считывание точек из файла.
Точки задаются с помощью функции rand().
Возвращает точку пересечения.
Рисует точки , изменяет параметры графика.
Рисует координатную плоскость.
Оновная функция.
Где a,b,c,d – точки, заданные в виду структур (имеют поля х,у); color –цвет;m -масштаб;step-количество пикселей в одной еденице измерения;width-ширина графического окна;thinkness-толщина линий;
Sx ,sy –сдвиг по координатным осям ;s –тип линий.
Клавишами + и – изменяется масштаб графика ; wasd – движение графика ;
c- изменение цвета ;v – изменение типа линий ;b-изменение толщины линий;Enter – вернуть стандартные значения ; Esc-выход.
Оно состоит из 5 кнопок:
Перемещение по меню осуществляется при помощи клавиш w и s.
Выбор - при помощи клавиши ENTER.
При нажатии клавиши Esc – выход.
Код программы
#include <stdio.h>
#include <stdlib.h>
#include <locale>
#include <conio.h>
#include <time.h>
void key(int **a , int n , int m)
{
printf("\n\nВводите элементы матрицы:");
for(int i=0;i<n;i++)
for(int j=0;j<m;j++)
{
printf("\n%d - ",i*m+j+1);
scanf("%d",&a[i][j]);
}
}
void random(int **a , int n , int m)
{
printf("\n\nЗначения заданы с помощью функции rand() в пределах [-99;99];");