C++ SICAKLIK ÇEVİRME
C++ ile yapılmış bir sıcaklık çevirme örneği. Program tüm sıcaklık ölçeklerini Celcius, kelvin, fahrenheit ve reomür sıcaklık değerlerini birbirine çeviriyor.
Program önce kullanıcıdan hangi ölçekte değer gireceğini soruyor. Kullanıcı ölçek seçimini yaptıktan sonra sıcaklık değerini girmesini istiyor. Kullanıcı sıcaklık değerini de girdikten sonra bu kez bu sıcaklık değerini hangi birime dönüştürmek istediğini soruyor ve kullanıcının seçimine göre sıcaklık dönüştürmesini yaparak ekrana yazıyor. Kullanıcı isterse ardışık yeni girişler yapabiliyor, isterse programdan çıkıyor.
Program her bir termometre ölçeği için bir fonksiyona sahip. Bu yönüyle fonksiyon kullanımına da güzel bir örnek kabul edilebilir.
Program zorluk ve kodlama tekniği bakımından orta düzeyde bir örnek kabul edilebilir.
Programın tüm kodları aşağıda verilmiştir.
Kolay gelsin
#include <iostream>
using namespace std;
void ConvertFromCels(float cdeg, int csecim);
void ConvertFromFahrenheit(float fdeg, int fsecim);
void ConvertFromReomur(float rdeg, int rsecim);
void ConvertFromKelvin(float kdeg, int ksecim);
float total_deg = 0;
int main()
{
float sicaklik;
float celcius;
float kelvin;
float fahren;
float reomur;
char olcek;
int secim;
secim = 1;
char PR = 'A';
while (PR == 'A')
{
cout << "Hangi Olcekte Sicaklik Degeri Gireceginizi Seciniz" << endl;
cout << "Celcius Deger Girecekseniz C, Fahrenheit Deger Girecekseniz F " << endl;
cout<<"Reomur Deger Girecekseniz R, Kelvin Deger Girecekseniz K Giriniz : ";
cin >> olcek;
if (olcek == 'C')
{
cout << "Celcius Degerinde Veri Girmeyi Sectiniz. Sicaklik Degerinizi Giriniz:";
cin >> sicaklik;
cout << "Girmis Oldugunuz Sicaklik Degerini Cevirmek Istediginiz Olcegi Seciniz" << endl;
cout << " Celciusa Cevirmek Icin 1, Fahrenheit Icin 2, Reomur Icin 3, Kelvin Icin 4 Giriniz:";
cin >> secim;
ConvertFromCels(sicaklik, secim);
}
if (olcek == 'F')
{
cout << "Fahrenheit Degerinde Veri Girmeyi Sectiniz. Sicaklik Degerinizi Giriniz:";
cin >> sicaklik;
cout << "Girmis Oldugunuz Sicaklik Degerini Cevirmek Istediginiz Olcegi Seciniz" << endl;
cout << " Celciusa Cevirmek Icin 1, Fahrenheit Icin 2, Reomur Icin 3, Kelvin Icin 4 Giriniz:";
cin >> secim;
ConvertFromFahrenheit(sicaklik, secim);
}
if (olcek == 'R')
{
cout << "Reomur Degerinde Veri Girmeyi Sectiniz. Sicaklik Degerinizi Giriniz:";
cin >> sicaklik;
cout << "Girmis Oldugunuz Sicaklik Degerini Cevirmek Istediginiz Olcegi Seciniz" << endl;
cout << " Celciusa Cevirmek Icin 1, Fahrenheit Icin 2, Reomur Icin 3, Kelvin Icin 4 Giriniz:";
cin >> secim;
ConvertFromReomur(sicaklik, secim);
}
if (olcek == 'K')
{
cout << "Kelvin Degerinde Veri Girmeyi Sectiniz. Sicaklik Degerinizi Giriniz:";
cin >> sicaklik;
cout << "Girmis Oldugunuz Sicaklik Degerini Cevirmek Istediginiz Olcegi Seciniz" << endl;
cout << " Celciusa Cevirmek Icin 1, Fahrenheit Icin 2, Reomur Icin 3, Kelvin Icin 4 Giriniz:";
cin >> secim;
ConvertFromKelvin(sicaklik, secim);
}
cout << "Devam Etmek Icin A Cikmak Icin A dan Farki Bir Karakter Giriniz: ";
cin >> PR;
}
cin.get();
cin.get();
return 0;
}
void ConvertFromCels(float deg, int olcek)
{
if (olcek == 1)
{
total_deg = deg;
cout << " Girmiş Oldugunuz " << deg << " Celcius Degerinin Celcius Olceginde Karsiligi " << deg << "°C dir" << endl;
}
if (olcek == 2)
{
total_deg = 1.8*deg + 32;
cout << " Girmis Oldugunuz " << deg << " Celcius Degerinin Fahrenheit Olceginde Karsiligi " << total_deg << " F dir" << endl;
}
if (olcek == 3)
{
total_deg = 0.8*deg;
cout << " Girmis Oldugunuz " << deg << " Celcius Degerinin Reomur Olceginde Karsiligi " << total_deg << " R dir" << endl;
}
if (olcek == 4)
{
total_deg = deg + 273;
cout << " Girmis Oldugunuz " << deg << " Celcius Degerinin Kelvin Olceginde Karsiligi " << total_deg << " K dir" << endl;
}
}
void ConvertFromFahrenheit(float deg, int olcek)
{
if (olcek == 1)
{
total_deg = (10 * deg - 320) / 18;
cout << " Girmis Oldugunuz " << deg << " Fahrenheit Degerinin Celcius Olceginde Karsiligi " << total_deg << " C dir" << endl;
}
if (olcek == 2)
{
total_deg = deg;
cout << " Girmis Oldugunuz " << deg << " Fahrenheit Degerinin Fahrenheit Olceginde Karsiligi " << total_deg << " F dir" << endl;
}
if (olcek == 3)
{
total_deg = (4 * deg - 128) / 9;
cout << " Girmis Oldugunuz " << deg << " Fahrenheit Degerinin Reomur Olceginde Karsiligi " << total_deg << " R dir" << endl;
}
if (olcek == 4)
{
total_deg = (10 * deg - 320) / 18 + 273;
cout << " Girmis Oldugunuz " << deg << " Fahrenheit Degerinin Kelvin Olceginde Karsiligi " << total_deg << " K dir" << endl;
}
}
void ConvertFromReomur(float deg, int olcek)
{
if (olcek == 1)
{
total_deg = 10 * deg / 8;
cout << " Girmis Oldugunuz " << deg << " Reomur Degerinin Celcius Olceginde Karsiligi " << total_deg << " C dir" << endl;
}
if (olcek == 2)
{
total_deg = (18*deg/8)+32;
cout << " Girmis Oldugunuz " << deg << " Reomur Degerinin Fahrenheit Olceginde Karsiligi " << total_deg << " F dir" << endl;
}
if (olcek == 3)
{
total_deg = total_deg = deg;
cout << " Girmis Oldugunuz " << deg << " Reomur Degerinin Reomur Olceginde Karsiligi " << total_deg << " R dir" << endl;
}
if (olcek == 4)
{
total_deg = (10 * deg / 8) + 273;
cout << " Girmis Oldugunuz " << deg << " Reomur Degerinin Kelvin Olceginde Karsiligi " << total_deg << " K dir" << endl;
}
}
void ConvertFromKelvin(float deg, int olcek)
{
if (olcek == 1)
{
total_deg = deg - 273;
cout << " Girmis Oldugunuz " << deg << " Kelvin Degerinin Celcius Olceginde Karsiligi " << total_deg << " C dir" << endl;
}
if (olcek == 2)
{
total_deg = deg*1.8 - 273 * 1.8 + 32;
cout << " Girmis Oldugunuz " << deg << " Kelvin Degerinin Fahrenheit Olceginde Karsiligi " << total_deg << " F dir" << endl;
}
if (olcek == 3)
{
total_deg = 0.8*deg - 273 * 0.8;
cout << " Girmis Oldugunuz " << deg << " Kelvin Degerinin Reomur Olceginde Karsiligi " << total_deg << " R dir" << endl;
}
if (olcek == 4)
{
total_deg = deg;
cout << " Girmis Oldugunuz " << deg << " Kelvin Degerinin Kelvin Olceginde Karsiligi " << total_deg << " K dir" << endl;
}
}
SANATSAL BİLGİ
31/10/2016