Project #1: Türkçe Heceleme
Cum-hur-baş-ka-nı
Baş-kent-li
Spor
Kram-pon
E-lek-trik
E-lek-tro-nik
Tram-vay
Rule #1: Her hecede sadece bir tane sesli harf olabilir.
Rule #2: İki sesli arasındaki sessizlerden en sağdaki
sessiz sağdaki heceye, varsa kalanlar soldaki
heceye verilir. (Exception: Sağdaki heceye
verilen sessiz 'r' ise ve onun solundaki sessiz
't' ise, 't' de 'r' ile sağdaki heceye verilir)
Rule #3: İlk sesliden önceki sessizler ilk heceye, son
sesliden sonraki sessizler son heceye verilir.
public class hece
{
public static String[] heceleme(String s)
{
String[] arr = new String[0];
int j=s.length();
for(int i=s.length();i>0;i--)
{
if(seslimi(s.substring(i-1,i)))
{
if(i-2!=-1)
{
if(seslimi(s.substring(i-2,i-1)))
{
arr = extendArray(arr,s.substring(i-1,j));
j=i-1;
}
else
{
if(i==3)
{
if(seslimi(s.substring(0,1)))
{
arr = extendArray(arr,s.substring(i-2,j));
j=i-2;
arr = extendArray(arr,s.substring(0,1));
i=0;
}
else
{
arr = extendArray(arr,s.substring(i-3,j));
j=i-2;
i=0;
}
}
else
{
arr = extendArray(arr,s.substring(i-2,j));
j=i-2;
}
}
}
else
{
arr = extendArray(arr,s.substring(i-1,j));
}
}
}
return arr;
}
public static boolean seslimi(String s)
{
if(s.compareTo("a")==0 || s.compareTo("e")==0|| s.compareTo("ı")==0 || s.compareTo("i")==0|| s.compareTo("o")==0 || s.compareTo("ö")==0 || s.compareTo("u")==0|| s.compareTo("ü")==0)
return true;
else
return false;
}
public static String[] extendArray(String[] arr, String s)
{
String[] arr2=new String[arr.length+1];
arr2[0]=s;
for(int i=0; i<arr.length;i++)
arr2[i+1]=arr[i];
return arr2;
}
public static String toString(String[] arr)
{
if(arr.length==0)
return "İşlem yürütülemedi. Heceleme yapılamadı, lütfen girdinizi kontrol ediniz.";
String s="";
for(int i=0;i<arr.length-1;i++)
s+=arr[i] + " - ";
s+=arr[arr.length-1];
return s;
}
public static void main(String[] args)
{
System.out.println(toString(heceleme("elektronik")));
}
}Birde diğer bir projem ise yine java ile girilen sayının türkçesini yazdırma bundada sorunum var eğer yapabilecek kişi varsa ve ya bana hatamı anlatmak isteyen yardımsever biri msnden konuşabiliriz.Yardımcı olacak olan herkese şimdiden teşekkürler... Msn: brkdizayn@hotmail.com