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

Hata
  • XML Parsing Error at 1:82. Error 9: Invalid character


En Küçük Say?y? Bul ve Say?y? Oku

Bu Program C++ Builder 6 ile uyumludur. 

AÇIKLAMA

Programa Say?lar? Giriniz.Say?lar? Ekledikten Sonra Çöz Butonuna Basarak ??lemin Tamamlanma Zaman?n? ve En Küçük  Say?n?n Okunu?u Görebilirsiniz.

Programda Say?lar? Enter Tu?una Basarak da Ekleyebilirsiniz.

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.  
  4. #include <vcl.h>
  5. #pragma hdrstop
  6.  
  7. #include "Unit1.h"
  8. //---------------------------------------------------------------------------
  9. #pragma package(smart_init)
  10. #pragma resource "*.dfm"
  11. TForm1 *Form1;
  12. //---------------------------------------------------------------------------
  13. __fastcall TForm1::TForm1(TComponent* Owner)
  14.         : TForm(Owner)
  15. {
  16. }
  17. //---------------------------------------------------------------------------
  18.  
  19. void __fastcall TForm1::Button1Click(TObject *Sender)
  20. {
  21. if(Edit1->Text!="")  //edit bos de?ilse
  22. {
  23. ListBox1->Items->Add(Edit1->Text);     //girilen say?y? kutuya ekle
  24. Edit1->Text="";                        //say? girisini bosalt
  25. }
  26. else
  27. Application->MessageBox("Lütfen Say? Giriniz","UYARI",MB_ICONINFORMATION)//bos eklemeye izin verme
  28. }
  29. //---------------------------------------------------------------------------
  30.  
  31. void __fastcall TForm1::Button2Click(TObject *Sender)
  32. {
  33. unsigned short Saat,Dakika,Saniye,MiliSaniye;      // zaman hesaplamas? icin tan?mlamalar
  34. TDateTime tarih;                                   // tarih tan?mla
  35. tarih.CurrentTime().DecodeTime(&Saat,&Dakika,&Saniye,&MiliSaniye); // bugunun tarihini saat dakika saniye ve milisaniye olarak ay?r
  36. String atanacak=IntToStr(Saat)+":";     // ay?r?lan parcalar? stringe yazarak edit2 ye ata
  37. atanacak+=IntToStr(Dakika)+":";
  38. atanacak+=IntToStr(Saniye)+":";
  39. atanacak+=IntToStr(MiliSaniye);         // buraya kadar
  40. Edit2->Text=atanacak;                    //atand?
  41. int sayi=ListBox1->Items->Count;           // kutudaki toplam say? adedini al
  42. String dizi[9];                  //tan?mlamalar okuma i?lemi icin
  43. dizi[0]="B?R";
  44. dizi[1]="?K?";
  45. dizi[2]="ÜÇ";
  46. dizi[3]="DÖRT";
  47. dizi[4]="BE?";
  48. dizi[5]="ALTI";
  49. dizi[6]="YED?";
  50. dizi[7]="SEK?Z";
  51. dizi[8]="DOKUZ";
  52. String dizi1[9];
  53. dizi1[0]="ON";
  54. dizi1[1]="Y?RM?";
  55. dizi1[2]="OTUZ";
  56. dizi1[3]="KIRK";
  57. dizi1[4]="ELL?";
  58. dizi1[5]="ALTMI?";
  59. dizi1[6]="YETM??";
  60. dizi1[7]="SEKSEN";
  61. dizi1[8]="DOKSAN";            // tan?mlamalar bitti
  62. if(sayi>0)                     // eger kutuda say? varsa
  63. {
  64. long int ilksayi;
  65. String tut=ListBox1->Items->Strings[0]// kutudaki ilk sayiyi al
  66. ilksayi=StrToInt(tut);
  67. long int enkucuk=ilksayi;               // al?nan ilk say?y? en kucuk kabul et
  68. for(int i=0;i<sayi;i++)                 // kutudaki tum say?lar? gez
  69. {
  70.  String gecis=ListBox1->Items->Strings[i];   // say?lar? sira ile
  71.  long int karsilastir=StrToInt(gecis);
  72.  if(ilksayi>karsilastir)                // kabul edilen en kucuk sayi ile kars?last?r eger daha kucugu bulunursa
  73.  {
  74.  enkucuk=karsilastir;                  // yeni bulunan say? en kucuk olarak al
  75.  ilksayi=enkucuk;                      // kabul edilen en kucuk say?yada yeni bulunan de?eri ata
  76.  }
  77. }
  78. // burada en kucuk say? bulundu
  79. int uzunlugu=(IntToStr(enkucuk)).Length()//bulunan say?n?n kac hane oldugunu bul
  80.  
  81. String enkucuksayimiz=IntToStr(enkucuk);   // say?y? stringe cevir
  82. String kopya1=enkucuksayimiz;            // say?n?n okuma i?lemi icin kopyalar?n? al
  83. String kopya2=enkucuksayimiz;
  84. String kopya3=enkucuksayimiz;
  85. String kopya4=enkucuksayimiz;
  86. String kopya5=enkucuksayimiz;
  87. String kopya6=enkucuksayimiz;
  88. String kopya7=enkucuksayimiz;
  89. String kopya8=enkucuksayimiz;
  90. String kopya9=enkucuksayimiz;            // kopyalar
  91.  
  92.  
  93.  
  94.  String temiz;
  95.  kopya1.Delete(1,uzunlugu-1);     //yuzmilyonlar hanesi
  96.  kopya2.Delete(1,uzunlugu-2);     //onmilyonlar hanesi
  97.  kopya2.Delete(2,1);
  98.  kopya3.Delete(1,uzunlugu-3);     //milyonlar hanesi
  99.  kopya3.Delete(2,2);
  100.  kopya4.Delete(1,uzunlugu-4);     //yuzbinler hanesi
  101.  kopya4.Delete(2,3);
  102.  kopya5.Delete(1,uzunlugu-5);     //onbinler hanesi
  103.  kopya5.Delete(2,4);
  104.  kopya6.Delete(1,uzunlugu-6);     //binler hanesi
  105.  kopya6.Delete(2,5);
  106.  kopya7.Delete(1,uzunlugu-7);     //yüzler hanesi
  107.  kopya7.Delete(2,6);
  108.  kopya8.Delete(1,uzunlugu-8);     //onlar hanesi
  109.  kopya8.Delete(2,7);
  110.  kopya9.Delete(2,uzunlugu-1);     //birler hanesi
  111.  if((kopya9=="1")&&(uzunlugu==9))     //say?m?z 9 haneli ise ve 9.cu hanesi 1 ise
  112.  temiz="YÜZ ";
  113.  if((kopya9!="1")&&(uzunlugu==9))     // say?m?z 9 haneli ise ve 9.cu hanesi 1 de?ilse
  114.  temiz=dizi[StrToInt(kopya9)-1]+" YÜZ ";
  115.  if((kopya8!="0")&&(uzunlugu>=8))
  116.  temiz+=dizi1[StrToInt(kopya8)-1]+" ";
  117.  if((kopya7!="0")&&(uzunlugu>=7))
  118.  temiz+=dizi[StrToInt(kopya7)-1]+" M?LYON ";
  119.  if((kopya7=="0")&&(uzunlugu>=7))
  120.  temiz+="M?LYON ";
  121.  if((kopya6=="1")&&(uzunlugu>=6))
  122.  temiz+="YÜZ ";
  123.  if((kopya6!="0")&&(kopya6!="1")&&(uzunlugu>=6))
  124.  temiz+=dizi[StrToInt(kopya6)-1]+" YÜZ ";
  125.  if((kopya5!="0")&&(uzunlugu>=5))
  126.  temiz+=dizi1[StrToInt(kopya5)-1]+" ";
  127.  if((kopya4!="0")&&(uzunlugu>4))
  128.  temiz+=dizi[StrToInt(kopya4)-1]+" B?N ";
  129.  if((kopya4!="0")&&(uzunlugu==4)&&(kopya4=="1"))
  130.  temiz+=" B?N ";
  131.  if((kopya4=="0")&&(uzunlugu>=4))
  132.  temiz+="B?N ";
  133.  if((kopya3=="1")&&(uzunlugu>=3))
  134.  temiz+="YÜZ ";
  135.  if((kopya3!="0")&&(kopya3!="1")&&(uzunlugu>=3))
  136.  temiz+=dizi[StrToInt(kopya3)-1]+" YÜZ ";
  137.  if((kopya2!="0")&&(uzunlugu>=2))
  138.  temiz+=dizi1[StrToInt(kopya2)-1]+" ";
  139.  if((kopya1!="0")&&(uzunlugu>=1))
  140.  temiz+=dizi[StrToInt(kopya1)-1]+" ";
  141.  Label1->Caption=temiz;
  142.  tarih.CurrentTime().DecodeTime(&Saat,&Dakika,&Saniye,&MiliSaniye); //tekrar zmaan? al
  143.  atanacak=IntToStr(Saat)+":";
  144.  atanacak+=IntToStr(Dakika)+":";
  145.  atanacak+=IntToStr(Saniye)+":";
  146.  atanacak+=IntToStr(MiliSaniye);
  147.  Edit3->Text=atanacak;  //ata olay bitmi?tir:))
  148.  }
  149. else
  150. Application->MessageBox("En Az Bir Say? Giriniz","UYARI",MB_ICONINFORMATION)// kutuda say? yok uyar? ver
  151. }
  152. //---------------------------------------------------------------------------
  153.  
  154. void __fastcall TForm1::Button3Click(TObject *Sender)
  155. {
  156. ListBox1->Items->Clear();
  157. Edit1->Text="";
  158. Label1->Caption="";       
  159. }
  160. //---------------------------------------------------------------------------
  161.  
  162. void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key)
  163. {
  164. if(Key=='.')
  165. Key=0;
  166. else if(((Key<'0')||(Key>'9'))&&((Key!=VK_DELETE)&&(Key!=VK_BACK)&&(Key!=VK_RETURN)))
  167. {
  168. Key=0;
  169. }
  170. if(Key==VK_RETURN)
  171. Button1->Click();
  172. }
  173. //---------------------------------------------------------------------------
  174.  
  175.  

Yorumlar (0)
Sadece kayıtlı kullanıcılar yorum yazabilir!
Son Güncelleme ( Perşembe, 07 Nisan 2011 23:34 )  
amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım amınıza koyayım