infoarena

infoarena - concursuri, probleme, evaluator, articole => Informatica => Subiect creat de: Vidrean Mihai din Mai 08, 2012, 20:35:38



Titlul: Citire matrice
Scris de: Vidrean Mihai din Mai 08, 2012, 20:35:38
Salut! Am o intrebare. Cum as putea citi o matrice patratica in urmatoarul fel? (nu neaparat cu aceleasi numere am pus aceste numere ca sa vedeti ordinea parcurgerii)
Cod:
1  3  6  10  
2  5  9  13  
4  8  12  15  
7  11  14  16  


Titlul: Răspuns: Citire matrice
Scris de: Salajan Razvan din Mai 09, 2012, 15:25:13
Cod:
 
    cin >> n;

    int k = 0;

    for(int i=1; i<=n; i++){
        for(int j=i, w=1; j>=1; j--, w++) cin >> a[j][w];
    }
    for(int i=2; i<=n; i++){
        for(int j=n, w=i; j>=i; j--,w++) cin >> a[j][w];
    }

    for(int i=1; i<=n; i++){
        for(int j=1; j<=n; j++) cout << a[i][j] << " ";
        cout << "\n";
    }



Titlul: Răspuns: Citire matrice
Scris de: George Marcus din Mai 09, 2012, 19:52:19
Cod:
cin >> n;

for(k = 0; k <= 2 * n - 2; k++)
for(j = max(0, k - (n - 1)); j <= min(n - 1, k); j++) {
i = k - j;
cin >> a[i][j];
}

for(i = 0; i < n; i++) {
for(j = 0; j < n; j++)
cout << a[i][j] << ' ';
cout << '\n';
}