soylediginiz dogru ,
programın algoritması soyle calısıyor ;
girilen degerlerin en kucugunu bulup onu baz bir deger olarak alıyoruz , daha sonra bu degeri butun girdiginiz degerlerden cıkartıyoruz , sonra her ornek grubundaki degerlere bakıyoruz , ayarladıgımız tolerans degerine gore uc deger bir birine yakınsa bunu trıfaz , eger iki deger yakınsa iki faz , eger ucude bir birinden farklı ise mono faz olarak seciyoruz , daha sonra secilen trifaz , iki faz ve mono faz degerlerini kullanım surelerinide goz onune alarak guc ve zaman carpımının buyuklugune gore yukardan asagıya sıralıyoruz , daha sonra bu trıfaz ikifaz ve mono faz gruplarını tolerans degerine gore yeniden gozden geciriyor bir birine yakınlıgı tolerans aralıgında olanları birlestiriyoruz . bu sekilde optimum bir cozum bulmaya calısıyoruz ,
girilen bir iki deger için alternatif daha iyi cozumler bulabilirsiniz ,
ama ornek sayısı arttıkca algoritmanın işlevselligi artmakta ve kullanıcının cok zorlanacagı optimum cozumleri cok daha etkili bir bicimde hesaplamakta ,
programı yazarken suphesiz baska algoritmalarda kullanılabilirdi ama biz bize en dogru gelenin bu oldugunu dusunduk , aslında bu programı MCU nun icinede koymayı dusunmustuk ama işlemcinin program hafızası yetmedigi için mecburen vaz gectik , belki ilerde 24 serisi ile bunu yapabiliriz ama suan için elimizden bukadar geldi