Alıntı (erdem):
>
> ...
> // burada bir hata var!
> for (int i = 0; i != sayilar.length; ++i) {
> writeln(sayilar);
> cikarilacak = konum[i];
> sayilar = remove(sayilar, cikarilacak);
> }
> ...
> ```
>
Erdem, benim sorunun açıklamasından anladığım kadarıyla direk olarak ilgili konumdaki elemanı kaldırma söz konusu değil sanki bir azaltma var gibi örneğin 5, 4 olmuş 15, 14 olmuş diye düşünüyorum ama yani tam olarak anlamadığım için emin değilim.
Tuhaf array modülünde bir remove metodu yok (Bir açıklaması vardır elbet :)) Belkide bu remove metodunuda biz yazmalıyız. Şöyle basit bir deneme yapıyorum, yine kaba ve çok daha iyisi yapılabilir, ben sadece D'nin olanaklarından faydalanarak bir şeyler yazmaya çalışıyorum.
import std.stdio;
void main()
{
int[] test = [1, 2, 3, 4, 5, 6, 7, 8, 9];
writeln(test);
test = KonumdakiElemaniKaldir(test, 2);
writeln(test);
test = KonumdakiElemaniKaldir(test, 5);
writeln(test);
}
int[] KonumdakiElemaniKaldir(int[] dizi, int konum)
{
return (dizi[0 .. konum] ~ dizi[konum + 1 .. $]);
}
Alıntı (Salih Dinçer):
>
> Bu başlık şuradan türemişti: http://ddili.org/forum/thread/719
>
> Orada switch ve bir dizi OR'lu if örneği verilmişti:
>
Ordaki konu daha çok karşılaştırma işlemin arka plandaki çalışması ile ilgiliydi. Buradaki durum ise bir dizi ile liste arasındaki çalışmayı kıyaslamayı amaçlıyor gibi geldi bana. Aslında her şekilde buradaki bu küçük soru önemli bir seçimin anahtarı, basit gibi görünen önemli bir sorunun cevabını buradaki çözüm bize açıklayabilir. Dizi mi, liste mi?
--
[ Bu gönderi, <http://ddili.org/forum>'dan dönüştürülmüştür. ]