👤

Va rog sa ma ajutati la aceste probleme URGENT ! pana maine seara, nu am nici o ideea cum pot sa le rezolv :( ... Si apropo , rezolvarea in C sa fie , nu in C++ 1)Pentru o matrice de m linii şi n coloane (dreptunghiulară) ce conţine caractere să se afişeze coloanele ce reprezintă şiruri ordonate crescător şi liniile care reprezintă şiruri ordonate descrescător. Acelaşi algoritm şi pentru valori de altă natură decât caracterele. Indicaţie: utilizaţi funcţiile de bibliotecă pe şiruri (prototipul lor se găseşte în fişierul antet string.h).
HELP ! HELP !HELP !
Multumesc !


Răspuns :

#include <iostream>
using namespace std;
char mat[101][101];

int verific(int i,int n,int m)
{
    for(int j=i;j<n;j++)
        for(int l=j+1;l<=m;l++)
        if(mat[i][j]>mat[i][l])
        return 0;
        return 1;
}
void linie(int n,int m)
{
     for(int i=1;i<=n;i++)
    {
        if(!verific(i,n,m))
        {
         for(int j=1;j<=m;j++)
          cout<<mat[i][j]<<' ';
          cout<<endl;
        }
    }
}
void coloana(int n,int m)
{
    for(int i=1;i<=m;i++)
    {
        if(verific(i,m,n))
        {
          for(int j=1;j<=n;j++)
          cout<<mat[j][i]<<' ';
          cout<<endl;
        }
    }
}
int main()
{
    int n,m,i,j;
    cin>>n>>m;
    for(i=1;i<=n;i++)
        for(j=1;j<=m;j++)
        cin>>mat[i][j];
        cout<<endl;
        cout<<endl;
    linie(n,m);
        cout<<endl;
        cout<<endl;
    coloana(n,m);

    return 0;
}