Yükleniyor, lütfen bekleyiniz!
20 Ocak 2009
yazan: basicer

3 farklı kdv oranı ve 4 adet matrah bulma google ara
Facebookta paylaş

Bir muhasebeci olarak zaman zaman karşılaştığım bir sorunu program haline getirip , bu sorunla karşılaştığımda sorunuma kısa sürede cevap bulmak için bir girişimde bulundum ama içinden çıkamadım .. Matematik bilgisi kuvvetli olan kişilerden yardım talebinde bulunmaya karar verdim. Yardımcı olursanız mutlu olurum. Bunda , en son matematik dersi gördüğümden bu yana 16 yıl gibi bi süre geçmiş olmasının etkisi büyük tabi ki .

Sorunum şu : Bazen mükelleflerden aldığım fatura bilgileri yetersiz oluyor , veya onlar eksik bilgi veriyor .. Bir faturada %0 , %1 , %8 ve %18 oranlara tabi Katma değer vergisi olabiliyor .. Elimde ise sadece , Kdv uygulanacak toplam matrah tutarı bilgisi ve toplam hesap edilmiş kdv bilgisi bulunuyor ..
Bu bağlamda biraz çabaladım şu aşamaya geldim ;
x1 + x2 + x3 + x4 = 55 (Bilinen Toplam Matrah Tutarı)
0 + 0,01*x2 + 0,08*x3 + 0,18*x4 = 2,15 (Bilinen Toplam Kdv Tutarı)
x1 + x2+0,01*x2 + x3+0,08*x3 + x4+0,18*x4= 57,15 (Fatura Genel Toplam Tutarı)
( x1 'i %0 kdv oranına tabi satış ,
x2' yi %1 kdv oranına tabi satış ,
x3' ü %8 kdv oranına tabi satış ,
x4' ü %18 kdv oranına tabi satış , olarak düşündüm ..)
Bu şekilde , kendimce 3 adet denklem kurmaya çalıştım ki ; bununla yoketme yöntemini kullanarak tek bilinmeyenli bir denklem elde edebilmeyi ümit ettim .. Ama belirli bir noktaya geliyorum tıkanıyorum ..
Elimde yine aynı sayıda , yani sadeleştirilmiş bir şekilde 3 ya da 4 bilinmeyenli tek bir denklem kalıyor .. Nasıl yaparım nasıl ederim nerelere giderim :) Yardımcı olursanız sevinirim . Mutlu yarınlar.. Süper güce sahip bir ülke olabilmek dileklerimle..

gereksizyorumcu | 1 Ağustos 2010 20:25 | Yazar
avatar
bgultekin06 hocamıza tamamen katılmakla beraber bilgisayar uzmanının bu konuda yapacağı birşey olmadığını üzülerek söylemeliyim. Lineer bağımsız denklem sayınız değişken sayısından fazlaysa çözüm varsa sonsuz tane çözüm vardır.

Bu tür denklemleri bir lineer optimizasyon programıyla en basitinden excel solver yardımıyla çözdürebilirsiniz. Tabiki denklem sayınız bilinmeyen sayınızdan fazla olduğunda tek bir çözüm bulmayacaktır ama kısıtlamaları ayarlarsanız işinize yarayacak çözümler bulacaktır.

örnek vermek gerekirse ne bileyim x1 in 100 den büyük olduğunu biliyorsunuzdur bunu solverda constraint kısmına x1>100 olarak yazdığınızda çözüm kümenizde büyük bir sadeleştirme yapacaktır vs vs vs.

işiniz zor Allah kolaylık versin.
 
   
hakanahmet_19 | 4 Eylül 2009 15:23 | Üye
avatar

ayrı ayrı değerleri bulabilmek için bilinmeyen sayısı kadar denklem gereklidir. benim pek muhasebe bilgim yok matrah falan nedir bilmem o yuzden pek yardımcı olamayacağım :(

   
basicer | 21 Ocak 2009 12:03 | Üye
avatar
Teşekkürler hocam.. yan komuşm bilgisayar programcısı idi .. ona bi soriim bari :) yalnız burda ihtiyacım olan şey formül .. bunu programcık haline getirmeyi becerebilirim .. kendim de de birazcık programcılık var .. 
   
bgultekin06 | 20 Ocak 2009 20:08 | Üye
avatar
İşte demek istediğim bu. 2 bilinmeyen için 2 denklemin olduğunda hesaplatabiliyorsun. Evet o saydığın konularla kısmen ilişkisi var diyebilirim. Bilinmeyen sayısı ile denklem sayısı eğer eşitse tek bir çözüm vardır. Mesela;

x+2y=5 denkleminin çözümü yine sonsuzdur.Çünkü bilinmeyen 2 ve denklem 1 dir. Çözümü de y=k dersek x=5-2k olur. Yani (x,y)=(5-2k,k) olduğundan k nın sonsuz değeri için bu ikililer de sonsuz olur.

Gelelim senin 4 lü programına. 2 li programı yaptığını söylüyorsun, çünkü bilgisayara yeterli veri (2 denklem) girdiğin için hesaplayabiliyor. 4 lüde ise program sonsuz sayıda çözüm üreteceğinden olur mu? Ama verileri sabit tutman gerekir. O yüzden zor gözüküyor. Ama bunu da bir bilgisayar uzmanına sormak gerekir.

Benim mantığıma göre bilinmeyenleri bazılarını sabitler miyiz? zor gibi. Ama dediğim gibi bir bilg. cıya göstermen gerekir.

istersen ben bir arkadaşıma soruyum. Yardımcı olmaya yine çalışırım.Kolay gelsin
   
basicer | 20 Ocak 2009 19:01 | Üye
avatar

Tekrar teşekkür ederek ; Sadece bu sorunun çözümü yeterli değil benim için Hocam , bunun gibi sonsuz sayıda işlemleri zaman içerisinde yeri geldikçe halletmem gerekiyor .. Bunun içinde minik bir program uygulaması yapmayı düşünüyorum .. İki bilinmeyenli bir denklem içeren uygulamayı yaptıım onda başarılı oldum .. içerisinde %8  ve %18   kdv olan faturanın oranlara göre dağılımını buldum ve bunu minik bir programcık haline getirdim .. Bu sayede toplam matrahı ve toplam kdv yi yazıp hesapla butonuna bastığım zaman , %18 e tabi matrahı ve onun kdv sini ,  %8 e tabi matrahı ve onun kdv sini hesaplattırıyorum .. Bu çok işime yarıyor .. Ama bu defa faturanın içerisinde sadece %8 ve %18   değil , buna ilave olarak %1  kdv oranına tabi matrah bulunması halinde , bir de buna ilave olarak kdv uygulanmayan (sigara satışı v.b.) %0  orana tabi matrah bulunması halinde matrahları ve kdvleri bulma konusunda takıldım .. Yukarda bahsettiğim iki bilinmeyenli uygulamam şu şekilde : 
      0,08*Matrah8 + (ToplamMatrah - Matrah8) * 0,18  = ToplamKdv
veya :   0,08*x     + (55-x)*0,18                                  = 2,15 
   (Burda 55 [Toplammatrah] ile 2,15 [ToplamKdv] bilgisi bize veriliyor , farklı farklı bir şekilde her zaman verilecek ...)


ToplamKdv biliniyor , ToplamMatrah ta biliniyor .. Matrah8 ve matrah18 bulunacak ...   ToplamKdv ve ToplamMatrah   bilgisi , ilgili kutucuğa ,kullanıcı tarafından veri girişi olarak sunuluyor , hesapla butonuna basıldığında matrah8  ve matrah18   hesaplanıyor  ve sonuçlar gösteriliyor ...
  Matris , burda işe yarar mı ?
  Bir de , bilinmeyen sayısı ile denklem sayısının eşit olması kural mı ?
  Gauss, gramer yöntemi gibi kavramlarla direkt ilgisi var sanırsam bunun !?


Sonuç : Birbaşka yaklaşım
     a+b+c+d  = BirSayı   -------> Veri olarak bize sağlanan bir Sayı.. 
    a  yı %0  ile ,  b yi   %1  ile , c yi   %8  ile , d  yi   %18  ile çarpıp , bu çarpımların toplamı da veri olarak sağlanıyor. bu durumda iki adet denklem ortaya çıkıyor : 
    a        + b +         c +         d = Veri1     '(matrahlar toplamı..)
        0,01*b + 0,08*c + 0,18*d = Veri2      '(kdvler toplamı..)
   
bgultekin06 | 20 Ocak 2009 18:26 | Üye
avatar
Evet, Önemli değil. Sizden gelen her türlü soruya vaktim ve bilgim el verdiğince çözüm bulmaya çalışacağım.
   
basicer | 20 Ocak 2009 18:19 | Üye
avatar
Sayın bgultekin06 .. size hocam demek istiyorum .. çünki matematik bilginiz sizin , matematik öğretmenliği yaptığınız izlenimi uyandırdı bende... Hocam , yorum göndermişiniz çok sağolun varolun zaman harcamışınız benim için .. değerli vaktinizi benim bu sorum ile harcadığınız için minnettarım ... verdiğiniz yanıtı irdelemekteyim .. birazdan görüşmek dileğiyle ..
   
bgultekin06 | 20 Ocak 2009 17:56 | Üye
avatar
Sayın basicer, problemini anlamaya çalıştım. ama bir kere sendeki denklem sayısı 2 dir. 3.yü ilk iki denklemi taraf tarafa toplayarak bulmuşsun. Yani böyle bir çok bulunabilir. Bizim işimize yarayacak olan ilk iki denklem. Yani 4 bilinmeyen var. 2 denklem var. Bilinmeyen ve denklem sayıları eşit olmadığından x1 x2 x3 ve x4 ün tek bir çözümü yoktur.

Mesela bir iki çözümünü vereyim.

2. denklemi 100 ile genişletirsek x2+8.x3+18.x4=215 elde ederiz. burada x4=10 x3=4 ve x2=3 diyebiliriz. 1. denklemden de yararlandığımızda x1=55-17=28 bulunur. Yani bu değerlerden sonsuz tane bulabiliriz ve bunlar her iki denklemi de sağlar.

Sen x1, x2, x3 ve x4 arasında başka bir ilişki verirsen (Birbirinin kaç katı olmalı vb.gibi) ozaman tek çözüme indirgeyebiliriz.

Eğer sana herhangi bir çözüm yeterli ise verdiğim 2.denklemden x2,x3,x4 değerlerini ve toplamı 55 olduğundan x1 değerini bularak uydurabilirsin.

umarım faydam olmuştur, başarılar...
   

Zorunlu

Zorunlu