Programlama | Programlama Dilleri | C Programlama Dili |C++

Anasayfa Programlama C++ Builder Taban Dönüştürücü 2,8,16 ve 10lu Tabanların Birbirine Çevrilmesi


Taban Dönüştürücü 2,8,16 ve 10lu Tabanların Birbirine Çevrilmesi

AÇIKLAMA

C++ Builder 2009 projesidir.

Program tabanlar arası çevrim yapmaktadır.

çevirme işlemlerini gerçekleştirir.

Programın Tamamını Aşağıdaki Linkten İndirebilirsiniz

Linki Görebilmeniz İçin Üye Olmanız Gerekmektedir...

Üye Kayıt

Program Kodu:

  1. //---------------------------------------------------------------------------
  2.  
  3. #include <vcl.h>
  4. #pragma hdrstop
  5.  
  6. #include "Unit1.h"
  7. #include "math.h"
  8. //---------------------------------------------------------------------------
  9. #pragma package(smart_init)
  10. #pragma resource "*.dfm"
  11. TForm1 *Form1;
  12. char   *dizi;
  13. String sayimiz;
  14. int boy;
  15. //---------------------------------------------------------------------------
  16. __fastcall TForm1::TForm1(TComponent* Owner)
  17.     : TForm(Owner)
  18. {
  19. }
  20. //---------------------------------------------------------------------------
  21. void ikiliyecevir(int x)
  22. {
  23. String sonuc="";
  24. String toplam;
  25. while(x>=2)
  26. {
  27.   int kalan=x%2;
  28.   x=x/2;
  29.   sonuc+=kalan;
  30. }
  31. sonuc+=x;
  32. char *dizi2;
  33.  dizi2=(char *) malloc(sonuc.Length());
  34.  strcpy(dizi2,sonuc.t_str());
  35.  strrev(dizi2);
  36.  toplam="İkilik Tabandaki Karşılık: "+String(dizi2);
  37.  Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION);
  38. }
  39. //---------------------------------------------------------------------------
  40. void sekizliyecevir(int x)
  41. {
  42.  String sonuc="";
  43.  String toplam;
  44.  while(x>=8)
  45.  {
  46.   int kalan=x%8;
  47.   x=x/8;
  48.   sonuc+=kalan;
  49.  }
  50.  sonuc+=x;
  51.  char *dizi2;
  52.  dizi2=(char *) malloc(sonuc.Length());
  53.  strcpy(dizi2,sonuc.t_str());
  54.  strrev(dizi2);
  55.  toplam="Sekizlik Tabandaki Karşılık: "+String(dizi2);
  56.  Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION);
  57. }
  58. //---------------------------------------------------------------------------
  59. void onaltiyacevir(int x)
  60. {
  61.  String sonuc="";
  62.  String toplam="";
  63.  while(x>=16)
  64.  {
  65.   int kalan=x%16;
  66.   x=x/16;
  67.   if(kalan==10)
  68.   sonuc+="A";
  69.   if(kalan==11)
  70.   sonuc+="B";
  71.   if(kalan==12)
  72.   sonuc+="C";
  73.   if(kalan==13)
  74.   sonuc+="D";
  75.   if(kalan==14)
  76.   sonuc+="E";
  77.   if(kalan==15)
  78.   sonuc+="F";
  79.   if(kalan<10)
  80.   sonuc+=kalan;
  81.  }
  82.   if(x==10)
  83.   sonuc+="A";
  84.   if(x==11)
  85.   sonuc+="B";
  86.   if(x==12)
  87.   sonuc+="C";
  88.   if(x==13)
  89.   sonuc+="D";
  90.   if(x==14)
  91.   sonuc+="E";
  92.   if(x==15)
  93.   sonuc+="F";
  94.   if(x<10)
  95.   sonuc+=x;
  96.  char *dizi2;
  97.  dizi2=(char *) malloc(sonuc.Length());
  98.  strcpy(dizi2,sonuc.t_str());
  99.  strrev(dizi2);
  100.  toplam="Onaltılık Tabandaki Karşılık: "+String(dizi2);
  101.  Application->MessageBox(toplam.c_str(),L"SONUÇ",MB_ICONINFORMATION);
  102. }
  103.  
  104. //---------------------------------------------------------------------------
  105. int ikilidenonluyacevir()
  106. {
  107.  strrev(dizi);
  108.  int toplam=0;
  109.  for(int i=0;i<sayimiz.Length();i++)
  110.  {
  111.   toplam+=StrToInt(dizi[i])* pow(2,i);
  112.  }
  113.  return toplam;
  114. }
  115. //---------------------------------------------------------------------------
  116. int sekizlidenonluyacevir()
  117. {
  118.  strrev(dizi);
  119.  int toplam=0;
  120.  for(int i=0;i<sayimiz.Length();i++)
  121.  {
  122.      toplam+=StrToInt(dizi[i])*pow(8,i);
  123.  }
  124.  return toplam;
  125. }
  126. //---------------------------------------------------------------------------
  127. int onaltidanonluyacevir()
  128. {
  129.  strrev(dizi);
  130.  int toplam=0;
  131.  for(int i=0;i<sayimiz.Length();i++)
  132.  {
  133.      if(dizi[i]=='A')
  134.      toplam+=10*pow(16,i);
  135.      else if(dizi[i]=='B')
  136.      toplam+=11*pow(16,i);
  137.      else if(dizi[i]=='C')
  138.      toplam+=12*pow(16,i);
  139.      else if(dizi[i]=='D')
  140.      toplam+=13*pow(16,i);
  141.      else if(dizi[i]=='E')
  142.      toplam+=14*pow(16,i);
  143.      else if(dizi[i]=='F')
  144.      toplam+=15*pow(16,i);
  145.      else
  146.      toplam+=StrToInt(dizi[i])*pow(16,i);
  147.  }
  148.  return toplam;
  149. }
  150. //---------------------------------------------------------------------------
  151. void __fastcall TForm1::Button1Click(TObject *Sender)
  152. {
  153. 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)))
  154. {
  155. int kontrol=0;
  156.  
  157.  
  158. if(RadioButton1->Checked)
  159. {
  160. int dongu=0;
  161. while(kontrol==0)
  162. {
  163. if(dongu==0)
  164. {
  165. sayimiz=InputBox("GİRİŞ","2'lik Tabanda Sayıyı Giriniz\nÖr:010101110","");
  166. dongu=1;
  167. }
  168. else
  169. sayimiz=InputBox("YANLIŞ GİRİŞ","2'lik Tabanda Sayıyı Giriniz\nÖr:010101110","");
  170. dizi=(char *)malloc(sayimiz.Length());
  171. strcpy(dizi,sayimiz.t_str());
  172. for(int a=0;a<sayimiz.Length();a++)
  173. {
  174. if((dizi[a]=='0')||(dizi[a]=='1'))
  175. {
  176. kontrol=1;
  177. }
  178. else
  179. {
  180. kontrol=0;
  181. break;
  182. }
  183. }
  184. }
  185. if(RadioButton6->Checked)
  186. {
  187.  int sonuc=ikilidenonluyacevir();
  188.  sekizliyecevir(sonuc);
  189. }
  190. if(RadioButton7->Checked)
  191. {
  192.  int sonuc=ikilidenonluyacevir();
  193.  onaltiyacevir(sonuc);
  194. }
  195. if(RadioButton8->Checked)
  196. {
  197.  int sonuc=ikilidenonluyacevir();
  198.  Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION);
  199. }
  200. }
  201.  
  202.  
  203.  
  204. if(RadioButton2->Checked)
  205. {
  206. int dongu=0;
  207. while(kontrol==0)
  208. {
  209. if(dongu==0)
  210. {
  211. sayimiz=InputBox("GİRİŞ","8'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  212. dongu=1;
  213. }
  214. else
  215. sayimiz=InputBox("YANLIŞ GİRİŞ","8'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  216. dizi=(char *)malloc(sayimiz.Length());
  217. strcpy(dizi,sayimiz.t_str());
  218. for(int a=0;a<sayimiz.Length();a++)
  219. {
  220. if((dizi[a]>='0')&&(dizi[a]<='7'))
  221. {
  222. kontrol=1;
  223. }
  224. else
  225. {
  226. kontrol=0;
  227. break;
  228. }
  229. }
  230. }
  231.  
  232.  
  233. if(RadioButton5->Checked)
  234. {
  235.  int sonuc=sekizlidenonluyacevir();
  236.  ikiliyecevir(sonuc);
  237. }
  238. if(RadioButton7->Checked)
  239. {
  240.  int sonuc=sekizlidenonluyacevir();
  241.  onaltiyacevir(sonuc);
  242. }
  243. if(RadioButton8->Checked)
  244. {
  245.  int sonuc=sekizlidenonluyacevir();
  246.  Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION);
  247. }
  248. }
  249.  
  250.  
  251.  
  252. if(RadioButton3->Checked)
  253. {
  254. int dongu=0;
  255. while(kontrol==0)
  256. {
  257. if(dongu==0)
  258. {
  259. sayimiz=InputBox("GİRİŞ","16'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  260. dongu=1;
  261. }
  262. else
  263. sayimiz=InputBox("YANLIŞ GİRİŞ","16'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  264. dizi=(char *)malloc(sayimiz.Length());
  265. strcpy(dizi,sayimiz.t_str());
  266. for(int a=0;a<sayimiz.Length();a++)
  267. {
  268. if(((dizi[a]>='0')&&(dizi[a]<='9'))||((dizi[a]>='A')&&(dizi[a]<='F')))
  269. {
  270. kontrol=1;
  271. }
  272. else
  273. {
  274. kontrol=0;
  275. break;
  276. }
  277. }
  278. }
  279.  
  280. if(RadioButton5->Checked)
  281. {
  282.  int sonuc=onaltidanonluyacevir();
  283.  ikiliyecevir(sonuc);
  284. }
  285. if(RadioButton6->Checked)
  286. {
  287.  int sonuc=onaltidanonluyacevir();
  288.  sekizliyecevir(sonuc);
  289. }
  290. if(RadioButton8->Checked)
  291. {
  292.  int sonuc=onaltidanonluyacevir();
  293.  Application->MessageBox(("Onluk Tabandaki Karşılık: "+IntToStr(sonuc)).c_str(),L"SONUÇ",MB_ICONINFORMATION);
  294. }
  295.  
  296. }
  297.  
  298.  
  299. if(RadioButton4->Checked)
  300. {
  301. String hayda;
  302. int dongu=0;
  303. while(kontrol==0)
  304. {
  305. if(dongu==0)
  306. {
  307. sayimiz=InputBox("GİRİŞ","10'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  308. hayda=sayimiz;
  309. dongu=1;
  310. }
  311. else
  312. sayimiz=InputBox("YANLIŞ GİRİŞ","10'lik Tabanda Sayıyı Giriniz\nÖr:456327","");
  313. hayda=sayimiz;
  314. dizi=(char *)malloc(sayimiz.Length());
  315. strcpy(dizi,sayimiz.t_str());
  316. for(int a=0;a<sayimiz.Length();a++)
  317. {
  318. if((dizi[a]>='0')&&(dizi[a]<='9'))
  319. {
  320. kontrol=1;
  321. }
  322. else
  323. {
  324. kontrol=0;
  325. break;
  326. }
  327. }
  328. }
  329.  
  330. if(RadioButton5->Checked)
  331. {
  332.  ikiliyecevir(StrToInt(hayda));
  333. }
  334. if(RadioButton6->Checked)
  335. {
  336.  sekizliyecevir(StrToInt(hayda));
  337. }
  338. if(RadioButton7->Checked)
  339. {
  340.  onaltiyacevir(StrToInt(hayda));
  341. }
  342.  
  343. }
  344. }
  345. else
  346. {
  347.  
  348. Application->MessageBox(L"Dönüşecek Yada Dönüştürülecek Tabanı Seçiniz",L"UYARI",MB_ICONINFORMATION);
  349. }
  350.  
  351.  
  352. }
  353. //---------------------------------------------------------------------------
  354. void __fastcall TForm1::RadioButton1Click(TObject *Sender)
  355. {
  356. RadioButton5->Visible=false;
  357. RadioButton6->Visible=true;
  358. RadioButton7->Visible=true;
  359. RadioButton8->Visible=true;
  360. RadioButton5->Checked=false;
  361. RadioButton6->Checked=false;
  362. RadioButton7->Checked=false;
  363. RadioButton8->Checked=false;
  364. }
  365. //---------------------------------------------------------------------------
  366.  
  367. void __fastcall TForm1::RadioButton2Click(TObject *Sender)
  368. {
  369. RadioButton5->Visible=true;
  370. RadioButton6->Visible=false;
  371. RadioButton7->Visible=true;
  372. RadioButton8->Visible=true;
  373. RadioButton5->Checked=false;
  374. RadioButton6->Checked=false;
  375. RadioButton7->Checked=false;
  376. RadioButton8->Checked=false;
  377. }
  378. //---------------------------------------------------------------------------
  379.  
  380. void __fastcall TForm1::RadioButton3Click(TObject *Sender)
  381. {
  382. RadioButton5->Visible=true;
  383. RadioButton6->Visible=true;
  384. RadioButton7->Visible=false;
  385. RadioButton8->Visible=true;
  386. RadioButton5->Checked=false;
  387. RadioButton6->Checked=false;
  388. RadioButton7->Checked=false;
  389. RadioButton8->Checked=false;
  390. }
  391. //---------------------------------------------------------------------------
  392.  
  393. void __fastcall TForm1::RadioButton4Click(TObject *Sender)
  394. {
  395. RadioButton5->Visible=true;
  396. RadioButton6->Visible=true;
  397. RadioButton7->Visible=true;
  398. RadioButton8->Visible=false;
  399. RadioButton5->Checked=false;
  400. RadioButton6->Checked=false;
  401. RadioButton7->Checked=false;
  402. RadioButton8->Checked=false;
  403. }
  404. //---------------------------------------------------------------------------
  405.  
  406.  

 

C++ Builder 2009 ile Sistem Bağımsız Exe Üretilmesi

Yorumlar (3)
  • aydın  - tebrikler süper program
    [color=fuchsia][/color][size=large][/size]çok güzel bir proje ama ancak bana sağlama yapmaya yarıyor öğrencilik zor meslek sınavda bunu veri hocamız yanımıza vermezki :s
  • Twinsss  - :(
    :confused: Allah rızası için bu programı ben yazacagım tekrar proje yapmam gerekiyor 5 6 uygulamadan oluşan. Hata veriyor yanlış mı yapıyorum bilmiyorum hep iki satırda hata veriyor . Form ile ilgili güzel açıklama yapacak birisi var mı
  • gnc_b
    Bu programı php kodlarıyla yapmam gerekiyor.bana yardımcı olabilecek kişi var mı :?:
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Salı, 04 Eylül 2012 03:18 )