[Çözüldü] Gelir vergisine göre uygulama yazma

Başlatan Çağrı07, 17 Temmuz 2018 - 23:54:12

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Çağrı07

Herkese merhabalar; iyi forumlar. Cuma günü sınavım var ve uygulama ödevleri yapıyoruz. Bir soruyla karşılaştım ama ne yapmam gerektiğini anlayamadım; Lütfen yardımcı olur musunuz?


(Soru)  ; Gelir vergisinin aşağıdaki kurallara göre hesaplandığını varsayalım; Geliri<= 150.000 ise vergi oranı %25 Geliri<= 300.000 ise vergi oranı %30 Geliri<= 600.000 ise vergi oranı %35 Geliri<= 1.200.000 ise vergi oranı %40 Geliri> 1.200.000 ise vergi oranı %50

Soru çözüldü;
https://paste.ofcode.org/36nDquVGxtWeDUE5neHvKxr
Yaşlanıyorum...

.py

Alıntı yapılan: Çağrı07 - 17 Temmuz 2018 - 23:54:12
(Soru)  ; Gelir vergisinin aşağıdaki kurallara göre hesaplandığını varsayalım; Geliri<= 150.000 ise vergi oranı %25 Geliri<= 300.000 ise vergi oranı %30 Geliri<= 600.000 ise vergi oranı %35 Geliri<= 1.200.000 ise vergi oranı %40 Geliri> 1.200.000 ise vergi oranı %50

Vatandaşın gelirine göre (maaş) maaşından vergi alıyorsun mesela benim gelirim 150.000 in altında benden vergi olarak bu paranın %25 ini almalısın. Ben böyle analadım.

Dagiztanli08

kardeşim ilk başta vergisini al input ile işte deki eğer vergi eşitse 20000 e sayının %30 unu alıp verginin kaç olduğunu bastır bu kadar .

.py

soruda mantık hatası var bende şimdi anladım :) eğer gelirim 100.00 ise bütün koşullar sağlanıyor nasıl olacak ?
https://discord.gg/zs97x2

Dagiztanli08

arkadaşlar şöyle bir şey yapabilirsiniz işte eğer geliriniz 1000 tl ise %1 şeklinde ayarlayabilirsiniz yani algoritmasını çıkarmadan iş yapmak saçma algoritmasını çıkarmak gerek.

.py

En mantılısı şu şekilde:

https://github.com/globalaplication/gelirvergisi/blob/master/main.py

küçük eşit yerine <-> büyük eşit olmalı [mention=639921]@Çağrı07[/mention]  bir örnek yaptım bak bakalım işine yarayacak mı? https://discord.gg/zs97x2 gruba gelirseniz daha fazla yardımcı olabilir. Grupta yazilimdunyasi ismini kullanıyorum.

https://repl.it/@YazilimDunyasi/gelirvergisi


Çağrı07

#6
Alıntı yapılan: Dagiztanli08 - 18 Temmuz 2018 - 00:13:50
kardeşim ilk başta vergisini al input ile işte deki eğer vergi eşitse 20000 e sayının %30 unu alıp verginin kaç olduğunu bastır bu kadar .
Hocam vergi sistemi o şekilde işlemiyor. Eğer soruya göre bir vergi yapılandırması yapılacaksa dediğiniz gibi input fonksiyonu ile geliri öğrenmek ve gelirin miktarına göre  hangi if bagıntısına göre uygun olduğuna bakıp daha sonra da; ondan önceki olan if bagıntılarına göre üstüne ekleme yapmak gerekiyor.


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 18 Temmuz 2018 - 11:14:01

Alıntı yapılan: .py - 18 Temmuz 2018 - 01:48:18
En mantılısı şu şekilde:

https://github.com/globalaplication/gelirvergisi/blob/master/main.py

küçük eşit yerine <-> büyük eşit olmalı [mention=639921]@Çağrı07[/mention]  bir örnek yaptım bak bakalım işine yarayacak mı? https://discord.gg/zs97x2 gruba gelirseniz daha fazla yardımcı olabilir. Grupta yazilimdunyasi ismini kullanıyorum.

https://repl.it/@YazilimDunyasi/gelirvergisi

Sizin yazdığınızı anlayamadım hocam ama ben bugün bu sorunun mantığını anladım. Belki soruda eksik olabilir. Çünkü hoca bizim anlayacağımız şekilde kısaca sormuştu. Bugün kendim biraz uğraşıp burada paylaşacağım
Yaşlanıyorum...

.py



Alıntı yapılan: Çağrı07 - 17 Temmuz 2018 - 23:54:12
(Soru)  ; Gelir vergisinin aşağıdaki kurallara göre hesaplandığını varsayalım; Geliri<= 150.000 ise vergi oranı %25 Geliri<= 300.000 ise vergi oranı %30 Geliri<= 600.000 ise vergi oranı %35 Geliri<= 1.200.000 ise vergi oranı %40 Geliri> 1.200.000 ise vergi oranı %50

Bunda anlaşılmayacak * bir şey yok sizin verdiğiniz koşullara göre hesaplama yapıyor. İlk başta mantık hatası olduğunu düşündüm ama daha sonra mantıkta bir sorun olmadığını anladım aynen dediğiniz gibi yazdım Biraz karışık olabilir. ondalik fonskiyonunu kaldırırsanızda çalışacaktır.

Dagiztanli08

hocam işte diyorum ki tek tek yapmanıza gerek yok işte 1000 tl de %1 tl vergi alıcak 30000 tl de yüzde 30  vergi  bu şekilde yapabilirsiniz. başka şekilde olacağını sanmıyorum

Çağrı07

Programı yazdım ama kullandığım uygulama Windows Python Shell olduğu için veya benim tam bilemediğimden dolayı ilk if bağlantısında hata verdi; Program genel hatlarıyla şu şekilde ;

https://paste.ofcode.org/nnEgc2jqbiktZvBjkqRmeQ

Sizde yardımcı olur musunuz?
Yaşlanıyorum...

Dagiztanli08

hocam bu şekilde yapılmaz yani bakın sizin bir vergi miktarı belirlemeniz gerekiyor 1000 tl de 1 tl felan gibi adam gider 1 tl geliri var dese vergi yok mu olucak olmaz sen if bloğu ile yapmışsın senin kide olmuş ama dediğim şekilde olmaz yani

.py

Nasıl olduğunu anladım sonuçta ekonomist değiliz ama sorduğun soruyla yazdığın örnek uyuşmuyor.

Çağrı07

Alıntı yapılan: .py - 18 Temmuz 2018 - 12:20:24
Nasıl olduğunu anladım sonuçta ekonomist değiliz ama sorduğun soruyla yazdığın örnek uyuşmuyor.
Neresi uyuşmuyor? Detaylandırır misiniz?
Yaşlanıyorum...

.py

Ben gelir vergisinin nasıl hesaplandığını bilmiyorum soruyu sorarken nasıl hesaplandığını yani formülünü yazmalıydın sorduğun şekilde yaparsak benim yadığım kod işe yarar. Formülden bahsetmediğin için ilerlemede olmuyor..

Çağrı07

Alıntı yapılan: Dagiztanli08 - 18 Temmuz 2018 - 12:19:12
hocam bu şekilde yapılmaz yani bakın sizin bir vergi miktarı belirlemeniz gerekiyor 1000 tl de 1 tl felan gibi adam gider 1 tl geliri var dese vergi yok mu *olacak olmaz sen if bloğu ile yapmışsın senin kide olmuş ama dediğim şekilde olmaz yani
Hocam ama vermemiz gereken vergi miktarı aldığımız gelire göre hesaplandığı için programın bizden gelirimizi sorup bu gelire göre de vergi hesaplaması gerekiyor.
Yani gelir sorulacak ve gelire göre belirli bir yüzdelik oran belirlenecek. Vergi miktarı değilde vergi yüzdesi belirlenmesi gerekiyor
Yaşlanıyorum...

Dagiztanli08

print("""

programımız 1 tl için 0.1 vergi almaktadır bunu nasıl sağlıyacağım diye
soruyorsan 1 tl / 10 ne apar 0.1 vergi yani kullanıcı 100 girdiği zaman 10 a bö$
"""

)

gelir=int(input("Lütfen gelirinizi giriniz"))

a = gelir/10

print("Ödemeniz gereken vergi miktarı",a)

print("Yani totalde elinize geçeçek para",gelir-a)

Çağrı07

Alıntı yapılan: Dagiztanli08 - 18 Temmuz 2018 - 12:32:24
print("""

programımız 1 tl için 0.1 vergi almaktadır bunu nasıl sağlıyacağım diye
soruyorsan 1 tl / 10 ne apar 0.1 vergi yani kullanıcı 100 girdiği zaman 10 a bö$
"""

)

gelir=int(input("Lütfen gelirinizi giriniz"))

a = gelir/10

print("Ödemeniz gereken vergi miktarı",a)

print("Yani totalde elinize geçeçek para",gelir-a)
Bu bahsedilen ortak bir vergi yüzdesi hocam. İleri aşamalarda gelir arttığı için vergi yüzdesi de artıyor. Doğal olarak önceki vergi yüzdeleri de hesaba girdiği için ona göre işlem yapılması gerekiyor.
Yaşlanıyorum...

Dagiztanli08

#17
onuda nasıl yapabilirsin bilemiyorum her para arttığı zaman döngü ile sende vergiyi arttırabilirsin vergi oluştur bir tane her para arttığı zaman atıyorum vergide 0.1 oranında artsın


Mesaj tekrarı yüzünden mesajınız birleştirildi. Bu mesajın gönderim tarihi : 18 Temmuz 2018 - 12:45:20

bu şekilde yap yapamazsan bana söyle ben istiyorsan bir taslak çıkarayım sana

.py

Alıntı yapılan: Çağrı07 - 18 Temmuz 2018 - 12:11:51

https://paste.ofcode.org/nnEgc2jqbiktZvBjkqRmeQ

Sizde yardımcı olur musunuz?

gelir=input("gelirinizi giriniz ;  ");
gelir = int(gelir)


scripte
gelir = int(gelir)
eklersen sorunun çözülür.

Çağrı07

@.py ve @Dagiztanli08 hocam teşekkürler yardımlarınız için;

Yeni hali; https://paste.ofcode.org/36nDquVGxtWeDUE5neHvKxr
Yaşlanıyorum...

.py

Alıntı yapılan: Çağrı07 - 17 Temmuz 2018 - 23:54:12
Cuma günü sınavım var ve uygulama ödevleri yapıyoruz.

Sınavda başarılar diliyorum.

Dagiztanli08

Sınavınızda başarılar yardımcı olabileceğimiz her konuda yardımcı oluruz çekinme :)

ethernity

#22
Alıntı yapılan: Çağrı07 - 19 Temmuz 2018 - 00:17:51
@.py ve @Dagiztanli08 hocam teşekkürler yardımlarınız için;

Yeni hali; https://paste.ofcode.org/36nDquVGxtWeDUE5neHvKxr

Kodda küçük bir yanlışlık var sanki


if(gelir>=2000000):
    vergi=x1+x2+x3+x4+(gelir-1200000)*0.50


2000000 değil, 1200000 olması lazım. Ayrıca neden bu kadar uzun yoldan gidiyorsunuz ki? Bu şekilde daha anlaşılır olmaz mı?


gelir=int(input("gelirinizi giriniz :  "))

if (gelir<=150000):
    vergi=gelir*0.25

elif(gelir<=300000):
    vergi=gelir*0.30

elif(gelir<=600000):
    vergi=gelir*0.35

elif(gelir<=1200000):
    vergi=gelir*0.40

else:
    vergi=gelir*0.50

print("vermeniz gereken vergi ",float(vergi),"TL'dir")