Uygulamayı indirin
Bir klasör seçin ve düzenlemeden önce ilgili dosyaları okumasını asistandan isteyin. Görevin hedefini ve sınırlarını belirleyin.
Sonlu sınırlı girdilerle skaler üstel azalmayı en fazla 1000 klasik Runge–Kutta adımıyla bütünleyin. Sıfır adımı ve sıfır oranı sınayın; negatif oranı veya zaman adımını ve çarpımlarının biri aşmasını reddedin.
Bir klasör seçin ve düzenlemeden önce ilgili dosyaları okumasını asistandan isteyin. Görevin hedefini ve sınırlarını belirleyin.
Uyumlu bir endpoint seçin. Kullanılabilir araçlar ve yanıt kalitesi, yapılandırılan modele ve sunucuya bağlıdır.
Değişiklikleri ve komut çıktılarını inceleyin. Sonucu kabul etmeden önce proje kontrollerini çalıştırın; üretilen kod otomatik olarak test edilmiş değildir.
Gerçek davranışı beklenen sonuçla karşılaştırın. Bir kontrol başarısız olursa yeni değişikliklerden önce nedenini araştırın.
def decay_steps(initial, rate, dt, steps):
if any(type(v) not in (int, float) for v in (initial, rate, dt)):
raise ValueError("decay.numeric")
if not -10**6 <= initial <= 10**6 or not 0 <= rate <= 1000 or not 0 <= dt <= 1 or rate * dt > 1:
raise ValueError("decay.range")
if type(steps) is not int or not 0 <= steps <= 1000:
raise ValueError("decay.steps")
y = float(initial)
for _ in range(steps):
k1 = -rate * y
k2 = -rate * (y + dt*k1/2)
k3 = -rate * (y + dt*k2/2)
k4 = -rate * (y + dt*k3)
y += dt*(k1 + 2*k2 + 2*k3 + k4)/6
return yUygulamadan önce inceleyin. Değişiklikleri ve komut çıktılarını inceleyin. Sonucu kabul etmeden önce proje kontrollerini çalıştırın; üretilen kod otomatik olarak test edilmiş değildir.