poniedziałek, 5 marca 2018

00030 - 1042 - Transponowanie macierzy - www.pl.spoj.com

Treść zadania:

Transponuj podaną macierz.

Wejście
W pierwszym wierszu znajdują się dwie liczby m n (1<=m,n<=200) oznaczające odpowiednio liczbę wierszy oraz liczbę kolumn. Następnie następuje m wierszy, w każdym n liczb.

Wyjście
Na wyjściu powinna znaleźć się macierz transponowana do zadanej

Przykład

Wejście:
4 3
1 2 5
4 3 3
3 4 9
8 7 7

Wyjście:
1 4 3 8
2 3 4 7
5 3 9 7


Kod źródłowy w C:
#include <stdio.h>
#include <stdlib.h>

int main()
{
    int m, n, i, j;
    int tab [200][200];

    scanf("%d%d",&m,&n);

    for(i=0;i<m;++i)
    {
        for(j=0;j<n;++j)
        {
            scanf("%d",&tab[i][j]);
        }
    }
    for(i=0;i<n;++i)
    {
        for(j=0;j<m;++j)
        {
            printf("%d ",tab[j][i]);
        }
        printf("\n");
    }
    return 0;
}



Kod źródłowy w C++:
#include <iostream>

using namespace std;

int main()
{
    int m, n, i, j;
    int tab [200][200];

 cin>>m>>n;
 
    for(i=0;i<m;++i)
    {
        for(j=0;j<n;++j)
        {
            cin>>tab[i][j];
        }
    }
    for(i=0;i<n;++i)
    {
        for(j=0;j<m;++j)
        {
            cout<<tab[j][i]<<" ";
        }
        cout<<endl;
    }
    return 0;
}



Źródło: http://pl.spoj.com/problems/TRN/

Brak komentarzy:

Prześlij komentarz