Dette eksemplet inneholder to forskjellige teknikker for å bytte tall i C-programmering. Det første programmet bruker midlertidig variabel for å bytte tall, mens det andre programmet ikke bruker midlertidige variabler.
Eksempel 1: Bytt tall (ved hjelp av midlertidig variabel)
#include using namespace std; int main() ( int a = 5, b = 10, temp; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; temp = a; a = b; b = temp; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )
Produksjon
Før du bytter. a = 5, b = 10 Etter bytte. a = 10, b = 5
For å utføre bytte i eksemplet ovenfor, brukes tre variabler.
Innholdet i den første variabelen kopieres til tempvariabelen. Deretter kopieres innholdet i den andre variabelen til den første variabelen.
Til slutt kopieres innholdet i tempvariabelen tilbake til den andre variabelen som fullfører bytteprosessen.
Du kan også utføre bytte med bare to variabler som nedenfor.
Eksempel 2: Bytt tall uten å bruke midlertidige variabler
#include using namespace std; int main() ( int a = 5, b = 10; cout << "Before swapping." << endl; cout << "a = " << a << ", b = " << b << endl; a = a + b; b = a - b; a = a - b; cout << "After swapping." << endl; cout << "a = " << a << ", b = " << b << endl; return 0; )
Resultatet av dette programmet er det samme som det første programmet ovenfor.
La oss se hvordan dette programmet fungerer:
- I utgangspunktet,
a = 5
ogb = 10
. - Deretter legger vi til a og b og lagrer det i a med koden
a = a + b
. Dette betyra = 5 + 10
. Såa = 15
nå. - Så bruker vi koden
b = a - b
. Dette betyrb = 15 - 10
. Såb = 5
nå. - Igjen bruker vi koden
a = a - b
. Dette betyra = 15 - 5
. Så til slutt,a = 10
.
Derfor er tallene byttet ut.
Merk: Vi kan bruke multiplikasjon og deling i stedet for addisjon og subtraksjon. Dette fungerer imidlertid ikke hvis ett av tallene er 0.
int a = 5, b = 10; // using multiplication and division for swapping a = a * b; // a = 50 b = a / b; // b = 5 a = a / b; // a = 10