Rastgele oluşturulan listede tekrarlanan ardışık sayıların yeni bir listede tutulması

merhabalar problem başlıktada belirttiğim gibi belkide basit bir algoritma sorusu ama şimdilik becerilerim bunu karşılayamıyor. Ekleyemediğim kısım sayıların ardışık olması durumu

list1=[1,1,3,3,6,6,4,4,5,5,55,55,77,888,888,77]
list2=[]

for i in list1:
    tekrarlanan=list1.count(i)
    
    if tekrarlanan == 2 and i not in list2:
        list2.append(i)
    else:
        pass

Merhaba.

Almak istediğiniz sonuç bu mu? :

[1, 3, 4, 5, 6, 77, 55, 888]

Ve list1'de sadece bir tane bulunan sayıları list2'de istemiyoruz, doğru mu?

hayır sadece ardışık olan sayılar, yani

list2=[3,4,5,6]

1'ler de ardışık?

1 ardışık ve tekrarlı olmayan sayıların çıktısını istiyorum evet

Ben sorunu tam anlamadığım, 1 var mı yok mu? 1 yoksa niçin yok? 1 varsa 55 neden yok?

Bir liste tanımlayarak içerisine rasgele sayılar koyunuz. Daha sonra listenin içerisindeki
ardışık tekrarlı elemanları yeni bir listeye koyunuz.
Örnek girdi:
[ 1,6,3,4,4,2,5,5,7]
Örnek Çıktı
[ 4,5]

Şu kodu inceleyin:

girdi = [ 1,6,3,4,4,2,5,5,7]
çıktı = []

index = 0
while index < len(girdi)-1:
    e = girdi[index]
    if e == girdi[index + 1]:
        if e not in çıktı:
            çıktı.append(e)
        index += 2
    else:
        index += 1

print(çıktı)

1 Beğeni

tamam, teşekkür ederim