 s ve t dizileri verildiğinde, s'de t dizisi varsa en soldaki oluşumu kaldırın. s'de hiç t kalmayana kadar bunu tekrar tekrar yapın. C++ ile yaz.
İşte C++'da, string t'nin en soldaki oluşumunu başka tekrar kalmayana kadar kaldıran bir örnek kod: ``` #include <iostream> #include <string> using namespace std; int ana() { dizi s, t; size_t konum; // s ve t'yi girin cout << "s dizisini girin: "; getline(cin, s); cout << "t dizisini girin: "; getline(cin, t); // varken t'nin en soldaki yerini kaldır while ((pos = s.find(t)) != string::npos) { s.erase(pos, t.length()); } // çıkan dizge cout << "Sonuç: " << s << endl; 0 dönüşü; } ``` Bu kodda, önce `s` ve `t` giriş dizilerini `getline` kullanarak okuyoruz. Ardından, 'string::find' ve 'string::erase' işlevlerini kullanarak 's'deki en soldaki 't' oluşumunu kaldırmak için bir 'while' döngüsü kullanırız. "string::find" işlevi, "t"nin "s"deki ilk geçtiği konumu veya bulunmazsa "string::npos" konumunu döndürür. "string::erase" işlevi, verilen konumdan başlayarak verilen uzunlukta bir alt dizeyi "s"den kaldırır. "s" içinde "t" hiç geçene kadar bunu yapmaya devam ediyoruz. Son olarak, "cout" kullanarak ortaya çıkan dizgenin çıktısını alıyoruz.