Решение задачи линейного программирования

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

Рубрика Программирование, компьютеры и кибернетика
Вид контрольная работа
Язык русский
Дата добавления 06.01.2013
Размер файла 600,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Размещено на http://www.allbest.ru/

Задание 1

Составить программу вычисление линейного арифметического выражения

При x=1,825*10-2; y=18,225; z=-3,298*10-2; Ответ: S=1,21308.

Код программы

#include<iostream> // Библиотеки…

#include<math.h>

#include<conio.h>

Using namespace std; // Пространство имен

int main ()

{ // Начало главной функции

double x, y, z, s, a, b, c; // Объявляем переменные

 //a, b, c - переменные для промежуточных действий

cout<< «Vvedite x:»; // Вводим значения x, y, z

cin>>x;

cout<< «Vvedite y:»;

cin>>y;

cout<< «Vvedite z:»;

cin>>z;

a=fabs (pow(x, y/x) - pow (y/x, 1.0/3)); // Все что под модулем

b=(cos(y) - (z/(y-x)))/(1+pow (y-x, 2)); // Дробь

c=(y-x)*b; // Скобки+дробь

s=a+c; // Конечный результат

cout<< «Results=»<<s<<endl; // Вывод результата

getch();

return 0; // Завершение выполнения программы

} // Конец главной функции

Результаты выполнения программы

Задание 2

Составить согласно индивидуальному варианту программу вычисления выражения. Предусмотреть вывод информации о выбранной ветви вычислений.

Код программы

#include<iostream> // Библиотеки…

#include<math.h>

#include<conio.h>

using namespace std; // Пространство имён

int main ()

{ // Начало главной функции

double x, y, s; // Объявляем переменные

cout<< «Vvedite x:»; // Вводим значения x, y

cin>>x;

cout<< «Vvedite y:»;

cin>>y;

if (x>fabs(y)) { //x>|y|

s=2*pow (x, 2)+3*pow (y, 2)

cout<<»\nVetv 1\n»;

}

else if (x<fabs(y) && x>3) { // 3<x<|y|

s=fabs (x-y);

cout<<»\nVetv 2\n»;

}

else { // иначе

s=pow (fabs(x-y), 1.0/3);

сout<<»\nVetv 3\n»;

}

cout<<»\nResult="<<s<<endl; // Вывод результата

getch();

return 0; // Завершение выполнения программы

} // Конец главной функции

Результаты выполнения программы

Задание 3

Написать программу вывода на экран таблицы значений функциидля x, изменяющего от а=0,1 до b=1 с шагом н=0,1. Вычисление суммы оформить в виде функции пользователя. Предусмотреть передачу параметров в функцию разными способами.

Код программы

#include <iostream>

#include <iomanip>

#include <math.h>

#include <conio.h>

using namespace std;

 // Прототипы функций

double Summa (double, int);

void Summa (double*, int*, double*);

void Summa (double&, int&, double&);

int main ()

{

double x, a, b, h;

double s=2;

int n;

cout<< «a=»; cin>>a; //a=0.1 b=1.2 h=0.1 n=20

cout<< «b=»; cin>>b;

cout<< «h=»; cin>>h;

cout<< «n=»; cin>>n;

cout<< «Value»<<setw(20)<< «Pointer»<<setw(24)<< «Reference\n»;

x=a;

do

{

cout<<setw(5)<<x<<setw(10)<<Summa (x, n);

Summa (&x, &n, &s);

cout<<setw(10)<<x<<setw(10)<<s;

Summa (x, n, s);

cout<<setw(10)<<x<<setw(10)<<s<<endl;

x+=h;

} while (x<=b+h/2);

cout<<endl;

getch();

return 0;

}

double Summa (double x, int n)

{

double s;

s=2;

for (int i=1; i<=n; i++)

s+=((2*n+1)/sin (n*x))*pow (x, n-1);

return s;

}

void Summa (double *x, int *n, double *s)

{

*s=2;

for (int i=1; i<=*n; i++)

*s+=((2*(*n)+1)/sin((*n)*((*x))))*pow (*x,*n-1);

}

void Summa (double &x, int &n, double &s)

{

s=2;

for (int i=1; i<=n; i++)

s+=((2*n+1)/sin (n*x))*pow (x, n-1);

}

Результаты выполнения программы

Задание 4

программа линейный арифметический массив

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

программа линейный арифметический массив

Код программы

#include <math.h>

#include <iostream>

#include <conio.h>

using namespace std;

void Enter (int n, int* mas) {

for (int i=0; i<n; i++) {

cout<<«a [«<<i+1<<»]=»;

cin>>mas[i];

}

}

int LastPlus (int n, int* mas) {

int k=0;

for (int i=n; i>0; i-) {

if (mas[i]<0) {k=i-1; break;}

}

return k;

}

int Print (int n, int* mas) {

for (int i=0; i<n; i++)

cout<<mas[i]<<»»;

cout<<»\n»;

return 0;

}

void ColSum (int k, int* mas) {

int sum=0;

int col=0;

for (int i=0; i<k; i++) {

if ((mas[i]% 2)!=0) {

sum+=mas[i];

col++;

}

}

cout<< «Summa elementov=»<<sum<<endl;

cout<< «Kol-vo elementov=»<<col<<endl;

}

int main()

{

int n, k;

cout<< «n=»;

cin>>n;

int *mas=new int[n];

cout<< «Vvedite massive»<<endl;

Enter (n, mas);

Print (n, mas);

k=LastPlus (n, mas);

ColSum (k, mas);

getch;

return 0;

}

Результаты выполнения программы

Задание 5

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

Найти максимальный среди элементов, лежащих выше побочной диагонали.

Код программы

#include <iostream>

#include <conio.h>

using namespace std;

void Max (int n, int m, int** mas) {

int max;

max=mas[1] [n];

for (int i=0; i<n; i++) {

for (int j=0; j<m; j++) {

cout<<mas[i] [j]<<»»;

if ((i + j)<n-1) {if (mas[i] [j]>max) max=mas[i] [j];}

}

cout<<»\n»;

}

cout<< «Max=»<<max<<endl;

}

int main()

{

int n, m;

int **mas;

cout<< «Vvedite razmernost NxM»<<endl;

cin>>n>>m;

mas=new int *[n];

for (int k=0; k<n; k++)

mas[k]=new int[m];

for (int i=0; i<n; i++) {

for (int j=0; j<m; j++) {

cout<<«mas [«<<i<<»] [«<<j<<»]=»;

cin>>mas[i] [j];

}

}

Max (n, m, mas);

getch();

return 0;

}

Результаты выполнения программы

Размещено на Allbest.ru


Подобные документы

  • Алгоритм решения задач линейного программирования симплекс-методом. Построение математической модели задачи линейного программирования. Решение задачи линейного программирования в Excel. Нахождение прибыли и оптимального плана выпуска продукции.

    курсовая работа [1,1 M], добавлен 21.03.2012

  • Теоретическая основа линейного программирования. Задачи линейного программирования, методы решения. Анализ оптимального решения. Решение одноиндексной задачи линейного программирования. Постановка задачи и ввод данных. Построение модели и этапы решения.

    курсовая работа [132,0 K], добавлен 09.12.2008

  • Математическое программирование. Линейное программирование. Задачи линейного программирования. Графический метод решения задачи линейного программирования. Экономическая постановка задачи линейного программирования. Построение математической модели.

    курсовая работа [581,5 K], добавлен 13.10.2008

  • Общее понятие и характеристика задачи линейного программирования. Решение транспортной задачи с помощью программы MS Excel. Рекомендации по решению задач оптимизации с помощью надстройки "Поиск решения". Двойственная задача линейного программирования.

    дипломная работа [2,4 M], добавлен 20.11.2010

  • Нахождение минимума целевой функции для системы ограничений, заданной многоугольником. Графическое решение задачи линейного программирования. Решение задачи линейного программирования с использованием таблицы и методом отыскания допустимого решения.

    курсовая работа [511,9 K], добавлен 20.07.2012

  • Общая характеристика организации массива в виде двоичного дерева. Особенности линейного и двоичного поиска заданного элемента массива. Методика упорядочения массива методом сортировки деревом. Инструкции и текст программы для нечисленной обработки данных.

    курсовая работа [242,3 K], добавлен 12.11.2010

  • Методы решения задач линейного программирования: планирования производства, составления рациона, задачи о раскрое материалов и транспортной. Разработка экономико-математической модели и решение задачи с использованием компьютерного моделирования.

    курсовая работа [607,2 K], добавлен 13.03.2015

  • Решение задачи линейного программирования симплекс-методом: постановка задачи, построение экономико-математической модели. Решение транспортной задачи методом потенциалов: построение исходного опорного плана, определение его оптимального значения.

    контрольная работа [118,5 K], добавлен 11.04.2012

  • Постановка задачи линейного программирования и формы ее записи. Понятие и методика нахождения оптимального решения. Порядок приведения задач к каноническому виду. Механизмы решения задач линейного программирования аналитическим и графическим способами.

    методичка [366,8 K], добавлен 16.01.2010

  • Понятие арифметического точечного пространства. Различные виды плоскостей в пространстве. Общая задача оптимизации. Геометрия задачи линейного программирования. Графический метод решения задачи линейного программирования при малом количестве переменных.

    курсовая работа [756,9 K], добавлен 29.05.2014

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.