Introduceți elementele matricei m x n. Scrieți un program care pentru numărul întreg k Î (-n; n) dat:
a) Rotiți matricea de plasă a elementului (pentru pozitiv k mișcă elementele din fiecare rând spre dreapta ochiurilor de coloană, pentru negativ spre stânga, pentru k = 0 elementele rămân în poziție), în timp ce deplasați ultimul element spre dreapta de unul va muta acest element în prima poziție a unei anumite linii (în mod analog atunci când mutați primul element spre stânga.).
c) Schimbă toate elementele matricei originale divizibile cu numărul specificat k la 0 (le resetează).
INTRARE:
- variabile de intrare: k, m, n, A [MAX] [MAX]
- condiția de intrare: 1 = 0
B [i] [j + k] = A [i] [j]
In caz contrar
B [i] [k + j + n] = A [i] [j]
C:
a/k! = 0: dacă A [i] [j]% k) == 0
C [i] [j] = 0
In caz contrar
C [i] [j] = A [i] [j]
b/k = 0: nu imprimă matricea C
În esență, acest program este foarte interesant, cel puțin pentru mine. Este relativ ușor să încărcați variabile individuale și, de asemenea, elementele matricei unde am folosit funcția, așa că nu mă voi mai întoarce la ea. Când am calculat matricea de ieșire în sine, am urmat o analiză matematică relativ simplă și o comparație a numărului introdus k și a numărului de coloane ale matricei. În primul rând, am testat numărul k împotriva 0. Dacă k este mai mare decât 0, atunci a trebuit să folosesc un alt bloc de decizie pentru a testa suma numerelor k și j (j poziția curentă a coloanei matricei). Această sumă ar trebui să fie mai mică decât numărul total de coloane din matrice. Apoi am început pur și simplu să atribuiesc elementele matricei A elementului matricei B, dar cu faptul că am adăugat și valoarea numărului k la coloana curentă a matricei B. (de exemplu: j + k => 1 + 2 ). Dacă suma k + j a fost mai mare sau egală cu numărul de coloane ale matricei, atunci fiecărui element al matricei B i s-a atribuit un element al matricei A, dar cu diferența că a adăugat valoarea k coloanei curente a matricei B. deplasare spre dreapta.
Dacă valoarea numărului k este 0, atunci fiecărui element al matricei B i se va atribui un element al matricei A exact la aceeași poziție.