Программа вычисления линейного арифметического выражения
Принципы составления блок-схемы алгоритма решения задачи и правила написания кода программы. Основные пути передачи параметров в функцию разными способами. Реализация одномерного статического массива, порядок нахождения элементов и составление программы.
Рубрика | Программирование, компьютеры и кибернетика |
Вид | контрольная работа |
Язык | русский |
Дата добавления | 03.12.2013 |
Размер файла | 1,3 M |
Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже
Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.
Размещено на http://www.allbest.ru/
Министерство образования Республики Беларусь
Учреждение образования
«БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ»
Институт информационных технологий
Специальность: Информационные технологии и управление в технических системах
КОНТРОЛЬНАЯ РАБОТА
Студент-заочник 1-го курса
Группы № 382471
Короткевич Тамара Владимировна
Минск 2013
Задание 1
Написать программу вычисления линейного арифметического выражения:
s =.
При x = 14,26; y = - 1,22; z = 3,5•10-2 ответ: s = 0,749155.
Блок-схема алгоритма
Код программы
# include <iostream.h>
# include <math.h>
int main ()
{
double x,y,z,s;
cout <<"Vvedite x:";
cin >> x;
cout <<"Vvedite y:";
cin >> y;
cout <<"Vvedite z:";
cin >> z;
s = 2 * cos(x-2./3.);
s/=(1/2.) + pow(sin(y),2);
s*=(1 + pow(z,2)/(3-pow(z,2)/5.));
cout <<" Result s = " << s << endl;
system(" pause");
return 0;
}
Результаты работы программы
Задание 2
Составить согласно индивидуальному варианту блок-схему алгоритма и программу вычисления выражения. Предусмотреть вывод информации о выбранной ветви вычислений.
Блок-схема алгоритма
Код программы
#include <iostream.h>
#include <math.h>
int main()
{
double x,y,s,f_xy;
cout << "Vvedite x: ";
cin >> x;
cout << "Vvedite y: ";
cin >> y;
f_xy=x*y;
if(x*y > 0){
s= pow((x+y),2)-pow (fabs(x),1./3);
cout<<"\nVetv 1\n";
}
else if (x*y < 0)
{
s=pow ((x+y),2)+sin(x);
cout<<"\nVetv 2\n";
}
else {
s= pow((x+y),2) + pow(y,3);
cout<<"\nVetv 3\n";
}
cout<<"\nResult="<<s<<endl;
system ("pause");
return 0;
}
Результаты работы программы
Задание 3
Составить согласно индивидуальному варианту блок-схему алгоритма и программу вывода на экран таблицы значений функции y(x) для x, изменяющегося от a=0,1 до b=1,2 с шагом h=0,1. Вычисление y(x) оформить в виде функции. Предусмотреть передачу параметров в функцию разными способами.
Блок-схема алгоритма
Код программы
#include <iostream.h>
#include <iomanip.h>
#include <math.h>
double Summa (double, int);
void Summa (double*, int*, double*);
void Summa (double&, int&, double&);
int main()
{
double y, x, a, b, h;
int n;
cout<<"Vvedite a, b, h, n:\n";
cin>>a>>b>>h>>n;
cout<<"\n Value"<<setw(20)<<"Pointer"<<setw(24)<<"Reference\n";
x=a;
do
{
cout<<setw(5)<<x<<setw(10)<<Summa(x,n);
Summa(&x,&n, &y);
cout<<setw(10)<<x<<setw(10)<<y;
Summa (x, n, y);
cout<<setw(10)<<x<<setw(10)<<y<<endl;
x+=h;
}while(x<=b+h/2);
cout<<endl;
system("pause");
return 0;
}
double Summa (double x, int n)
{
double y;
int i;
y=2;
for(i=1; i<=n; i++)
y+=pow(x,i-1)/2*i+1;
return y;
}
void Summa (double *x, int *n, double *y)
{
int i;
*y=2;
for (i=1; i<=*n; i++)
*y+=pow(*x,i-1)/2*i+1;
}
void Summa (double &x, int &n, double &y)
{
int i;
y=2;
for (i=1; i<=n; i++)
y+=pow(x,i-1)/2*i+1;
}
Результаты работы программы
Задание 4
схема алгоритм программа массив
Ввести одномерный статический массив из k чисел. Выполнить в соответствии с номером варианта индивидуальное задание и вывести на экран исходные данные и полученный результат. Предусмотреть использование функции пользователя. Найти произведение элементов массива, расположенных между максимальным и минимальным элементами.
Код программы
#include <iostream>
#include <iomanip>
#include <math.h>
using namespace std;
int Func (int a[],int);
int main()
{
int a[10], i, n, pr;
cout << "Vvedite razmer massiva: ";
cin >> n;
cout << "\nVvedite massiv:\n";
for (i = 0; i < n; i++)
{
cout << "Vvedite a[" << i << "]=";
cin >> a[i];
}
cout << "\nMassiv a:\n";
for (i = 0; i < n; i++)
cout << setw(7) << a[i];
cout << endl;
pr = Func(a, n);
cout << "Proizvedenie elementov massiva ravno " << pr;
system("pause");
return 0;
}
int Func (int a[],int n)
{
int i, imax = 0, imin = 0, pr = 1;
for (i = 1; i < n; i++)
if (a[i] <= a[imin])
imin = i;
for(i = 1; i < n; i++)
if (a[i] >= a[imax])
imax = i;
if(imax > imin) {
for(i = ++imin; i < imax; i++)
pr *= a[i];
}
else if(imax < imin) {
for(i = ++imax; i < imin; i++)
pr *= a[i];
} else if(fabs(imax-imin) == 1)
pr = 0;
return pr;
system("pause");
}
Результаты работы программы
Задание 5
Ввести матрицу размером NxM. Память для массива выделить динамически. Выполнить в соответствии с номером варианта индивидуальное задание и вывести на экран исходные данные и полученный результат. Предусмотреть в программеиспользование функции пользователя. Определить количество положительных элементов, расположенных ниже побочной диагонали матрицы.
Код программы
#include <iostream>
using namespace std;
void PoiskEl(int**, int&, int&, int&);
int main()
{
int n, m;
int kol = 0;
cout << "\nVvedite kol-vo riadov i stolbcev: ";
cin >> n;
cin >> m;
int **mas = new int*[n];
for(int i = 0; i < n; i++)
mas[i] = new int[m];
cout << "\nVvedite massiv mas[]:\n";
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << "Vvedite mas[" << i << "][" << j << "]:";
cin >> mas[i][j];
}
}
cout << "\nVvedennaia matrica\n";
for(int i = 0; i < n; i++)
{
for(int j = 0; j < m; j++)
{
cout << " " << mas[i][j];
}
cout << endl;
}
PoiskEl(mas, m, n, kol);
cout << "\nKol-vo pologitelnih elementov, nige pobochnoy diagonali: " << kol << endl;
system("pause");
return 0;
}
void PoiskEl(int **mas, int& m, int &n, int &kol)
{
for (int i = 0; i < n; i++)
for (int j = n-i-1; j < n; j++)
for(int k = ++j; k < m; k++)
if(mas[i][j] > 0)
kol++;
}
Результаты работы программы
Размещено на Allbest.ru
Подобные документы
Составление программы для нахождения минимального и максимального элементов массива. Программа вычисления корней квадратных алгебраических уравнений. Ранжирование одномерного массива по заданному признаку. Формирование массивов с помощью функции random.
контрольная работа [1,0 M], добавлен 30.04.2013Решения задачи графическим и программным способами. Описание алгоритма решения графическим способом, укрупненная схема алгоритма. Ввод элементов двумерного массива, вывод преобразованного массива, разработка программы на языке pascal, листинг программы.
курсовая работа [115,5 K], добавлен 22.05.2010Элементы и переменные, используемые для составления записи в Паскале. Основные числовые типы языка Turbo Pascal. Составление блок-схемы приложения, программирование по ней программы для вычисления функции. Последовательность выполнения алгоритма.
лабораторная работа [256,9 K], добавлен 10.11.2015Работа с одномерными и двухмерными массивами: составление функций нахождения заданных элементов, их количества и суммы под и над главной диагональю, поиск среднего арифметического. Составление блок-схемы, написание текста программы, его тестирование.
контрольная работа [52,0 K], добавлен 27.12.2010Разработка программы для нахождения минимального и максимального элемента массива, вычисления среднего арифметического строк и столбцов транспортирования матриц. Характеристика основных программных средств. Описание программы, руководство пользователя.
курсовая работа [2,4 M], добавлен 26.04.2015Математическое обоснование метода решения задачи: определенный интеграл, квадратурная формула Симпсона (формула парабол). Словесное описание алгоритма и составление его блок-схемы. Выбор языка программирования. Текст программы решения задачи, ее листинг.
курсовая работа [593,6 K], добавлен 09.07.2012Использование средств статического и динамического анализа программ. Принципы работы компилятора при генерации кода на примере MS Visual Studio 2003 (C++). Взлом защиты от несанкционированного доступа предоставленной программы разными способами.
контрольная работа [4,2 M], добавлен 29.06.2010Основные аналитические соотношения. Блок схемы и алгоритм решения задачи. Проверка работоспособности алгоритма вручную. Таблица идентификации переменных. Формы входной и выходной печати. Разработка и отладка программы. Инструкция для работы с программой.
курсовая работа [69,8 K], добавлен 13.02.2012Разработка блок-схемы и программы обработки одномерного массива с доступом к элементам с помощью индексов и с помощью указателей. Словесное описание алгоритма и пользовательского интерфейса, листинг программы обработки матрицы и результат её выполнения.
курсовая работа [391,1 K], добавлен 30.09.2013Изучение категории типов данных, видов выражений и операций, работа на языке Си. Составление программы вычисления значения функции у(х) при произвольном значении х. Блок-схема алгоритма. Описание текста программы и рассмотрение контрольного примера.
лабораторная работа [124,7 K], добавлен 09.01.2012