- •Самарский государственный технический университет
- •Утверждено на заседании кафедры электротехники, информатики и компьютерных технологий 30.01.03
- •Имя_массива [индекс]
- •Тип имя_массива [размер_1] [размер_2]
- •Манипуляторы
- •Порядок выполнения работы
- •Задание на выполнение лабораторной работы
- •Варианты заданий
- •Примеры составления программ Листинг программы для варианта №11
- •Результат выполнения программы
- •Листинг программы для варианта №12
- •Результат выполнения программы
- •Библиографический список
- •Приложение Математические функции
- •Типы данных
Примеры составления программ Листинг программы для варианта №11
//Пример_11
#include <iostream.h>
#include <math.h>
#include <iomanip.h> //Включение заголовочного файла, подключающего
//манипуляторы
void main()
{
double a[8][8];
//Получение матрицы a
for(int i=1;i<8;i++)
for(int j=1;j<8;j++)
{
if(i==1) a[i][j]=2.13*j+3.7;
if(i==2) a[i][j]=j-29/(2+1.3/j);
if(i>2) a[i][j]=a[i-1][j]+a[i-2][j];
}
//Определение числа элементов в четных столбцах матрицы a,
// не принадлежащих интервалу (5,10)
int k=0;
for(int i=1;i<8;i++)
for(int j=1;j<8;j++)
if ((j%2==0)&&((a[i][j]<5)||(a[i][j]>10))) k++;
//Определение произведения отрицательных
//элементов нечетных столбцов в 7 строке матрицы a
double p=1;
for(int i=7,j=1;j<8;j++)
if((a[i][j]<0)&&(j%2==1)) p*=a[i][j];
//Вывод результатов вычислений
//Вывод матрицы a
cout<<"Матрица a:"<<"\n";
cout<<setfill('.') //Введение символов '.' в поле вывода
<<setprecision(4); //Установка точности вывода
for(int i=1;i<8;i++)
for(int j=1;j<8;j++)
{cout<<" "<<setw(8)<<a[i][j]; //Фоматирование вывода
if(j==7)cout<<"\n"; //Формирование строки
}
cout<<"\nЧисло элементов в четных столбцах матрицы a,\n";
cout<< "не принадлежащих интервалу (5,10):"<<endl;
cout<<"k="<<k<<"\n";
cout<<"\nПроизведение отрицательных элементов в 7 строке\n";
cout<<"нечетных столбцов матрицы a:"<<endl;
cout<<"p="<<p;
}
Результат выполнения программы
Матрица a:
....5.83 ....7.96 ...10.09 ...12.22 ...14.35 ...16.48 ...18.61
..-7.788 ..-8.943 ..-8.918 ..-8.473 ..-7.832 ..-7.083 ..-6.268
..-1.958 .-0.9834 ...1.172 ...3.747 ...6.518 ...9.397 ...12.34
..-9.746 ..-9.927 ..-7.746 ..-4.726 ..-1.314 ...2.315 ...6.074
...-11.7 ..-10.91 ..-6.573 .-0.9794 ...5.204 ...11.71 ...18.42
..-21.45 ..-20.84 ..-14.32 ..-5.706 ...3.891 ...14.03 ...24.49
..-33.15 ..-31.75 ..-20.89 ..-6.685 ...9.095 ...25.74 ...42.91
Число элементов в четных столбцах матрицы a,
не принадлежащих интервалу (5,10):
k=19
Произведение отрицательных элементов в 7 строке
нечетных столбцов матрицы a:
p=692.6
Листинг программы для варианта №12
//Пример_12
#include <iostream.h>
#include <math.h>
#include <iomanip.h> //Подключение заголовочного файла, включающего
//модификатор setw (установка ширины вывода)
void main()
{
long b[4][3],a[4][3]={{ 1,-2 , 3 }, //Инициализация матрицы a
{4 , 5 , -6},
{-7, -8 , 9 },
{10,11,12}};
//Получение матрицы b
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
b[i][j]=(a[i][j]<0)? 0:1;
//Вывод матриц a и b
cout<<"Матрица a:"<<"\n";
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
{cout<<" "<<setw(4)<<a[i][j]; //Фоматирование вывода
if(j==2)cout<<"\n"; //Формирование строки
}
cout<<"Матрица b:"<<"\n";
for(int i=0;i<4;i++)
for(int j=0;j<3;j++)
{cout<<" "<<setw(4)<<b[i][j];
if(j==2)cout<<"\n";
}
//Определение произведения элементов матрицы a,
//стоящих ниже первой строки
long p=1;
for(int i=1;i<4;i++)
for(int j=0;j<3;j++)
p*=a[i][j];
cout<<"p="<<p<<endl;
//Определение количества единичных элементов
//во втором столбце матрицы b
int s=0;
for(int i=0,j=1;i<4;i++)
if (b[i][j]==1) s++;
cout<<"s="<<s<<endl;
}