Durumu netleştirmek açısından soruyorum :(
 
1) 30 nolu dişli 15 numarada iken 40 nolu dişliye geçmeden arada 70 nolu grubun 
dişlileri mi devreye alınıyor ?
Kamyon/tırlardaki (özellikle büyük tonajlı dorse taşıyon kamyon/tır) Vites gibi 
mi?
30 -> 15 de  arkasından 70 sırayla 25 - 30 - 35 - 40 -45 -50 diyecek  sonra ana 
dişli gurubu 40 a geçecek şekilde mi ?
 
Yoksa 30 nolu Ana Dişli 15 de iken 70 nolu ana dişili de 25 de devreye giriyor ?
Arabalardaki vites gibi mi ?
Araba X yükte iken 30 nolu dişili de 15 var ise; bir üst vites teki dişli 
otomatik olarak 70 in 15 i mi ?

 
2) Şanzıman dişli gurubunda Diş Sayısı Sıfır(0) olarak belirtilen en az / en 
fazla ana dişli sayısı nedir? (bir veya 2 mi yoksa 2 den fazla mı ?)
 
 



Date: Thu, 20 Oct 2011 21:05:32 +0300
From: [email protected]
To: [email protected]
Subject: [Linux-programlama] Algoritma ihtiyacı?


Merhabalar,
Python ve Qt kullanarak, şanzıman iletim hesabında kullanılacak bir program 
yazıyorum. Belli dişlilerden hareket aktarılıyor. Ancak duruma göre dişliler 
farklı yedek dişliler ile değiştirilebiliyor. tek olarak hesaplamada sorun yok 
ama bu değişkenlerin tamamını da hesaplarken ortaya çıkacak kkombinasyonların 
içinden çıkamadım.

İki adet tablom var. Birinci tabloda dişli diş sayıları ve ikinci tabloda da 
değişken dişlilerin diş sayıları var. İşin tuhafı değişken olabilecek 
dişlilerin sayısı ve hangi dişli grubuna takılabilecekleri kesin değil. 
Yazacağımız algoritma her durumda çalışmlalı. Tablolar şöyle:

Ana Dişli Tablosu





Sıra No

Diş Sayısı


10

15


20

22


30

0


40

10


50

12


60

18


70

0


80

21


90

50

Yukarıda görüldüğü gibi dişlilerinbulunduğu bir şanzıman düşünün. Ancak "0" 
(Sıfır) ile belirtilen yerlere değişken dişliler takılabiliyor. Değişken 
Dişliler tablosu da şöyle:





Kaynak Sıra No

Grup Diş Sayısı


30

15


30

20


30

25


70

25


70

30


70
35


70
40


70
45


70
50

30 sıra numarası ile gele dişliler sıra ile takıldığında bundan sonra gelen 70 
numaralı dişli grupları da sıra ile takılmalıdır. Kombinasyona göre mesela 30. 
dişli her değişmesinde 70 sıra numaralı gruplar da değişmelidir. Yani 30. grup 
bir kere değişdiğinde 70. grup sıra ile değişmeli ve 70. grupda son dişliye 
ulaştığında 30. dişli grubu ikinci dişlisine geçmelidir. Böyle bir akış ile tüm 
dişli gruplarının en az bir kere yazıldığı bir sıralamanın oluşması gerekiyor. 
Şanzımandaki grup dişliler her zamanaynı olmayabilir. yerleri ve grup sayıları 
değişebilir. Yani "0" (sıfır) ile ifade edlen grup birden fazla ve herhangi bir 
adımda olabilir.


Çıkamadım içinden... Her türlü öneriye açığım. Merak eden arkadaşlara yaptığım 
kodu ve veritabanını da gönderebilirim... Program sorunsuz olarak tek hesaplama 
yapıyor. Yani "grupdaki şu dişliyi kullanacaksın" dediğinde sorunsuz 
hesaplıyor. Ama kombinasyon ile tüm dişilileri sıra ile hesapla dediğimizde 
içinden çıkamadım... :(




-- 
Kolay gelsin,
Mucip:)
_______________________________________________ Linux-programlama mailing list 
[email protected] 
https://liste.linux.org.tr/mailman/listinfo/linux-programlama Liste kurallari: 
http://liste.linux.org.tr/kurallar.php                                         
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap