65824

Итерационные алгоритмы

Лабораторная работа

Информатика, кибернетика и программирование

Условие задачи Спецификация программы(SRS) Тест план с результатами выполнения тестов Текст программы 1)Условия задачи: Реализовать программу: В одномерном массиве размерностью N, состоящем из чисел: 1) Найти среднее арифметическое элементов, попадающих в заданный интервал...

Русский

2014-08-06

68 KB

1 чел.

Санкт-Петербургский государственный политехнический университет

Институт информационных технологий и управления

Кафедра «Распределенных вычислений и компьютерных сетей»

ЛАБОРАТОРНАЯ РАБОТА № 2

Итерационные алгоритмы

по дисциплине «Основы программирования »

Выполнил

студент гр. 13507/1  С.С.Недобуга

Преподаватель       Т.Н.Самочадина

Содержание

  1.  Условие задачи
  2.  Спецификация программы(SRS)
  3.  Тест план с результатами выполнения тестов
  4.  Текст программы

1)Условия задачи:

Реализовать программу:

           В одномерном массиве размерностью N, состоящем из чисел:

1) Найти среднее арифметическое элементов, попадающих в заданный интервал [a,b].

2) Многочлены P(x) и Q(x) заданы своими коэффициентами. Определить коэффициенты R(x) = P(x) + Q(x).

2)Спецификация программы

  1.  Массивы должны быть заданы корректно.
    1.  Если аргумент N или N2 не является числом – сообщение “Inccorect N(N2)” .
    2.  Если аргумент N или N2 является числом < 1 – сообщение N(N2) must be greater or equal then 1".
  2.  Элементы массивов должны быть заданы корректно.
    1.  Если какой-либо член массива Mass или Mass2 не является числом – сообщение “ Incorrect member of the Mass(2)”
  3.  Диапазон [a,b] должен быть задан корректно.
    1.  Если аргумент A или B должен быть числом – сообщение “Incorrect value”.
    2.  Если аргумент A>B – сообщение “Incorrect range”.

3)Тест план с результатами выполнения тестов

№ Специф.

Вводимые значения

Вывод

1.1

N = e

Incorrect N

1.2

N2 = 0

N2 must be greater or equal then 1

2.1

Mass[3] = f

Incorrect member of the Mass

3.1

B = %

Incorrect value

3.2

A=5; B=4.5

Incorrect range

4)Текст программы

General.cpp

#include<iostream>

using namespace std;

long double srarf(const double *Mass,const int N);

void sloz(double * M1, int N1, double * M2, int N2, double * M3);

int main(int argc, char **argv)

{

 try

{

 int N;

 double *Mass;

 cout<<"Enter the numbers of massive: ";

 cin>>N;

 if(!cin)throw "Incorrect N";

 if(N<=0)throw "N must be > 0";

 Mass = new double [N];

 cout<<"Coefficients of the polynomial P(x): "<<endl;

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

 {

  cout<<"Mass["<<i+1<<"]: ";

  cin>>Mass[i];

  if(!cin) throw "Incorrect member of the Mass.";

 }

 try

 {

  long double Sr = srarf(Mass,N);

 }

 catch(const int)

 {

  cerr<<"No element in the gap."<<endl;

 }

 int N2;

 double *Mass2;

 cout<<"Enter the numbers of massive 2: ";

 cin>>N2;

 if(!cin)throw "Incorrect N2.";

 if(N<=0)throw "N2 must be > 0.";

 cout<<"Coefficients of the polynomial Q(x): "<<endl;

 Mass2 = new double [N2];

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

 {

  cout<<"Mass2["<<i+1<<"]: ";

  cin>>Mass2[i];

  if(!cin) throw "Incorrect member of the Mass2.";

 }

 double *Mass3;

 int N3;

 (N>N2)? N3=N : N3=N2;

 Mass3 = new double[N3];

 sloz(Mass,N,Mass2,N2,Mass3);

 cout<<"The coefficients of the polynomial P(x): " <<endl;

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

 {

  cout<<Mass[i]<<"x^"<<i;

  if(i!=(N-1)) cout<<'+';

 }

 cout<<endl;

 cout<<"The coefficients of the polynomial Q(x): " <<endl;

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

 {

  cout<<Mass2[i]<<"x^"<<i;

  if(i!=(N2-1)) cout<<'+';

 }

 cout<<endl;

 cout<<"The coefficients of the polynomial U(x)=Q(x)+P(x): " <<endl;

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

 {

  cout<<Mass3[i]<<"x^"<<i;

  if(i!=(N3-1)) cout<<'+';

 }

}

 catch(const char *Err)

{

 cerr<<Err;

 return -1;

}

 return 0;

}

Sloz.cpp

#include<iostream>

void sloz(double * M1, int N1, double * M2, int N2, double * M3)

{

 if (N1>N2)

{

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

 {

  if (i<N2) M3[i]=M1[i]+M2[i];

  else M3[i]=M1[i];

 }

}

 else 

{

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

 {

  if (i<N1) M3[i]=M1[i]+M2[i];

  else M3[i]=M2[i];

 }

}

}

Srarf.cpp

#include<iostream>

using namespace std;

long double srarf(const double *Mass,const int N)

{

 long double A, B, Sum=0, Kol=0;

 long double Sr;

std::cout<<"Enter the range [A;B] for arithmetic mean in this range: "<<std::endl;

std::cout<<"A,B: "<<std::endl;

   std::cin>>A>>B;

   if(!std::cin) throw "Incorrect value.";

 if(A>B) throw "Incorrect range.";

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

{

 if ((Mass[i]>=A)&&(Mass[i]<=B))

 {

  Kol++;

  Sum+=Mass[i];

 }

}

 if (Kol == 0) throw 1;

 return((double)Sum/(double)(Kol));

}


 

А также другие работы, которые могут Вас заинтересовать

21858. Взаимосвязь геомеханических процессов в массивах пород с методами ведения горных работ и естественным геомеханическим состоянием массива 132.5 KB
  Взаимосвязь геомеханических процессов в массивах пород с методами ведения горных работ и естественным геомеханическим состоянием массива. Анализ современных подходов к вопросам проблемы Управление состоянием массива пород и перспективные направления её решения с целью повышения эффективности и безопасности подземных горных работ и сокращения вредных воздействий на окружающую среду. При этом освещаются основы этой науки науки о прочности устойчивости и деформируемости массивов горных пород горнотехнических объектов и сооружений в поле...
21859. Факторы, определяющие формы проявления геомеханических процессов 272.5 KB
  Состав строение и физические свойства горных пород. Структурные особенности массивов горных пород. Естественное напряженное состояние массивов пород. Основным предметом изучения в геомеханике является массив горных пород и механические процессы происходящие в нём.
21860. Управление геомеханическими процессами при проведении капитальных выработок и строительстве подземных сооружений 2.82 MB
  Управление геомеханическими процессами при проведении капитальных выработок и строительстве подземных сооружений. Задачи управления горным давлением и основные принципы обеспечения устойчивости горных выработок. Закономерности изменения напряженного состояния приконтурного массива выработок при их различных положениях в пространстве относительно поля напряжений в массиве пород и преобладающих структурных неоднородностях. Выбор и обоснование оптимальных форм и размеров поперечных сечений рациональной ориентации выработок.
21861. Особенности напряжённо-деформированного состояния массива пород вокруг очистных выработок 266 KB
  Особенности напряжённодеформированного состояния массива пород вокруг очистных выработок. Характерные виды проявлений горного давления в очистных выработках. Взаимное влияние очистных выработок при разработке обособленных и сближенных пластов и жил. Основные принципы выбора способа управления горным давлением при ведении очистных работ.
21862. Управление геомеханическими процессами при системах с естественным поддержанием выработанного пространства 848 KB
  В этой группе систем разработки поддержание очистного пространства осуществляется за счет естественной устойчивости обнажений массивов полезного ископаемого и вмещающих пород. Следует заметить что данная группа систем разработки применяется как правило в условиях устойчивых массивов пород. Очевидно в такой постановке вопроса устойчивое состояние любых элементов системы разработки определяется соотношением действующих в массиве пород напряжений и деформационнопрочностных свойств пород слагающих рассматриваемый элемент. Если конкретно...
21863. Управление геомеханическими процессами при системах с искусственным поддержанием выработанного пространства: с закладкой выработанного пространства 344 KB
  Для поддержания подрабатываемого массива горных пород выработанное пространство вслед за выемкой руды или через некоторое время заполняется закладочным материалом. Для повышения плотности создаваемого искусственного массива специально подбираются крупность кусков и фракционный состав смесей. Для достижения высокой плотности закладочного массива рекомендуется принимать максимальный размер куска не более 250 300 мм при этом содержание мелких частиц должна быть до 10 15 а фракция от О до 20 мм до 30. Усадка закладочного массива в первом...
21864. Организация процесса разработки управленческого решения 95.5 KB
  Демократизация разработки решений; 5.1 Логические схемы деятельности в процессе разработки решения Методы принятия решений направленных на достижение намеченных целей могут быть различными: 1 метод основанный на интуиции управляющего которая обусловлена наличием у него ранее накопленного опыта и суммы знаний в конкретной области деятельности что помогает выбрать и принять правильное решение; 2 метод основанный на понятии здравого смысла когда управляющий принимая решения обосновывает их последовательными...
21865. Целевая ориентация управленческих решений 126 KB
  Взаимосвязи в системе целей Фундаментальные цели определяют общую направленность деятельности организации являются исходным пунктом построения дерева целей организации. Эти цели не всегда ясны даже высшим менеджерам а тем более – персоналу. Тактические цели: обеспечивают перевод стратегических целей в термины и показатели которые могут быть использованы при принятии решений; имеют своей основой стратегические цели направленные на их поддержку; более конкретны чем стратегические цели. Операционные цели являются еще более...
21866. Анализ внешней среды и ее влияние на реализацию альтернатив 71 KB
  С этого периода связь фирмы с внешней средой стала рассматриваться как одна из главнейших ее характеристик. Внешняя среда фирмы предприятия или организации – это совокупность активных субъектов и сил действующих за их пределами не поддающихся контролю со стороны фирмы предприятия или организации и влияющих на возможности фирмы предприятия или организации устанавливать и поддерживать отношения с субъектами внешнего окружения для достижения своих стратегических целей. Внешняя среда фирмы достаточно разнородна.2 Среда прямого воздействия К...