• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

refaktoryzacja kodu osoby poczatkujacej

0 głosów
327 wizyt
pytanie zadane 5 października 2018 w C i C++ przez marta.kappav Nowicjusz (180 p.)

Czesc!

Jestem tutaj pierwszy raz. Od miesiaca ucze sie programowania i postanowilam napisac swoj pierwszy program. Na jednej stronie znalazlam takie zadanie i wydalo mi sie na tyle ciekawe, ze postanowilam je wykonac. Moge Was prosic o rady i przyklady, dzieki ktorym moj kod bedzie wygladal (jak to mowi Miroslaw Zelent) bardziej seksownie? :) 

Oto tresc zadania:

Napisac program obliczajacy nalezny podatek dochodowy od osob fizycznych. Program ma pobierac od uzytkownika dochod i po obliczeniu wypisywac podatek.

  • do 85.528 podatek wynosi 18% podstawy minus 556,02

  • od 85.528 wynosi 14.839,02 + 32% nadwyzki ponad 85.528,00

 

Oto moj kod:
 


#include <iostream>

using namespace std;

float dochod, podatekA, podatekB;

int main()
{
    cout << "Prosze podac Panski dochod: ";
    cin>>dochod;

    if(dochod<85528)
    {
        podatekA=(((dochod*18)/100))-556.02;
        cout<<"Podatek do zaplacenia wynosi: "<<podatekA<<endl;
    }
    else
    {
             podatekB=14839.02+(((dochod-85528.00)*32)/100);
             cout<<"Podatek do zaplacenia wynosi: "<<podatekB<<endl;
    }
    return 0;
}


 

Dzieki!!! :)))

1 odpowiedź

+2 głosów
odpowiedź 5 października 2018 przez RafalS VIP (122,780 p.)

Nie używaj zmiennych globalnych. Szczególnie gdy totalnie nie ma na to potrzeby.

Zabrakło Ci przejscia do nowej lini w pierwszym coucie.

Wypisywałaś wynik w ten sam sposób. Jeśli coś jest tak samo zarówno w if jak i else to może wyskoczyć za ifa. Nie potrzeba wtedy też dwóch zmiennych.

Domyślnie używaj double zamiast float. Pamięć w dzisiejszych czasach nie jest problemem, a większa dokładnośc jest zawsze spoko. No chyba, że piszesz jakieś mega wydajne algorytmy gdzie nie tracisz na dokładności a troszeczke zyskujesz na czasie dzieki floatom.

int main()
{
	double dochod, podatek;
	cout << "Prosze podac Panski dochod: "<<endl;
	cin >> dochod;

	if (dochod<85528)
	{
		podatek = (((dochod * 18) / 100)) - 556.02;
	}
	else
	{
		podatek = 14839.02 + (((dochod - 85528.00) * 32) / 100);
	}
	cout << "Podatek do zaplacenia wynosi: " << podatek << endl;
	return 0;
}

 

komentarz 5 października 2018 przez marta.kappav Nowicjusz (180 p.)
Super!!! Bardzo, BARDZO DZIEKUJE!!!!

Podobne pytania

0 głosów
0 odpowiedzi 757 wizyt
0 głosów
1 odpowiedź 703 wizyt
pytanie zadane 12 lipca 2020 w JavaScript przez Arcywojak Początkujący (370 p.)
0 głosów
2 odpowiedzi 675 wizyt
pytanie zadane 24 grudnia 2019 w JavaScript przez Paweł Szewczyk Obywatel (1,420 p.)

93,765 zapytań

142,721 odpowiedzi

323,373 komentarzy

63,359 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...