Büyük Ünlü ve Küçük Ünlü Uyumları Uygulaması

DrogbA

Forum Üyesi
Katılım
27 Ara 2020
Mesajlar
3,440
Tepkime puanı
0
Puanları
36
Bu Program C++ Builder 6 ile uyumludur.



Açmış olduğunuz dosyadaki kelimelerin büyük ünlü ve küçük ünlü uyumuna uyup uymadıklarını kontrol eder ve sonuç olarak size bir dosya sunar.

Kod:
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
 
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
 
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button2Click(TObject *Sender)
{
OpenDialog1->Filter="Text Dosyaları (*.txt)|*.txt|Metin Dosyaları (*.doc)|*.doc";
if(OpenDialog1->Execute())
Memo1->Lines->LoadFromFile(OpenDialog1->FileName);
 
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::Button3Click(TObject *Sender)
{
int tut=Memo1->Lines->Count;
 
for(int p=0;p<tut;p++)
{
 AnsiString tut=Memo1->Lines->Strings[p]; String bosluk=" ",virgul=",",nokta=".",unlem="!",ikinokta=":",noktalivirgul=";",cifttirnak="\"";
 
 while(tut.Length()>0)
 {
   ListBox2->Items->Clear();
   ListBox3->Items->Clear();
   int bosluk1=tut.Pos(bosluk);
   ListBox2->Items->Add(bosluk1);
   int virgul1=tut.Pos(virgul);
   ListBox2->Items->Add(virgul1);
   int nokta1=tut.Pos(nokta);
   ListBox2->Items->Add(nokta1);
   int unlem1=tut.Pos(unlem);
   ListBox2->Items->Add(unlem1);
   int ikinokta1=tut.Pos(ikinokta);
   ListBox2->Items->Add(ikinokta1);
   int noktalivirgul1=tut.Pos(noktalivirgul);
   ListBox2->Items->Add(noktalivirgul1);
   int cifttirnak1=tut.Pos(cifttirnak);
   ListBox2->Items->Add(cifttirnak1);
 
   for(int i=0;i<ListBox2->Items->Count;i++)
   {
   if(ListBox2->Items->Strings[i]!=0)
   ListBox3->Items->Add(ListBox2->Items->Strings[i]);
   }
   int enkucuk;
   if(ListBox3->Items->Count>0)
   enkucuk=StrToInt(ListBox3->Items->Strings[0]);
   for(int i=0;i<ListBox3->Items->Count;i++)
   {
    if(StrToInt(ListBox3->Items->Strings[i])<enkucuk)
    enkucuk=StrToInt(ListBox3->Items->Strings[i]);
   }
 
    String kopya=tut;
    kopya.Delete(enkucuk,kopya.Length());
    tut.Delete(1,enkucuk);
    if(kopya!="")
    ListBox1->Items->Add(kopya);
 }
 
}
for(int i=0;i<ListBox1->Items->Count;i++)
{
 String oy=ListBox1->Items->Strings[i];
 int boy=oy.Length();
 char * dizi= new char[boy];
 dizi=oy.c_str();           String durum;
 int buyukunluince=0,buyukunlukalin=0,turkcedegil=0;
 for(int p=0;p<boy;p++)
 {
    if(((dizi[p]=='a')||(dizi[p]=='ı')||(dizi[p]=='o')||(dizi[p]=='u')||(dizi[p]=='A')||(dizi[p]=='I')||(dizi[p]=='O')||(dizi[p]=='U'))&&(buyukunlukalin==0))
    {
     buyukunluince=1;
    }
    if(((dizi[p]=='e')||(dizi[p]=='i')||(dizi[p]=='ö')||(dizi[p]=='ü')||(dizi[p]=='E')||(dizi[p]=='İ')||(dizi[p]=='Ö')||(dizi[p]=='Ü'))&&(buyukunluince==0))
    {
     buyukunlukalin=1;
    }
    if(buyukunlukalin==0)
    {
       if((dizi[p]=='e')||(dizi[p]=='i')||(dizi[p]=='ö')||(dizi[p]=='ü')||(dizi[p]=='E')||(dizi[p]=='İ')||(dizi[p]=='Ö')||(dizi[p]=='Ü'))
       {durum=oy+"           kelimesi türkçe değildir büyük ünlü uyumuna uymaz"; ListBox4->Items->Add(durum);turkcedegil=1; break;}
    }
    if(buyukunluince==0)
    {
     if((dizi[p]=='a')||(dizi[p]=='ı')||(dizi[p]=='o')||(dizi[p]=='u')||(dizi[p]=='A')||(dizi[p]=='I')||(dizi[p]=='O')||(dizi[p]=='U'))
     {durum=oy+"             kelimesi türkçe değildir büyük ünlü uyumuna uymaz"; ListBox4->Items->Add(durum);turkcedegil=1; break;}
    }
 }
 int duzsesli=0,duzgenis=0,daryuvarlak=0;
 for(int p=0;p<boy;p++)
 {
  if((p==3)||(p==4)||(p==5))
  {
   if(dizi[p]=='u')
    {
     if((dizi[p-1]=='b')||(dizi[p-1]=='m')||(dizi[p-1]=='v')||(dizi[p]=='p'))
     {
      break;
     }
    }
   }
  if(duzsesli==1)
  {
   if((dizi[p]=='o')||(dizi[p]=='ö')||(dizi[p]=='u')||(dizi[p]=='ü'))
   {durum=oy+"             kelimesi türkçe değildir küçük ünlü uyumuna uymaz"; ListBox4->Items->Add(durum);turkcedegil=1; break;}
  }
  if(daryuvarlak==1)
  {
   if((dizi[p]=='a')||(dizi[p]=='e'))
   {duzsesli=1; daryuvarlak=0;}
   if((dizi[p]=='ı')||(dizi[p]=='i')||(dizi[p]=='o')||(dizi[p]=='ö'))
   {durum=oy+"             kelimesi türkçe değildir küçük ünlü uyumuna uymaz"; ListBox4->Items->Add(durum);turkcedegil=1; break;}
  }
  if(((dizi[p]=='a')||(dizi[p]=='e')||(dizi[p]=='ı')||(dizi[p]=='i'))&&((duzsesli==0)||(duzgenis==0)||(daryuvarlak==0)))
  {
  duzsesli=1;   daryuvarlak=0;
  }
  if(((dizi[p]=='o')||(dizi[p]=='ö')||(dizi[p]=='u')||(dizi[p]=='ü'))&&((duzsesli==0)||(duzgenis==0)||(daryuvarlak==0)))
  {
  duzgenis=1; daryuvarlak=1;
  }
 }
 if(turkcedegil==0)
 {durum=oy+"             kelimesi turkce bir kelimedir"; ListBox4->Items->Add(durum);}
}
 
 ListBox4->Items->SaveToFile("sonuc.txt");
Application->MessageBox("Sonuç Dosyası Açmış Olduğunuz Dosyanın Yanında Oluşmuştur","SONUÇ",MB_ICONINFORMATION);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Memo1->Lines->Clear();
ListBox1->Items->Clear();
ListBox2->Items->Clear();
ListBox3->Items->Clear();
ListBox4->Items->Clear();       
}
//---------------------------------------------------------------------------
 

Nutella

Bayan Üye
Özel Üye
Katılım
2 Ocak 2021
Mesajlar
3,559
Tepkime puanı
0
Puanları
36
Cinsiyet
  1. Bayan
Takım
Galatasaray
Paylaşım için teşekkürler.
 
metal işleme
Üst