Автор работы: Пользователь скрыл имя, 26 Октября 2010 в 22:52, Не определен
Курсовая работа
}
return 0;
}
matrix.cpp:
#include <locale.h>
#include <malloc.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include "matrix.h"
#include "solution.h"
float** CreateMatrix(unsigned
int NumRow, unsigned int NumCol) {
float **Pointer;
Pointer = (float**) malloc(sizeof(float*) * NumRow);
if
(Pointer == NULL) {return 0;}
for (unsigned int i = 0; i < NumRow; i++) {
Pointer[i] = (float*) malloc(sizeof(float) * NumCol);
if (Pointer[i] == NULL) {return 0;}
}
return(Pointer);
}
void DelMatrix(float **Matrix, int NumRow) {
for (int i = 0; i < NumRow; i++) {
free(Matrix[i]);
}
free(Matrix);
return;
}
int FullMatrix(float **Matrix, int NumRow, int NumCol) {
char Number[255];
int i = 0, NumErrors;
while (i < NumRow) {
NumErrors = 0;
printf("\nВведите
%d-ую строку матрицы, отделяя
числа друг от друга пробелами
(дробную\nчасть от целой
for (int j = 0; j < NumCol; j++) {
scanf("%s", Number);
if (!ElementsCheck(&Matrix[i][j],
Number)) {NumErrors++;}
}
if (NumErrors == 0) {i++;}
}
return 0;
}
int PrintMatrix(float **Matrix, int NumRow, int NumCol) {
for (int i = 0; i < NumRow; i++) {
for (int j = 0; j < NumCol; j++) {
if (abs(Matrix[i][j]) < 1e-5) {printf("%10.5f", 0.0);} else {printf("%10.5f", Matrix[i][j]);}
}
printf("\n\n");
}
return 0;
}
main.cpp:
#include <conio.h>
#include <locale.h>
#include <stdio.h>
#include <stdlib.h>
#include "interface.h"
#include "help.h"
#include "matrix.h"
#include "solution.h"
int main(){
setlocale(LC_ALL, "Russian");
system("color F0");
char Action = '\t';
char Head[255];
while (Action != 'q') {
system("cls");
system("color F0");
Header("Меню", "=", 42);
printf("\n\
Action = getch();
if (Action != 'q' && Action != 'h' && Action != 's') {
Alert("Для
getch();
continue;
}
if (Action == 's') {
system("cls"
FindSolution
continue;
}
if (Action == 'h') {
system("cls"
system("
Header("Меню >> Справка", "=", 42);
printf("\n\
StartHelp();
printf("\n")
GaussMethod(
printf("\n")
MemoryMatrix
printf("\n\
getch();
}
}
return 0;
}
ЗАКЛЮЧЕНИЕ
В
ходе выполнения курсовой работы были
изучены принципы разработки программного
комплекса решения математической задачи
численными методами на примере решения
системы линейных уравнений методом Гаусса.
БИБЛИОГРАФИЧЕСКИЙ
СПИСОК
1. Ильин В. А., Позняк Э. Г. Линейная алгебра.- М.: ФИЗМАТЛИТ, 2005.- 280 с.
2. Керниган Б., Ритчи Д. Язык программирования C.- М.: Вильямс, 2009.- 304 с
3. ГОСТ 19.402-78 Описание программы.
4. ГОСТ 19.502-78 Описание применения. Требования к содержанию и оформлению.
5. ГОСТ 19.504-79 Руководство программиста. Требования к содержанию и оформлению.
6. ГОСТ 19.401-78 Текст программы. Требования к содержанию и оформлению.
7. ГОСТ Р 7.0.5 - 2008. БИБЛИОГРАФИЧЕСКАЯ ССЫЛКА. Общие требования и правила составления.
8. СТАНДАРТЫ Липецкого государственного технического университета по оформлению и нормоконтролю учебных отчётов, работ, проектов /Составитель В.С. Зайцев. — Липецк, 2002. 32 с.