Şimdi Ara

C'de bir cümleyi tersten kelime kelime yazdırma? (2. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
1 Misafir - 1 Masaüstü
5 sn
35
Cevap
0
Favori
18.480
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: önceki 12
Sayfaya Git
Git
Giriş
Mesaj
  • niye async write yapıyorsun bu kadar basit birşey için? fileWriteSync kullan, callback karmaşasından kurtulmuş olursun

    < Bu ileti mini sürüm kullanılarak atıldı >
  • # Bu örnek sadece kelimelerin ilk harfini büyük harf yapmak üzerine, yani dosyaya kaydetmeyi eklemeye gerek yok; o zaman tabi uzun olur.

    # map kullanarak Regex 'siz de çözdüm.

    print join(' ', (map ucfirst, split(' ',$ARGV[0])));

    # map 'e fonksiyon olarak ucfirst ı verdiğinde dizi argümanının elemanlarını UpperCase First olarak map'ler. Orada "map ucfirst, argüman" gösterimi yerine daha klasik olan " map {ucfirst} argüman" gösterimini de kullanabilirsin yani:

    # print join(' ', (map {ucfirst} split(' ',$ARGV[0])));

    # Büyük harfi map 'le yapınca Türkçe karakter sorunu da ortadan kalktı :)
  • quote:

    Orijinalden alıntı: Tuğkan-0153

    # Bu örnek sadece kelimelerin ilk harfini büyük harf yapmak üzerine, yani dosyaya kaydetmeyi eklemeye gerek yok; o zaman tabi uzun olur.

    # map kullanarak Regex 'siz de çözdüm.

    print join(' ', (map ucfirst, split(' ',$ARGV[0])));

    # map 'e fonksiyon olarak ucfirst ı verdiğinde dizi argümanının elemanlarını UpperCase First olarak map'ler. Orada "map ucfirst, argüman" gösterimi yerine daha klasik olan " map {ucfirst} argüman" gösterimini de kullanabilirsin yani:

    # print join(' ', (map {ucfirst} split(' ',$ARGV[0])));

    # Büyük harfi map 'le yapınca Türkçe karakter sorunu da ortadan kalktı :)
    Güzel kombinasyonlar çıktı


    @seyfi84
    Alışkanlık olmuş, senkron pek kullanmıyorum nedense, o halini de yapayım.


    Edit: Noktalı virgül geldiği için tamamiyle tek satır olmuyor, formatlanınca iki satıra geçiyor. Async yapınca tek satır alıyor. Bu yüzden hybrid.

    require('fs').writeFile('./test.txt', 'ali bugün okula gitti'.split(' ').map(x => x.charAt(0).toUpperCase() + x.slice(1,x.length)).reverse().join(' '), (err) => console.log(err ? err : require('fs').readFileSync('./test.txt').toString()));



    < Bu mesaj bu kişi tarafından değiştirildi ElwinVanDyke -- 9 Mayıs 2019; 16:37:31 >
    < Bu ileti mobil sürüm kullanılarak atıldı >




  • #include <conio.h>
    #include <iostream>
    #include <string.h>
    #include <windows.h>

    int main(int argc, char* argv[])
    {
    setlocale(LC_ALL, "turkish");

    string strCumle, strKelime, strTersCumle;

    cout << "Tersten yazılacak cümleyi giriniz:\n\n";
    cin >> strCumle;

    int intCumleninUzunlugu = strCumle.length();
    int intHarfNo = 0;

    goto dongu;

    dongu:
    {
    if (intCumleninUzunlugu == intHarfNo)
    {
    system("cls");

    cout << "Cümlenin tersten yazılmış hali:\n\n" << strTersCumle << "\n\nProgramı kapatmak için klavyenizden bir tuşa basınız...";

    getch();

    return 0;
    }

    else
    {
    if (strCumle.substr(intHarfNo, intCumleninUzunlugu) != " ")
    {
    strKelime = strKelime + strCumle.substr(intHarfNo, intCumleninUzunlugu);

    ++intHarfNo;

    goto dongu;
    }

    else
    {
    strTersCumle = strKelime + " " + strTersCumle;

    ++intHarfNo;

    goto dongu;
    }
    }
    }
    }




  • DrakeMcCain kullanıcısına yanıt
    Cümledeki kelimeleri sadece tersten yazdırma değil, her sözcüğün ilk harfini büyük harf yapıp oluşan cümleyi bir txt dosyasına kaydetmeyi tek bir satırda yapabiliyorken, böyle uzun kodlar biraz kullanışsız değil mi?

    Bir satır derken sadece 105 karakter:

    print $t=join(" ",reverse(map ucfirst,split(" ",$ARGV[0])));open D,">:encoding(UTF-8)","y.txt";print D $t;

    Deneme:

     C'de bir cümleyi tersten kelime kelime yazdırma?
  • Ona kullanışsız demeyelim de şöyle diyelim: Sen belli ki Perl dilini kullanmışsın ki bu bir interpreted dil, ki ben bu tarz dilleri sevmiyorum. Ayrıca uzun uzun kod yazmak beni rahatsız etmiyor ki zaten kodlamayı zevkine yapıyorum.
    Ama yine de görüşüne saygı duyarım.

    Ayrıca başlıkta "C dilinde" denmiş.



    < Bu mesaj bu kişi tarafından değiştirildi DrakeMcCain -- 10 Temmuz 2019; 0:49:19 >
    < Bu ileti mobil sürüm kullanılarak atıldı >
  • DrakeMcCain kullanıcısına yanıt
    quote:

    Ayrıca başlıkta "C dilinde" denmiş.


    Fakat senin kod da C değil ki? Ve C++ ile yazıldığı halde gereksiz uzun hem de hatalı. cin fonksiyonu ile arada boşluklar olan kelimeler girilmez. Kodun kullanışsız olması benim görüşümden cok bir gerçek.
  • En iyi hal
    İki misali de birden vermek.
    Hem uzun olanı hem kısa olanı. 😄
    Uzun yazmayıdı severim. Uzun bir şeyi kısaltmayıda
    Fakat şunu bilirim c++ var olan for döngüsüne basit bir şeyi yaptıramadım.
    olay ne for'un düzgün çalışmaması. (farklı bir proje fakat herkesin işine yarar)
    bu yapınca haber veririm.
    O yüzden ikinizi de başlatan adına teşekkür ederim.



    < Bu mesaj bu kişi tarafından değiştirildi berce -- 10 Temmuz 2019; 7:49:24 >
    < Bu ileti mobil sürüm kullanılarak atıldı >
  • C'yi sadece çok küçük bir kısmında kullanmıştım. <conio.h> headeri ve getch() fonksiyonu C'nin değil mi?
  • DrakeMcCain kullanıcısına yanıt
    C++ koduna bir C başlığı ve fonksiyonu ekleyince o C programı olmaz. Konunun en başındaki 2 koda bakın; onlar C kodu.
  • Her neyse çok da önemli değil, önemli olan kod yazabilmek ve kullandığın dile hakim olmak değil midir?

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • DrakeMcCain kullanıcısına yanıt
    C++ ile yazıyorsam input cümlesini STL'deki vector<string> cumle(10) içine kaydedip kelimeleri tersten yazdırmak için de vector Container'ının metodlarını kullanarak belki 5 satırda bu işlemi yaparım. Senin kod 40 satır. Ve çalışmıyor zaten. Bunun adı dile hakimiyet ise ben de Trump Obama'yım.
  • Ben dile hakimim demedim ki. Benim işim programcılık bile değil. Sadece kendi çapımda öğrenmeye çalışıyorum. Dolayısıyla yazdığım kodların çalışmaması da gayet mümkün. Kaldı ki ben kimseye artistlik de yapmadım veya programlama uzmanıyım falan da demedim.
  • DrakeMcCain kullanıcısına yanıt
    Perl değil, C++ kodu. Comment'ler haric 17 satır ve Türkçe karaktere kadar doğru çalışıyor. Hah böyle birşey göndersen, programlama uzmanıyım dedim, demedim vs. demeye gerek kalmayacaktı.

     C'de bir cümleyi tersten kelime kelime yazdırma?
  • #include <stdio.h>

     #include <string.h>

     #include <conio.h>

     void main()

     {

      const char*bosluk =" ";

      char birsatir[100];

      char* birkelime = NULL;

      char kopya[5][250];

       int i=0;

      printf("bir cumle giriniz : \n");

      gets(birsatir);


      birkelime = strtok(birsatir, bosluk);

      while (birkelime != NULL)

      {

      strcpy(kopya[i], birkelime);

      i++;

      birkelime = strtok(NULL, bosluk);

      }


      for (int j = i; j >= 0; j--)

        printf("%s ",kopya[j]);


      getchar();

     }


    eksiksiz

  • 
Sayfa: önceki 12
Sayfaya Git
Git
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.