Реферат: Программирование математических задач
|
Название: Программирование математических задач Раздел: Рефераты по информатике, программированию Тип: реферат | ||||
БЕЛОРУССКИЙ НАЦИОНАЛЬНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Международный институт дистанционного образования Кафедра "Информационные системы и технологии" Реферат по учебной дисциплине "Языки программирования" ТЕМА РАБОТЫ: "Программирование математических задач" Руководитель: Кондратенок Е.В. Исполнитель: студент 417319/14 учебной группы Кодатенко Ю.А. Минск 2010 Введение Постановка задачи Постановка задачи Теоретические основы Схема алгоритма программы Разработка си-программы Результаты выполнения Заключение Литература
Си - стандартизированный процедурный язык программирования, разработанный в начале 1970-х годов сотрудниками Bell Labs Кеном Томпсоном и Денисом Ритчи как развитие языка Би. Си был создан для использования в операционной системе UNIX. С тех пор он был портирован на многие другие операционные системы и стал одним из самых используемых языков программирования. Си ценят за его эффективность. Он является самым популярным языком для создания системного программного обеспечения. Его также часто используют для создания прикладных программ. Несмотря на то, что Си не разрабатывался для новичков, он активно используется для обучения программированию. В дальнейшем синтаксис языка Си стал основой для многих других языков.
Постановка задачиСоставить алгоритм и программу на языке Си для формирования двух матриц A= [ aij] и B= [ bij] размерностью nxn ( n=10), значения элементов aij иbij определяются по формулам (1). Определить сумму элементов, расположенных на диагоналях каждой матрицы. Исходные данные: (1)
Для вычисления сумм использовать функцию. Матрицы Aи Bи результаты вычисление сумм вывести в файл.
|
![]() |
Разработка си-программы
Для реализации алгоритма и решения задачи, а в частности генерирования значений элементов матрицы, нахождения суммы, запись результата в файл необходима реализация цикла FOR.
Необходимые константы:
const int n=10; для определения размера матриц;
переменные:
i,j,sтипа int;
массивы:
a [n] [n],b [n] [n] типа int;
файловые указатели:
char* fname="c: \\data.txt";
FILE*input;
Функция для расчета суммы диагоналей матриц intsumm (intf [n] [n], int).
Вывод данных реализовываем с помощью форматного ввода-вывода языка С.
#include<stdio.h>
#include <conio.h>
#include <math.h>
const int n=10; // Постоянная переменная размерности массива
int a [n] [n],b [n] [n], i,j,s; // массивы
intsumm (intf [n] [n], int); // прототип функции вычисления суммы диагоналей
char* fname="c: \\data.txt"; // файловый указатель
FILE*input; // указатель файловой переменной
voidmain ()
{input=fopen (fname,"w"); // открываем файл для записи
if (input! =0) { // проверка отрылся ли файл
fprintf (input,"Матрица А: \n"); // запись в файл
for (i=1; i<=10; i++) // организация циклов
{for (j=1; j<=10; j++)
{a [i] [j] =3*i*j-3; // расчет ij-го элемента матрицы
fprintf (input,"%4d ",a [i] [j]); // запись результата в файл
}
fprintf (input,"\n");
}
// Запись суммы элементов диагонали в файл
fprintf (input,"Сумма элементов диагоналей матрицы А: %d\n\n",summ (a,n));
fprintf (input,"Матрица В: \n");
for (i=1; i<=10; i++)
{for (j=1; j<=10; j++)
{b [i] [j] =2*i*j-2;
fprintf (input,"%4d ",b [i] [j]); }
fprintf (input,"\n");
}
s=summ (b,n);
fprintf (input,"Сумма элементов диогоналей матрици B: %d\n",s);
}
fclose (input);
printf ("Результаты сохранены в файле: C: \\data.txt.");
}
intsumm (intf [n] [n], inth) // функция расчета суммы элементов диогонали
{int sm,k;
for (k=1; k<=h; k++)
{sm+=f [k] [h-k+1]; // Побочная диогональ
sm+=f [k] [k]; // Главная диогональ
}return sm; }
Результаты выполнения
Запуск
На экране:
![]()
Просмотр результата в файле: (рисунок 1)

Рисунок 1.
Заключение
В ходе выполнения курсовой работы были закреплены практические навыки в разработке программ на языке Си (построение схемы алгоритма программы, составление на его основе исходного текста программы, отладка программы, получение результатов). Таким образом, курсовая работа показала, что язык Си является необходимым инструментальным средством для решения сложных инженерно-технических задач.
Литература
1. Беллман Р. Введение в теорию матриц. - М.: Мир, 1969 (djvu).
2. Часть 1. (Язык программирования Си). Типография ВА РБ. Минск 1996.
3. Моя первая программа на С/С++.А. Нейбауэр.
4. Конспект лекций.
![]() |

Теоретические основы