R1/R2 orani belli ise R1 ve R2 icin yardimci

Başlatan z, 26 Kasım 2020, 17:13:12

M.Salim GÜLLÜCE

Alıntı yapılan: z - 01 Aralık 2020, 18:36:38http://www.mediafire.com/file/cogoiyzwet4gwt9/Kazanc.exe/file
Nihayet programı gördük :)
Direnç tablosu girmek epey problem olmalı.

Delphide yazmışsın sanırım.
Kaynak kodu verebilirmisin bülent kardeş.
Delphi öğrenmeye çalışıyorum...!!
Bana referans olur.

Haa bide dosya okuyup yazmayla ilgili bir kaynak kodun warsa...
Ben beceremedim kaynak da bulamadım. Rica etsem. :) :-*

z

procedure TForm1.Button1Click(SenderTObject);
var
i,n,j,k:integer;

begin
      
try
         
Oran:=StrToFloat(Edit1.text);
      
except
         application
.MessageBox('Incorrect entry','!!!',MB_OK);
         exit;
      
end;


      if 
RadioButton1.Checked then
         begin
            R
[1]:=0.001;
            
R[2]:=0.0012;
            
R[3]:=0.0015;
            
R[4]:=0.0018;
            
R[5]:=0.0022;
            
R[6]:=0.0027;
            
R[7]:=0.0033;
            
R[8]:=0.0039;
            
R[9]:=0.0047;
            
R[10]:=0.0056;
            
R[11]:=0.0068;
            
R[12]:=0.0082;

            
R[13]:=0.01;
            
R[14]:=0.012;
            
R[15]:=0.015;
            
R[16]:=0.018;
            
R[17]:=0.022;
            
R[18]:=0.027;
            
R[19]:=0.033;
            
R[20]:=0.039;
            
R[21]:=0.047;
            
R[22]:=0.056;
            
R[23]:=0.068;
            
R[24]:=0.082;

            
R[25]:=0.1;
            
R[26]:=0.12;
            
R[27]:=0.15;
            
R[28]:=0.18;
            
R[29]:=0.22;
            
R[30]:=0.27;
            
R[31]:=0.33;
            
R[32]:=0.39;
            
R[33]:=0.47;
            
R[34]:=0.56;
            
R[35]:=0.68;
            
R[36]:=0.82;

            
R[37]:=1;
            
R[38]:=1.2;
            
R[39]:=1.5;
            
R[40]:=1.8;
            
R[41]:=2.2;
            
R[42]:=2.7;
            
R[43]:=3.3;
            
R[44]:=3.9;
            
R[45]:=4.7;
            
R[46]:=5.6;
            
R[47]:=6.8;
            
R[48]:=8.2;

            
R[49]:=10;
            
R[50]:=12;
            
R[51]:=15;
            
R[52]:=18;
            
R[53]:=22;
            
R[54]:=27;
            
R[55]:=33;
            
R[56]:=39;
            
R[57]:=47;
            
R[58]:=56;
            
R[59]:=68;
            
R[60]:=82;

            
R[61]:=100;
            
R[62]:=120;
            
R[63]:=150;
            
R[64]:=180;
            
R[65]:=220;
            
R[66]:=270;
            
R[67]:=330;
            
R[68]:=390;
            
R[69]:=470;
            
R[70]:=560;
            
R[71]:=680;
            
R[72]:=820;

            
n:=72;
         
end
      
else
         
begin
            R
[1]:=0.001;
            
R[2]:=0.011;
            
R[3]:=0.0012;
            
R[4]:=0.0013;
            
R[5]:=0.0015;
            
R[6]:=0.0016;
            
R[7]:=0.0018;
            
R[8]:=0.002;
            
R[9]:=0.0022;
            
R[10]:=0.0024;
            
R[11]:=0.0027;
            
R[12]:=0.003;
            
R[13]:=0.0033;
            
R[14]:=0.0036;
            
R[15]:=0.0039;
            
R[16]:=0.0043;
            
R[17]:=0.0047;
            
R[18]:=0.0051;
            
R[19]:=0.0056;
            
R[20]:=0.0062;
            
R[21]:=0.0068;
            
R[22]:=0.0075;
            
R[23]:=0.0082;
            
R[24]:=0.0091;

            
R[25]:=0.01;
            
R[26]:=0.011;
            
R[27]:=0.012;
            
R[28]:=0.013;
            
R[29]:=0.015;
            
R[30]:=0.016;
            
R[31]:=0.018;
            
R[32]:=0.02;
            
R[33]:=0.022;
            
R[34]:=0.024;
            
R[35]:=0.027;
            
R[36]:=0.03;
            
R[37]:=0.033;
            
R[38]:=0.036;
            
R[39]:=0.039;
            
R[40]:=0.043;
            
R[41]:=0.047;
            
R[42]:=0.051;
            
R[43]:=0.056;
            
R[44]:=0.062;
            
R[45]:=0.068;
            
R[46]:=0.075;
            
R[47]:=0.082;
            
R[48]:=0.091;


            
R[49]:=0.01;
            
R[50]:=0.011;
            
R[51]:=0.012;
            
R[52]:=0.013;
            
R[53]:=0.015;
            
R[54]:=0.016;
            
R[55]:=0.018;
            
R[56]:=0.02;
            
R[57]:=0.022;
            
R[58]:=0.024;
            
R[59]:=0.027;
            
R[60]:=0.03;
            
R[61]:=0.033;
            
R[62]:=0.036;
            
R[63]:=0.039;
            
R[64]:=0.043;
            
R[65]:=0.047;
            
R[66]:=0.051;
            
R[67]:=0.056;
            
R[68]:=0.062;
            
R[69]:=0.068;
            
R[70]:=0.075;
            
R[71]:=0.082;
            
R[72]:=0.091;

            
R[73]:=1;
            
R[74]:=1.1;
            
R[75]:=1.2;
            
R[76]:=1.3;
            
R[77]:=1.5;
            
R[78]:=1.6;
            
R[79]:=1.8;
            
R[80]:=2;
            
R[81]:=2.2;
            
R[82]:=2.4;
            
R[83]:=2.7;
            
R[84]:=3;
            
R[85]:=3.3;
            
R[86]:=3.6;
            
R[87]:=3.9;
            
R[88]:=4.3;
            
R[89]:=4.7;
            
R[90]:=5.1;
            
R[91]:=5.6;
            
R[92]:=6.2;
            
R[93]:=6.8;
            
R[94]:=7.5;
            
R[95]:=8.2;
            
R[96]:=9.1;

            
R[97]:=10;
            
R[98]:=11;
            
R[99]:=12;
            
R[100]:=13;
            
R[101]:=15;
            
R[102]:=16;
            
R[103]:=18;
            
R[104]:=20;
            
R[105]:=22;
            
R[106]:=24;
            
R[107]:=27;
            
R[108]:=30;
            
R[109]:=33;
            
R[110]:=36;
            
R[111]:=39;
            
R[112]:=43;
            
R[113]:=47;
            
R[114]:=51;
            
R[115]:=56;
            
R[116]:=62;
            
R[117]:=68;
            
R[118]:=75;
            
R[119]:=82;
            
R[120]:=91;

            
R[121]:=100;
            
R[122]:=110;
            
R[123]:=120;
            
R[124]:=130;
            
R[125]:=150;
            
R[126]:=160;
            
R[127]:=180;
            
R[128]:=200;
            
R[129]:=220;
            
R[130]:=240;
            
R[131]:=270;
            
R[132]:=300;
            
R[133]:=330;
            
R[134]:=360;
            
R[135]:=390;
            
R[136]:=430;
            
R[137]:=470;
            
R[138]:=510;
            
R[139]:=560;
            
R[140]:=620;
            
R[141]:=680;
            
R[142]:=750;
            
R[143]:=820;
            
R[144]:=910;

            
n:=144;
         
end;

      
Err:=1E9;
      
Memo1.text:='';
      for 
i:=1 to n do
        for 
j:=1 to n do
          
begin
            Hesaplanan
:=R[i]/R[j];
            if 
abs(Oran-Hesaplanan)<=Err then
                begin
                  
if abs(Oran-Hesaplanan)<0.1 then   // Bu kriteri istedigin sekilde degistirebilirsin
                    
begin
                      Err
:=abs(Oran-(Hesaplanan));
                      
Memo1.Lines.add(format('A %4.4f',[R[i]]));
                      
Memo1.Lines.add(format('B %4.4f',[R[j]]));
                      
Memo1.Lines.add(format('A/B %4.4f',[Hesaplanan]));
                      
Memo1.Lines.add('');
                    
end;
                
end;
            
end;


end;
Bana e^st de diyebilirsiniz.   www.cncdesigner.com  https://www.facebook.com/pages/Cnc-Designer/337826782908966

BT

Geribildirimde bulunayım. Emeğinize sağlık öncelikle.

Küsuratlı oranlarda bende çalışmadı.
A/B = 8 dedim ve sonuç olarak şunlar çıktı:

A 1,2000
B 0,1500
A/B 8,0000

A 12,0000
B 1,5000
A/B 8,0000

A 120,0000
B 15,0000
A/B 8,0000

Bu bol sıfırlar kafa karıştırıcı

Mesela A/B = 142 dedim. Yine sonuç göstermedi.

M.Salim GÜLLÜCE

Alıntı yapılan: BT - 02 Aralık 2020, 10:27:40Geribildirimde bulunayım. Emeğinize sağlık öncelikle.

Küsuratlı oranlarda bende çalışmadı.
A/B = 8 dedim ve sonuç olarak şunlar çıktı:

A 1,2000
B 0,1500
A/B 8,0000

A 12,0000
B 1,5000
A/B 8,0000

A 120,0000
B 15,0000
A/B 8,0000

Bu bol sıfırlar kafa karıştırıcı

Mesela A/B = 142 dedim. Yine sonuç göstermedi.
nokta değil virgülle ayırman gerek küsüratı.
Birde scroll bar olsa fena olmazdı tabii.
Ben becerebilsem eklerim.
Henüz çok acemiyim.

z

04 Aralık 2020, 07:58:50 #34 Son düzenlenme: 04 Aralık 2020, 08:25:39 z
Programin asagidaki satirinda

if abs(Oran-Hesaplanan)<0.1 then   // Bu kriteri istedigin sekilde degistirebilirsin

Verilen oran ile iki direncin orani arasindaki fark 0.1 den kucuk olamiyorsa bu orani veren direncler yok mantigiyla herhangi bir sonuc cikmiyor.

Delphi'nin format komutunda float degiskenleri basarken gereksiz/anlamsiz sifirlari gosterme secenegi var mi bilmiyorum. Arastirayim.

Tesekkurler.






Bana e^st de diyebilirsiniz.   www.cncdesigner.com  https://www.facebook.com/pages/Cnc-Designer/337826782908966

Yasal Uyarı: Picproje.org sitemizde 5651 sayılı kanunun 8. maddesine ve T.C.Knın 125. maddesine göre tüm üyelerimiz yaptıkları paylaşımlardan kendileri sorumludur. Picproje.org hakkında yapılacak tüm hukuksal şikayetleri İletişim sayfamızdan bize bildirdikten en geç 3 (üç) iş günü içerisinde ilgili kanunlar ve yönetmelikler çerçevesinde tarafımızca incelenerek gereken işlemler yapılacak ve site yöneticilerimiz tarafından bilgi verilecektir.