Soru
Programcıya, uzunluğu veya kısalığı belli olmayan bir metin (girilenMetin) veriliyor. Programcıdan; tüm cümledeki kelimelere dikkat ederek, 5 harften uzun olan kelimeleri tersten yazması, 5 ve daha kısa olan kelimeleri ise normal şekilde bırakması isteniyor.
Örnek
Girdi | Çıktı |
---|---|
girilenMetin: Futbol nedir | Sonuç: Futbol riden |
girilenMetin: Bu bir deneme yazısı olabilir belki | Sonuç: Bu bir emened ısızay rilibalo ikleb |
Çözüm - C#
internal class Program
{
private static void Main(string[] args)
{
string girilenDeger = "Bu bir deneme yazısı olabilir belki";
// Girilen değerdeki kelimeleri tek tek ayırıp diziye at
string[] kelimeDizisi = girilenDeger.Split(' ');
string sonuc = "";
// Dizi uzunluğu boyunca döngüye devam et
for (int i = 0; i < kelimeDizisi.Length; i++)
{
// Kelime uzunluğu 5 harften fazlaysa kelimeyi ters çevir
if (kelimeDizisi[i].Length >= 5)
{
// Kelimeyi karakter dizisine at ve ters çevir
char[] karakterDizisi = kelimeDizisi[i].ToCharArray();
Array.Reverse(karakterDizisi);
// Karakter dizisini string'e dönüştürüp tekrar diziye yaz
kelimeDizisi[i] = new string(karakterDizisi);
}
// Kelimeleri sonuç bileşenine ekle
sonuc += kelimeDizisi[i] + " ";
}
// Cümlenin sondaki boşluğu sil ve sonucu göster
Console.WriteLine(sonuc.TrimEnd());
Console.Read();
}
}
Çözüm - Java
public class Main {
public static void main(String[] args) {
String girilenDeger = "Bu bir deneme yazısı olabilir belki";
// Girilen değerdeki kelimeleri tek tek ayırıp diziye at
String[] kelimeDizisi = girilenDeger.split(" ");
StringBuilder sonuc = new StringBuilder();
// Dizi uzunluğu boyunca döngüye devam et
for (int i = 0; i < kelimeDizisi.length; i++)
{
// Kelime uzunluğu 5 harften fazlaysa kelimeyi ters çevir
if (kelimeDizisi[i].length() >= 5)
{
// Kelimeyi karakter dizisine at
char[] karakterDizisi = kelimeDizisi[i].toCharArray();
// Karakter dizisini ters çevir
kelimeDizisi[i] = new StringBuilder(new String(karakterDizisi)).reverse().toString();
}
// Kelimeleri sonuç bileşenine ekle
sonuc.append(kelimeDizisi[i]).append(" ");
}
// Cümlenin sondaki boşluğu sil ve sonucu göster
System.out.println(sonuc.toString().trim());
}
}