↯ Robotik KodlamaTüm projeler

Kararlı sıralanan bilim fuarı sonuçları

Bilim fuarı puanlarını büyükten küçüğe sırala; puanı eşit olan katılımcıların kayıt sırasını koru.

9+ yaş · 45 dakika · Python 3 · deney modeli

İnteraktif atölyede aç →

Neler öğreneceğiz?

Bilim fuarı puanlarını büyükten küçüğe sırala; puanı eşit olan katılımcıların kayıt sırasını koru.
Bu atölyede yalnız sonuca değil, tahmininin neden doğru veya yanlış çıktığına da bak. Bir deney günlüğünde giriş, beklenen sonuç, gözlenen sonuç ve düzeltme olmak üzere dört sütun aç.
Python kodu ölçüm/algoritma modelidir; GPIO pinlerine veya motora komut göndermez. Animasyon ise konuyu gösteren ayrı ve ideal bir modeldir.

Öğrenme hedefleri

  1. Girdi sırasını ve puanları dört karta yaz.
  2. İkinci bir anahtar olarak proje teslim saatini ekle.
Kararlı sıralanan bilim fuarı sonuçları — proje görseli
Özgün kavram ve algoritma çizimi. Yazılım örneğinin akışı resimli rehberde açıklanır; fiziksel devre kurulumu değildir.

Malzeme listesi

  1. Python 3 çalıştırabilen bilgisayar
  2. Kareli kâğıt, kalem ve deney günlüğü

Adım adım yapalım

  1. Girdi sırasını ve puanları dört karta yaz.
  2. 95 ve 90 puanları başa taşı; 80 puanlı kartların kendi sırasını koru.
  3. Negatif anahtarın küçükten büyüğe sıralamada yüksek puanı başa getirdiğini açıkla.
  4. Programı çalıştır ve assert satırının eşitlik kuralını denetlediğini gör.
  5. Bir yeni 80 puanlı kişi ekle; eşit puanlıların sonunda yer aldığını doğrula.
  6. Animasyonda komşu takasını izle; farklı sıralama yöntemlerinin aynı sonuca ulaşabildiğini tartış.

Kod · Python 3 · deney modeli

entries=[("Ada",80),("Efe",95),("Mina",80),("Can",90)]
ranked=sorted(entries,key=lambda item:-item[1])
for place,(name,score) in enumerate(ranked,1):print(place,name,score)
assert ranked[2][0]=="Ada" and ranked[3][0]=="Mina"

Kod nasıl çalışır?

sorted yeni liste üretir ve girdiyi değiştirmez. Kararlılık eşit anahtarların göreli sırasının korunmasıdır.

Beklenen sonuç

Python modelinin çalıştırılan çıktısı (fiziksel ölçüm değildir):
1 Efe 95
2 Can 90
3 Ada 80
4 Mina 80

Sıra sende

İkinci bir anahtar olarak proje teslim saatini ekle.

Güvenli atölye

Bu çalışma düşük gerilimli eğitim içindir. Donanımı enerji kapalıyken, bir yetişkinle kur. Şebeke elektriği kullanma. Kodun derlenmesi fiziksel devrenin test edildiği anlamına gelmez.

Çalışmıyorsa kontrol et

  1. Sonucu alamıyorsan programın ilk satırından başlayıp girdileri tek tek kontrol et.
  2. Donanım varsa enerjiyi ayır; GND, sinyal uçları ve parça yönlerini bağlantı tablosundan doğrula.
  3. Aynı anda yalnız bir şeyi değiştir; değişiklik öncesi ve sonrası sonucu günlüğe yaz.

Kontrol noktaları

  1. Başlamadan önce: gerekli malzemeleri say ve giriş değerlerini deney günlüğüne yaz.
  2. Kurulumdan sonra: her bağlantıyı aşağıdaki tabloyla karşılaştır; yazılım projesinde giriş listesini kontrol et.
  3. Testten sonra: beklenen sonucu kendi çıktınla karşılaştır. Fark varsa ilk farklı adımı bul.

Kaynakların kullanımı

Kaynak, ilgili kavramı öğrenmek ve karşılaştırmak içindir. Türkçe görev, örnek kod ve görseller bu atölye için özgün hazırlanmıştır; kaynak makalenin çevirisi veya kopyası değildir.

Algoritmanın yol haritası
Algoritmanın yol haritası
Deney günlüğü: altı adım
Deney günlüğü: altı adım

https://docs.python.org/3/howto/sorting.html