Автор работы: Пользователь скрыл имя, 18 Марта 2012 в 22:29, курсовая работа
В данной действительной квадратной матрице порядка n найти наибольший по модулю элемент, Получить квадратную матрицу порядка n-1 путем выбрасывания из исходной матрицы какой-нибудь строки и столбца, на пересечении которых расположен элемент с найденным значением
cin>>n;}
cout<<"vvedite massiv nxn"<<endl; // ввод первого массива
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>masA[i][j];
max=masA[0][0]; // нахождение максимального числа в массиве
for(i=0;i<n;i++)
for(j=0;j<n;j++)
if(masA[i][j]>max){
max=masA[i][j];
i0=i;
j0=j;
}
for(i=0;i<n-1;i++) //запись второго массива n-1xn-1,
for(j=0;j<n-1;j++){
if(i<i0&&j<j0)
masB[i][j]=masA[i][j];
else if(i<i0&&j>=j0)
masB[i][j]=masA[i][j+1];
else if(i>=i0&&j<j0)
masB[i][j]=masA[i+1][j];
else if(i>=i0&&j>=j0)
masB[i][j]=masA[i+1][j+1];
}
cout<<setprecision(4); //форматирование
cout<<"vvedenniy massiv"<<endl; // вывод на экран обоих массивов
for(i=0;i<n;i++){
for(j=0;j<n;j++)
cout<<setw(6)<<masA[i][j]<<" ";
cout<<endl;
}
cout<<"max znachenie i koordinati"<<endl;
cout<<"max="<<max<<" "<<"i="<<i0+1<<" "<<"j="<<j0+1<<endl;
cout<<"noviy massiv"<<endl;
for(i=0;i<n-1;i++){
for(j=0;j<n-1;j++)
cout<<setw(6)<<masB[i][j]<<" ";
cout<<endl;
}
ofstream ptk("k584.txt"); //объявление потока записи в файл
if(ptk==0)cout<<"error otkr faila"<<endl;
ptk<<setprecision(4); //форматирование
ptk<<"vvedenniy massiv"<<endl; // вывод в файл обоих массивов
for(i=0;i<n;i++){
ptk<<setw(6)<<masA[i][j]<<" ";
ptk<<endl;
}
ptk<<"max znachenie i koordinati"<<endl;
ptk<<"max="<<max<<" "<<"i="<<i0+1<<" "<<"j="<<j0+1<<endl;
ptk<<"noviy massiv"<<endl;
for(i=0;i<n-1;i++){
for(j=0;j<n-1;j++)
ptk<<setw(6)<<masB[i][j]<<" ";
ptk<<endl;
}
getch();
}
Тест:
vvedite 0<n<=50
3
vvedite massiv nxn
1 1 1
2 2 2
3 3 3
vvedenniy massiv
1 1 1
2 2 2
3 3 3
max znachenie i koordinati
max=3 i=3 j=1
noviy massiv
1 1
2 2
Задача № 406
Пусть задан вектор х (х1, х2, х3… хn). Составить подпрограмму-функцию для вычисления величины.
N=0, если х1≠0
N=n, если х1= х2= х3=…- хn=0
N=m, если х1= х2= х3=…=хm=0 и хm+1≠0 (m<n)
Алгоритм:
1) Ввод
2) Запрос числа элементов массива
3) Запрос и ввод массива
4) Эхо-вывод на экран массива
5) Объявление потока вывода в файл
#include <vcl.h> // Я не знаю что это означает, оно автоматически задается в Builder6
#pragma hdrstop // Я не знаю что это означает, оно автоматически задается в Builder6
#pragma argsused // Я не знаю что это означает, оно автоматически задается в Builder6
#include<iostream.h>
#include<conio.h>
#include<fstream.h>
int N(int n, double X[]); // прототип ф-ции
int N(int n, double X[])
{
int i;
int result=-1;
if(X[0]!=0)
result=0;
else{
result=0;
for(i=0;i<n;i++){
if(X[i]==0)
result=i+1;
else{
result=i;
break;
}
}
}
return result;
}
void main(){
int n;
int i;
double X[100];
cout<<"vvedite 0<n<=100"<<endl; //запрос числа элементов массива
cin>>n; //ввод
while(n>100||n==0||n<0){
cout<<"Error! 0<n<=100"<<endl;
cout<<"vvedite 0<n<=100"<<endl;
cin>>n;} //проверка n<=100 и n=0
cout<<"vvedite massiv X:"<<endl; //запрос и ввод массива
for(i=0;i<n;i++)
cin>>X[i];
cout<<"vvedenniy massiv:"<<endl; //эхо-вывод на экран массива
for(i=0;i<n;i++) // и значения ф-ции
cout<<X[i]<<" ";
cout<<endl;
cout<<"function N="<<N(n,X)<<endl;
ofstream ptk("k106.txt"); //oбъявления потока вывода в файл
if(ptk==0)cout<<"error otkr faila"<<endl; //проверка открытия файла
ptk<<"vvedenniy massiv:"<<endl; //эхо-вывод в файл массива
for(i=0;i<n;i++)
ptk<<X[i]<<" ";
ptk<<endl;
ptk<<"function N="<<N(n,X)<<endl;
getch();
}
Тест: vvedenniy massiv:
1 0 0 0
function N=0
Номер задачи | Входные данные | Выходные данные для С++ | Выходные данные для MathCAD |
9 | Страница 3 | Страница 4 | Страница 1.1 |
116 г | Страница 4 | Страница 6 | Страница 1.2 |
555 | Страница 6 | Страница 9 | Страница 1.3 |
684 | Страница 9 | Страница 12 |
|
406* | Страница 13 | Страница 16 |
|
Список литературы:
1) Разработка программ на C++ при выполнении курсовых и лабораторных работ (методические указания) Назарова М.В.
2) Borland C++ Builder. Освой самостоятельно
3) "Программирование в C++ Builder 6" (с) Архангельский А.Я.
Информация о работе Разработка программ на С++ и в системе MathCAD