19. WAP to implement Lower Triangular Matrix using one-dimensional array.
PROGRAME CODE
#include<stdio.h>
#include<iostream>
using namespace std;
class ltm{
int
arr[50][50],row,col,arr1[100];
public:
ltm(){
row=0;
col=0;
}
void
getdata(){
cout<<"ENTER
THE VALUE OF THE ROW ...."<<endl;
cin>>row;
cout<<"ENTER
THE VALUE OF THE COL....."<<endl;
cin>>col;
cout<<"ENTER
THE VALUES OF THE MATRIX..."<<endl;
for(int
i=0;i<row;i++){
for(int
j=0;j<col;j++)
cin>>arr[i][j];
}
if(check())
cout<<"THE
MATRIX IS A LOWER TRIDIAGONAL MATRIX....."<<endl;
else
cout<<"THE
MATRIX IS NOT A LOWER TRIDIAGONAL MATRIX....."<<endl;
}
int
check(){
int
flag1=0,flag2=0;
for(int
i=0;i<row;i++){
for(int
j=0;j<col;j++){
if(j<=i&&arr[i][j]==0)
flag1++;
if(j>i&&arr[i][j]!=0)
flag2++;
}
}
if(flag1!=0||flag2!=0)
return
0;
else
return
1;
}
void
ltm1(){
int
k=0,k2=0;
int
k1=row;
while(row>=1){
k=k+row;
row--;
}
row=k1;
for(int
i=0;i<row;i++){
for(int
j=0;j<col;j++){
if(arr[i][j]!=0){
arr1[k2]=arr[i][j];
k2++;
}
}
}
for(int
p=0;p<k;p++)
cout<<arr1[p]<<" ";
cout<<endl;
}
void
display(){
cout<<"THE
ORIGINAL MATRIX ->"<<endl;
for(int
i=0;i<row;i++){
for(int
j=0;j<col;j++)
cout<<arr[i][j]<<" ";
cout<<endl;
}
}
};
int main(){
ltm
ob;
int
opt=0;
do{
cout<<"\nPRESS 0 TO
EXIT ......."<<endl;
cout<<"PRESS
1 TO ENTER DATA........"<<endl;
cout<<"PRESS
2 TO DISPLAY ORIGINAL MATRIX ......"<<endl;
cout<<"PRESS
3 TO DISPLAY TRIDIAGONAL ELEMENTS......"<<endl;
cin>>opt;
switch(opt){
case
0:
break;
case
1:
ob.getdata();
break;
case
2:
ob.display();
break;
case
3:
ob.ltm1();
break;
default:
cout<<"ERROR
OPTION CHOICE......"<<endl;
}
}while(opt!=0);
return
0; }
No comments:
Post a Comment