- •1. Краткие теоретические сведения
- •1.1. Хранение значений в массивах
- •1.2. Объявление переменной массива
- •1.3. Обращение к элементам массива
- •1.4. Использование индексной переменной
- •1.5. Инициализация массива при объявлении
- •1.6. Передача массивов в функции
- •1.8. Алгоритмы обработки двумерных массивов
- •1.8.1. Ввод и вывод матрицы
- •1.8.2. Заполнение матрицы случайными числами
- •1.8.3. Определение количество элементов, больших заданного а и расположенных в строках с нечетными номерами
- •1.8.4. Поиск в матрице строки с максимальной суммой
- •1.8.5. Определение количества строк матрицы, в которых суммы всех элементов отрицательные
- •1.8.6. Определение, есть ли в матрице столбец, содержащий хотя бы один нулевой элемент
- •1.8.7. Обработка элементов квадратных матриц относительно главной и побочной диагоналей
- •2.4.1.2. Пример для варианта 30
- •2.4.1.3. Программа
- •2.4.1.4. Тестирование
- •2.4.2. Задание 2. Выполнение вычислений в строках и столбцах матрицы
- •2.4.2.1. Условие задания
- •2.4.2.2. Пример для варианта 30
- •2.4.2.3. Программа
- •2.4.2.4. Тестирование
- •2.4.3. Задание 3. Дополнительные задачи
- •2.4.3.1. Условие задания
- •2.4.3.2. Пример для варианта 30
- •2.4.3.3. Программа
- •2.4.3.4. Тестирование
- •2.4.4. Задание 4. Перестановки строк или столбцов матрицы
- •2.4.4.1. Условие задания
- •2.4.5.2. Пример для варианта 30
- •2.4.5.3. Программа
- •2.4.5.4. Тестирование
- •2.4.6. Задание 6. Вычисление суммы элементов матрицы
- •2.4.6.1. Условие задания
- •2.4.6.2. Пример для варианта 30
- •2.4.6.3. Программа
- •2.4.6.4. Тестирование
- •2.4.7. Задание 7. Вычисление элементов одномерного массива на основе матрицы
- •2.4.7.1. Условие задания
- •2.4.7.2. Пример для варианта 30
- •2.4.2.3. Программа
- •2.4.2.4. Тестирование
- •2.4.8. Задание 8. Комбинированные задачи на двумерные массивы
- •2.4.8.1. Условие задания
- •2.4.8.2. Пример для варианта 30
- •2.4.2.3. Программа
- •2.4.2.4. Тестирование
- •2.4.9. Задание 9. Работа с матрицами
- •2.4.9.1. Условие задания
- •2.4.9.2. Пример решения задачи (вариант 30)
- •2.4.9.3. Разработка алгоритма решения
- •2.4.9.4. Определение переменных программы
- •2.4.9.5. Разработка текста программы
- •2.4.9.6. Отладка программы
- •2.4.9.7. Результаты работы программы
- •2.4.9.8. Формирование случайных чисел
- •3. Выводы
- •4. Требование к отчету
- •4. Краткие теоретические сведения.
- •5. Вопросы для самоконтроля
- •Литература
- •1. Краткие теоретические сведения 2
- •1.1. Хранение значений в массивах 2
2.4.5.2. Пример для варианта 30
Составить программу для вычисления элементов матрицы Y по известным элементам вектора X.
2.4.5.3. Программа
//Лабораторная работа № 11
/* Формирование матрицы из вектора */
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <iostream.h>
int main()
{
int i, j, m, n;
float X[10],Y[10][10];
//Описание переменных
cout <<" Введите число строк m ";cin >> m;
cout <<" Введите число столбцов n "; cin >> n;
for(i=0; i<m; i++)
{
cout <<"Введите X[" << i << "]= ";
cin >> X[i];
}
//Контрольный вывод исходных данных
cout <<"Число строк m = " << m << endl;
cout <<"Число столбцов n = "<< n << endl;
cout << "Вектор X:" << endl;
for(i=0;i<m;i++) cout <<X[i] << " ";
cout <<"\n";
//Формирование матрицы Y
for(i=0; i<m; i++)
{
for ( j=0; j<n; j++)
{ if (sin(X[i]) <= sin(X[j])) Y[i][j] = sin((i-j)*X[i]);
else Y[i][j] = i*cos(X[j]);
}
}
//Вывод матрицы Y
cout << "Матрица Y:" << endl;
for(i=0;i<m;i++)
{ for(j=0;j<n;j++) cout <<Y[i][j] << " ";
cout <<"\n";
}
cout << "Нажмите любую клавишу..." ;
getch();
return 0;
}//конец main
2.4.5.4. Тестирование
2.4.6. Задание 6. Вычисление суммы элементов матрицы
2.4.6.1. Условие задания
Составить программу для вычисления величины S по формуле.
Таблица 11.6
Варианты заданий
№ |
Формула |
1 |
|
2 |
|
3 |
|
4 |
|
5 |
|
6 |
|
7 |
|
8 |
|
9 |
|
10 |
|
11 |
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 |
|
18 |
|
19 |
|
20 |
|
21 |
|
22 |
|
23 |
|
24 |
|
25 |
|
26 |
|
27 |
|
28 |
|
29 |
|
30 |
|
2.4.6.2. Пример для варианта 30
Составить программу для вычисления величины S по формуле
2.4.6.3. Программа
//Лабораторная работа № 11
/* Вычисление величины по формуле */
#include <stdio.h>
#include <conio.h>
#include <math.h>
#include <iostream.h>
int main()
{
int i, j,k,l, m, n;
float S,P,X[10],A[10][10];
//Описание переменных
cout <<" Введите число строк m ";cin >> m;
cout <<" Введите число столбцов n "; cin >> n;
cout <<" Введите число элементов вектора l "; cin >> l;
cout <<" Введите вектор X" << endl;
for(k=0; k<l; k++)
{
cout <<"Введите X[" << k << "]= ";
cin >> X[k];
}
cout <<" Введите матрицу A" << endl;
for(i=0; i<m; i++)
for(j=0; j<n; j++)
{
cout <<"Введите A[" << i << "," << j <<"]= ";
cin >> A[i][j];
}
//Контрольный вывод исходных данных
cout <<"Число строк m = " << m << endl;
cout <<"Число столбцов n = "<< n << endl;
cout <<"Число элементов вектора l = "<< l << endl;
cout << "Вектор X:" << endl;
for(k=0;k<l;k++) cout <<X[k] << " ";
cout <<"\n";
cout <<"Матрица A" << endl;
for(i=0; i<m; i++)
{
for(j=0; j<n; j++)
{
cout <<"A[" << i << "," << j <<"]= " << A[i][j] <<" ";
}
cout <<"\n";
}
//Вычисление суммы
S=0;
for(i=0; i<m; i++)
{
for (j=0; j<n; j++)
{
S = S + cos(A[i][j]);
}
}
//Вычисление произведения
P = 1;
for(k=0; k<l; k++)
{
P = P*(1 + exp(-X[k]));
}
S=S/P;
//Вывод значения формулы
cout << "S = " << S << endl;
cout << "Нажмите любую клавишу..." ;
getch();
return 0;
}//конец main