65824
Итерационные алгоритмы
Лабораторная работа
Информатика, кибернетика и программирование
Условие задачи Спецификация программы(SRS) Тест план с результатами выполнения тестов Текст программы 1)Условия задачи: Реализовать программу: В одномерном массиве размерностью N, состоящем из чисел: 1) Найти среднее арифметическое элементов, попадающих в заданный интервал...
Русский
2014-08-06
68 KB
1 чел.
Санкт-Петербургский государственный политехнический университет
Институт информационных технологий и управления
Кафедра «Распределенных вычислений и компьютерных сетей»
ЛАБОРАТОРНАЯ РАБОТА № 2
Итерационные алгоритмы
по дисциплине «Основы программирования »
Выполнил
студент гр. 13507/1 С.С.Недобуга
Преподаватель Т.Н.Самочадина
Содержание
1)Условия задачи:
Реализовать программу:
В одномерном массиве размерностью N, состоящем из чисел:
1) Найти среднее арифметическое элементов, попадающих в заданный интервал [a,b].
2) Многочлены P(x) и Q(x) заданы своими коэффициентами. Определить коэффициенты R(x) = P(x) + Q(x).
2)Спецификация программы
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));
}
А также другие работы, которые могут Вас заинтересовать | |||
20081. | Конструирование при циклическом нагружении. Факторы, повышающие и снижающие предел выносливости | 101.5 KB | |
Уменьшение концентрации напряжений. Если устранить концентраторы напряжений полностью невозможно то следует заменять сильные концентраторы умеренно действующими. Концентраторы следует удалять из наиболее напряженных участков детали и переносить если это допускает конструкция в зоны наименьших напряжений. С целью уменьшения номинальных напряжений целесообразно увеличивать сечения детали на участках расположения концентраторов. | |||
20082. | Условия обеспечения качественной и производительной сборки. Исключение неправильной сборки | 92 KB | |
Исключение неправильной сборки. Для обеспечение правильной и быстрой сборки и разборки конструкций при проектировании нужно учитывать следующие условия: использовать где это возможно взаимозаменяемые детали и узлы; исключать подгоночные работы и и работы по обеспечению взаимного расположения деталей непосредственно при сборке; предусматривать удобный подход инструмента и оснастки используемой при сборке; использовать в конструкциях агрегатный способ сборки т. Так же увеличивается скорость сборки так как сборку узлов и агрегатов можно... | |||
20083. | Осевая и радиальная сборка. Особенности, достоинства и недостатки этих схем | 420.5 KB | |
В конструкциях с продольными и поперечными осями симметрии часто применяют схемы с осевой и радиальной сборки. При осевой сборке все детали устанавливают в осевом направлении при радиальной в радиальном поперечном. При осевой сборке конструкция корпуса как правило простая удобно производить механическую обработку не сложно уплотнять внутренние полости при герметизации. НЕДОСТАТКИ: конструкция корпуса сложная следовательно механическая обработка более сложная чем в осевой сборке. | |||
20084. | Компоновка приборов. Моноблочные и др. конструкции. Схемы компоновки | 138 KB | |
конструкции. Если в конструкции прибора применен подход на основе функционального разделения на части то в этом случае говорят о блочно модульных конструкциях. Моноблочные конструкции монтируются в едином корпусе и применяют в следих случаях: когда изделие выполняет мало частных функций и разбиение на узлы не целесообразно; для миниатюрных конструкций медицинские зонды; для приборов которые изготавливаются в малом количестве либо имеет небольшой срок службы шариковая ручка. Блочно модульные конструкции это конструкции которые... | |||
20085. | Разработка компактных конструкций. «Разнесение» конструкции в радиальном направлении и др. приемы конструирования. Проблемы миниатюризации | 125.5 KB | |
Разнесение конструкции в радиальном направлении и др.существенное уменьшение осевых размеров конструкции м.достигнуто за счет разнесения конструкции в радиальном направлении Основная идея не встраивать все элементы последовательно друг за другом а встраивать один элемент в другой Конструкция дифференциального винтовой передачи 4. незначительно увеличиваем диаметр и уменьшаем длину 5уменьшение размеров может быть достигнуто за стчет пустот имеющихся в конструкции или создания канавки Н2Н1 Проблема миниатюризации. | |||
20086. | Рабочая конструкторская документация. Основные этапы работ на данной стадии | 22.5 KB | |
При разработке рабочей документации возможны два варианта: Рабочая документация разрабатывается на единичное изделие или небольшую партию. документация разрабатывается без присвоения литеры все недостатки и ошибки устраняют в процессе сборки в чертеже вносят изменения. Документация разрабатывается для серийного или массового производства: 2. | |||
20087. | КОНСТРУИРОВАНИЕ НА ОСНОВЕ РАЗДЕЛЕНИЯ И СОВМЕЩЕНИЯ ФУНКЦИЙ; ОСОБЕННОСТИ, ДОСТОИНСТВА И НЕДОСТАТКИ | 229 KB | |
Если конструкция отдельного узла обеспечивает выполнение нескольких функций то в узле осуществлен принцип объединения. уменьшение объема сборочных и регулировочных работ опоры на центрах со смещенным центром регулировка в двух направлениях Решение на основе совмещения функций имеет отрицательные качества:1 не удается обеспечить оптимальное выполнение отдельных фий особенно это важно в отношении точности и надежности 2.появляется опасность взаимного отрицательного влияния отдельных частных функций друг на друга. | |||
20088. | Эскизный проект. Цели и задачи данной стадии разработки. Результаты разработки | 22 KB | |
Эскизный проект это совокупность конструкторских документов которые разрабатываются с целью установления принципиальных конструктивных решений. Результат разработки варианты конструкции соответствующие расчеты обязательная документация ведомость проекта пояснительная записка появляется чертеж общего вида. Эскизный проект и ТП не являются обязательными и выполняются если это предусмотрено в ТЗ а эскизный проект выполняется еще если если это предусмотрено техническим заданием. | |||
20089. | Техническое предложение | 31.5 KB | |
Техническое предложение. Техническое предложение ТП совокупность технических документов которые содержат техническое и техникоэкономическое обоснование целесообразности разработки. 2 Техническое задание. 3 Техническое предложение. | |||