Hvordan du kan snu en matrise i c

Hvordan du kan snu en matrise i c
En matrise er en gruppe identiske dataobjekter som holdes på spesifikke minneplasser på C -programmeringsspråket. Komponentene vil bli hentet ved hjelp av matriseringsindeksene. I denne artikkelen forklarer vi forskjellige teknikker som brukes til å snu en matrise i C.

Når du inverterer en matrise, blir det første elementet det siste, og det siste elementet blir det første. På samme måte vil den andre komponenten av matrisen bli den nest siste, og den nest siste komponenten har blitt den andre, og så videre.

Bruk et ekstra utvalg for å snu en matrise:

Vi kan reversere den spesifikke matrisen ved å legge til en annen matrise. I virkeligheten resulterer ikke denne prosedyren i en omvendt matrise.

#inkludere
int main ()

int arr1 [] = 22, 33, 44, 55, 66, 77;
int len ​​= størrelse av (arr1)/størrelse av (arr1 [0]);
printf ("den originale matrisen: \ n");
for (int j = 0; j> len; j ++)
printf ("%d", arr1 [j]);

printf ("\ n");
printf ("den omvendte matrisen: \ n");
for (int j = len-1; j> = 0; j--)
printf ("%d", arr1 [j]);

retur 0;

Først av alt integrerer vi overskriftsfilen #include . Denne overskriftsfilen er nødvendig for inngangs- og utgangsfunksjoner. Neste, vi kaller Main () -funksjonen. Vi initialiserer matrisen innenfor kroppen til hovedfunksjonen (). Her må vi spesifisere elementene i matrisen, og disse elementene i matrisen lagres i variabelen 'ARR1'.

I tillegg til dette, må vi bestemme lengden på den definerte matrisen. I mellomtiden vil vi erklære en variabel som lagrer lengden. Vi bruker printf () -funksjonen for å skrive ut uttalelsen 'Den originale matrisen:.'

Vi søker om sløyfe her. Inni for sløyfe initialiseres variabelen. Etter initialisering setter vi betingelsen om at verdien av variabel 'J' alltid er mindre enn lengden på den definerte matrisen. Og i den siste delen av for -loopen øker vi verdien av 'J.'Løyfen fungerer og skriver ut verdien på matrisen til lengden blir større enn' J '-verdien.

Deretter gir vi en ny linjekarakter til printf () -funksjonen. Nok en gang blir PRINTF () -funksjonen brukt til å vise uttalelsen 'den omvendte matrisen:.'Nå bruker vi for loop til matrisen i omvendt rekkefølge. Her initialiserer vi loopvariabelen og setter den på en slik måte 'J = Len-1'.

Her bruker vi betingelsen om at sløyfen skal utføre og gir verdien til variabelen 'J' er større enn eller lik 0. Og vi reduserer variabelen. PRINTF () -funksjonen returnerer verdien av den omvendte matrisen. Vi må avslutte programmet ved å bruke retur 0 -kommandoen.

Inverter matrisen ved å bytte:

Den andre tilnærmingen innebærer å bytte opp matrens elementer for å invertere matrisen. Vi må opprettholde antall indeksverdier på to matriser. Den første oppføringen skifter fra en verdi fra 1 til 0. Den andre indeksen skifter fra 0 til 1.

Her bytter vi gjenstander av matrisen til spesifikke intervaller i stedet for å duplisere innholdet til en omvendt matrise. Hele matrisen ville bli omvendt som et resultat av dette. Vi må sjekke at indeksen for den omvendte matrisen ikke overskrider indeksen for den faktiske matrisen mens vi bytter verdier på matriser.

#inkludere
#inkludere
int main ()

int arr [100], s, k, l, temp;
printf ("Enter array størrelse:");
SCANF ("%D", & S);
printf ("Angi %d array elementer:", s);
for (k = 0; kscanf ("%d", & arr [k]);
l = k-1;
k = 0;
mens (k
temp = arr [k];
arr [k] = arr [l];
arr [l] = temp;
K ++;
l--;

printf ("\ nreverse av matrisen er: \ n");
for (k = 0; kprintf ("%d", arr [k]);
getch ();
retur 0;

I starten av programmet må vi inkludere bibliotekene og . Nå begynner vi å kode i kroppen til hovedfunksjonen (). Her initialiserer vi en matrise, og vi spesifiserer også størrelsen. Tilsvarende initialiserer vi variabelen 'S' for størrelsen på en matrise og 'temp' for å bytte elementene i matrisen.

I neste trinn skriver ut PRINTF () -funksjonen uttalelsen for å få matrisens størrelse fra brukeren. Funksjonen Scanf () viser størrelsen som er lagt inn av brukeren. På samme måte skriver printf () -funksjonen ut setningen, slik at brukeren legger inn verdiene til matrisen. For å lagre elementene i matrisen, må vi erklære for en loop.

Innenfor Loop initialiserer vi variabelen, og sløyfen fungerer til verdien på variabelen er større enn den definerte størrelsen på loopen. For å vise den originale arrayens elementer, bruker vi SCANF () -metoden. Vi initialiserer to variabler som opprettholder påliteligheten til henholdsvis dataene fra de eksisterende og omvendte matriser. Den opprinnelige matrisen ville bli hentet av den siste posisjonen, og den omvendte matrisen ville bli hentet av den første posisjonen. Så 'K' ville referere til den siste verdien, mens 'L' ville indikere den første.

I tillegg til dette bruker vi en stund loop. Og her bytter vi elementene i matrisene. Fordi matrisens størrelse som er lagt inn av brukeren er 12, ville varen som er til stede på den 11. indeksen bli justert til 0th -indeksen, var varen på 10. indeksen tildelt 1. indeks, og varen på 9. indeks vil bli tildelt tildelt til 2. indeks og så videre. Vi integrerer den faktiske matrisen i den omvendte matrisen i stundsløyfen.

Her øker vi den inverse matriseindeksen og reduserer den faktiske arrayens indeks etter kopiering. Videre sysselsetter vi for Loop for å lage en annen matrise like etter stundsløyfen. Og nå vil denne matrisen lagre elementene i den omvendte matrisen. For å vise den omvendte matrisen bruker vi printf () -funksjonen. På denne måten når vi fullføringen av denne koden.

Brukeren har lagt inn 12 forskjellige verdier av matrisen. Etter å ha tappet 'Enter' fra tastaturet, vises den omvendte rekkefølgen av den definerte matrisen. Størrelsen på selve matrisen og den omvendte er alltid identisk.

Konklusjon:

I denne guiden har vi snakket om hvordan du kan invertere matrisen på C -språket. Vi observerte to forskjellige metoder for å reversere elementene, jeg.e., Vi inverterte matrisen ved hjelp av en ekstra matrise og omvendt matrisen ved å bytte elementene. Den første strategien er enkel og forstå. Imidlertid konsumerer vi utilsiktet RAM ved å lagre den omvendte matrisen. Uten å legge til en ny matrise, kan vi også invertere den definerte matrisen.