Bu örnek, C programlamada sayıları değiştirmek için iki farklı teknik içerir. İlk program numaraları değiştirmek için geçici değişkeni kullanır, ikinci program ise geçici değişkenleri kullanmaz.
Örnek 1: Geçici Değişken Kullanarak Sayıları Değiştirme Programı
#include <stdio.h>
int main()
{
double firstNumber, secondNumber, temporaryVariable;
printf("İlk sayıyı giriniz: ");
scanf("%lf", &firstNumber);
printf("İkinci sayıyı giriniz: ");
scanf("%lf",&secondNumber);
// FirstNumber değeri temporaryVariable öğesine atandı
temporaryVariable = firstNumber;
// SecondNumber değeri firstNumber öğesine atandı
firstNumber = secondNumber;
// TemporaryVariable'ın değeri (firstNumber'ın başlangıç değerini içerir), secondNumber öğesine atanır
secondNumber = temporaryVariable;
printf("\n Değiştirdikten sonra, ilk sayı = %.2lf\n", firstNumber);
printf("Değiştirdikten sonra, ikinci sayı = %.2lf", secondNumber);
return 0;
}
Çıktısı :
İlk sayıyı giriniz: 1.20
İkinci sayıyı giriniz: 2.45
Değiştirdikten sonra, ilk sayı = 2.45
Değiştirdikten sonra, ikinci sayı = 1.20
Yukarıdaki programda temporaryVariable öğesine firstNumber değeri atanmıştır.
Ardından, firstNumber değeri secondNumber öğesine atanır.
Son olarak temporaryVariable (firstNumber öğesinin başlangıç değerini tutar), takas işlemini tamamlayan secondNumber öğesine atanır.
Burada temporaryVariable, firstNumber değerini tutmak için kullanılır ve bunun dışında başka bir kullanımı yoktur. Ayrıca takas programını
temporaryVariable kullanmadan da yazabilirsiniz.
Örnek 2: Geçici Değişkenler Kullanmadan Numarayı Değiştirme Programı
#include <stdio.h>
int main()
{
double firstNumber, secondNumber;
printf("ilk sayıyı giriniz: ");
scanf("%lf", &firstNumber);
printf("ikinci sayıyı giriniz: ");
scanf("%lf",&secondNumber);
// Takas işlemi - Swapping process
firstNumber = firstNumber - secondNumber;
secondNumber = firstNumber + secondNumber;
firstNumber = secondNumber - firstNumber;
printf("\n Değiştirdikten sonra, ilk sayı = %.2lf\n", firstNumber);
printf("Değiştirdikten sonra, ikinci sayı = %.2lf", secondNumber);
return 0;
}
Çıktısı :
ilk sayıyı giriniz: 10.25
ikinci sayıyı giriniz: -12.5
Değiştirdikten sonra, ilk sayı = -12.50
Değiştirdikten sonra, ikinci sayı = 10.25