AÇIKLAMA
C++ Builder 2009 projesidir.
Program tabanlar arası çevrim yapmaktadır.
- 2'lik tabandaki bir sayıyı 8'lik, 16'lık ve 10'luk tabana
- 8'lik tabandaki bir sayıyı 2'lik, 16'lık ve 10'luk tabana
- 16'lık tabandaki bir sayıyı 2'lik, 8'lik ve 10'luk tabana
- 10'luk tabandaki bir sayıyı 2'lik, 8'lik ve 16'lık tabana
Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz
Program Kodu:
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include "math.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; char *dizi; String sayimiz; int boy; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void ikiliyecevir(int x) { String sonuc=""; String toplam; while(x>=2) { int kalan=x%2; x=x/2; sonuc+=kalan; } sonuc+=x; char *dizi2; dizi2=(char *) malloc(sonuc.Length()); strcpy(dizi2,sonuc.t_str()); toplam="İkilik Tabandaki Karşılık: "+String(dizi2); Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION); } //--------------------------------------------------------------------------- void sekizliyecevir(int x) { String sonuc=""; String toplam; while(x>=8) { int kalan=x%8; x=x/8; sonuc+=kalan; } sonuc+=x; char *dizi2; dizi2=(char *) malloc(sonuc.Length()); strcpy(dizi2,sonuc.t_str()); toplam="Sekizlik Tabandaki Karşılık: "+String(dizi2); Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION); } //--------------------------------------------------------------------------- void onaltiyacevir(int x) { String sonuc=""; String toplam=""; while(x>=16) { int kalan=x%16; x=x/16; if(kalan==10) sonuc+="A"; if(kalan==11) sonuc+="B"; if(kalan==12) sonuc+="C"; if(kalan==13) sonuc+="D"; if(kalan==14) sonuc+="E"; if(kalan==15) sonuc+="F"; if(kalan<10) sonuc+=kalan; } if(x==10) sonuc+="A"; if(x==11) sonuc+="B"; if(x==12) sonuc+="C"; if(x==13) sonuc+="D"; if(x==14) sonuc+="E"; if(x==15) sonuc+="F"; if(x<10) sonuc+=x; char *dizi2; dizi2=(char *) malloc(sonuc.Length()); strcpy(dizi2,sonuc.t_str()); toplam="Onaltılık Tabandaki Karşılık: "+String(dizi2); Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION); } //--------------------------------------------------------------------------- int ikilidenonluyacevir() { int toplam=0; for(int i=0;i<sayimiz.Length();i++) { } return toplam; } //--------------------------------------------------------------------------- int sekizlidenonluyacevir() { int toplam=0; for(int i=0;i<sayimiz.Length();i++) { } return toplam; } //--------------------------------------------------------------------------- int onaltidanonluyacevir() { int toplam=0; for(int i=0;i<sayimiz.Length();i++) { if(dizi[i]=='A') else if(dizi[i]=='B') else if(dizi[i]=='C') else if(dizi[i]=='D') else if(dizi[i]=='E') else if(dizi[i]=='F') else } return toplam; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button1Click(TObject *Sender) { if(((RadioButton1->Checked==true)||(RadioButton2->Checked==true)||(RadioButton3->Checked==true)||(RadioButton4->Checked==true))&&((RadioButton5->Checked==true)||(RadioButton6->Checked==true)||(RadioButton7->Checked==true)||(RadioButton8->Checked==true))) { int kontrol=0; if(RadioButton1->Checked) { int dongu=0; while(kontrol==0) { if(dongu==0) { sayimiz=InputBox("GİRİŞ","2'lik Tabanda Sayıyı Giriniz\nÖr:010101110",""); dongu=1; } else sayimiz=InputBox("YANLIŞ GİRİŞ","2'lik Tabanda Sayıyı Giriniz\nÖr:010101110",""); dizi=(char *)malloc(sayimiz.Length()); strcpy(dizi,sayimiz.t_str()); for(int a=0;a<sayimiz.Length();a++) { if((dizi[a]=='0')||(dizi[a]=='1')) { kontrol=1; } else { kontrol=0; break; } } } if(RadioButton6->Checked) { int sonuc=ikilidenonluyacevir(); sekizliyecevir(sonuc); } if(RadioButton7->Checked) { int sonuc=ikilidenonluyacevir(); onaltiyacevir(sonuc); } if(RadioButton8->Checked) { int sonuc=ikilidenonluyacevir(); Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION); } } if(RadioButton2->Checked) { int dongu=0; while(kontrol==0) { if(dongu==0) { sayimiz=InputBox("GİRİŞ","8'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); dongu=1; } else sayimiz=InputBox("YANLIŞ GİRİŞ","8'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); dizi=(char *)malloc(sayimiz.Length()); strcpy(dizi,sayimiz.t_str()); for(int a=0;a<sayimiz.Length();a++) { if((dizi[a]>='0')&&(dizi[a]<='7')) { kontrol=1; } else { kontrol=0; break; } } } if(RadioButton5->Checked) { int sonuc=sekizlidenonluyacevir(); ikiliyecevir(sonuc); } if(RadioButton7->Checked) { int sonuc=sekizlidenonluyacevir(); onaltiyacevir(sonuc); } if(RadioButton8->Checked) { int sonuc=sekizlidenonluyacevir(); Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION); } } if(RadioButton3->Checked) { int dongu=0; while(kontrol==0) { if(dongu==0) { sayimiz=InputBox("GİRİŞ","16'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); dongu=1; } else sayimiz=InputBox("YANLIŞ GİRİŞ","16'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); dizi=(char *)malloc(sayimiz.Length()); strcpy(dizi,sayimiz.t_str()); for(int a=0;a<sayimiz.Length();a++) { if(((dizi[a]>='0')&&(dizi[a]<='9'))||((dizi[a]>='A')&&(dizi[a]<='F'))) { kontrol=1; } else { kontrol=0; break; } } } if(RadioButton5->Checked) { int sonuc=onaltidanonluyacevir(); ikiliyecevir(sonuc); } if(RadioButton6->Checked) { int sonuc=onaltidanonluyacevir(); sekizliyecevir(sonuc); } if(RadioButton8->Checked) { int sonuc=onaltidanonluyacevir(); Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION); } } if(RadioButton4->Checked) { String hayda; int dongu=0; while(kontrol==0) { if(dongu==0) { sayimiz=InputBox("GİRİŞ","10'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); hayda=sayimiz; dongu=1; } else sayimiz=InputBox("YANLIŞ GİRİŞ","10'lik Tabanda Sayıyı Giriniz\nÖr:456327",""); hayda=sayimiz; dizi=(char *)malloc(sayimiz.Length()); strcpy(dizi,sayimiz.t_str()); for(int a=0;a<sayimiz.Length();a++) { if((dizi[a]>='0')&&(dizi[a]<='9')) { kontrol=1; } else { kontrol=0; break; } } } if(RadioButton5->Checked) { ikiliyecevir(StrToInt(hayda)); } if(RadioButton6->Checked) { sekizliyecevir(StrToInt(hayda)); } if(RadioButton7->Checked) { onaltiyacevir(StrToInt(hayda)); } } } else { Application->MessageBox(L"Dönüşecek Yada Dönüştürülecek Tabanı Seçiniz",L"UYARI",MB_ICONINFORMATION); } } //--------------------------------------------------------------------------- void __fastcall TForm1::RadioButton1Click(TObject *Sender) { RadioButton5->Visible=false; RadioButton6->Visible=true; RadioButton7->Visible=true; RadioButton8->Visible=true; RadioButton5->Checked=false; RadioButton6->Checked=false; RadioButton7->Checked=false; RadioButton8->Checked=false; } //--------------------------------------------------------------------------- void __fastcall TForm1::RadioButton2Click(TObject *Sender) { RadioButton5->Visible=true; RadioButton6->Visible=false; RadioButton7->Visible=true; RadioButton8->Visible=true; RadioButton5->Checked=false; RadioButton6->Checked=false; RadioButton7->Checked=false; RadioButton8->Checked=false; } //--------------------------------------------------------------------------- void __fastcall TForm1::RadioButton3Click(TObject *Sender) { RadioButton5->Visible=true; RadioButton6->Visible=true; RadioButton7->Visible=false; RadioButton8->Visible=true; RadioButton5->Checked=false; RadioButton6->Checked=false; RadioButton7->Checked=false; RadioButton8->Checked=false; } //--------------------------------------------------------------------------- void __fastcall TForm1::RadioButton4Click(TObject *Sender) { RadioButton5->Visible=true; RadioButton6->Visible=true; RadioButton7->Visible=true; RadioButton8->Visible=false; RadioButton5->Checked=false; RadioButton6->Checked=false; RadioButton7->Checked=false; RadioButton8->Checked=false; } //---------------------------------------------------------------------------

