Brutto-Netto Rechner

Schnelle objektorientierte, kompilierende Programmiersprache.
Antworten
Gerowia
Beiträge: 14
Registriert: Di Jan 03, 2017 10:38 am

Brutto-Netto Rechner

Beitrag von Gerowia » So Okt 29, 2017 1:29 pm

Hallo,
ich muss ein Programm in C schreiben, das einem ausrechnet wie hoch die Steuer auf einen Einkauf ist. Hierzu soll man den Preis eingeben und den Prozentsatz der Mehrwertsteuer. Ich hab zwar einen Ansatz aber leider ist das Ergebnis immer 0,000 und ich finde meinen Fehler nicht

Code: Alles auswählen

#include<stdio.h>

int main(void)
{ 
	int s;
	double b,n;
	
	printf("Bitte geben Sie einen Nettobetrag ein: ");
	scanf("%lf",&n );
	printf("\n Bitte geben Sie einen Steuersatz ein: ");
	scanf("%lf",&s);
	
	b=n/100*s;

	printf("Der Bruttopreis betraegt: %f Euro", b);	
	
	return 0;
}
Sieht jemand was ich falsch mache? :?

Benutzeravatar
Xin
nur zu Besuch hier
Beiträge: 8469
Registriert: Fr Jul 04, 2008 11:10 pm
Wohnort: /home/xin
Kontaktdaten:

Re: Brutto-Netto Rechner

Beitrag von Xin » So Okt 29, 2017 2:22 pm

Ich frage mal andersrum: Was gibst du ein und welches Ergebnis erwartest Du?

Nehmen wir an, Du gibst 100 Euro ein und 19 Prozent.
Dann teilst Du 100 Euro / 100 und multipliziert es mit 19: Ergebnis 100/100*19 = 19.

Der Bruttopreis ist aber Nettopreis + Steuer.

Ich vermute Du gibst die Steuer als Komma-Wert an? Also 0,19?
Ein Kommawert, den Du auf ein Integer schreibst funktioniert so nicht. Ein Integerwert hat kein Komma, also liest er nur bis zum Komma, ab da muss was anderes kommen.
Er liest also nur die 0.
Was immer Du vorher durch 100 geteilt hast - mit 0 multipliziert wird im Ergebnis 0.
Merke: Wer Ordnung hellt ist nicht zwangsläufig eine Leuchte.

Ich beantworte keine generellen Programmierfragen per PN oder Mail. Dafür ist das Forum da.

Gerowia
Beiträge: 14
Registriert: Di Jan 03, 2017 10:38 am

Re: Brutto-Netto Rechner

Beitrag von Gerowia » So Okt 29, 2017 7:35 pm

Nein ich gebe den Prozentwert ganzzahlig an , also für 19 % eine 19, deshalb der Integer.
Aber ja du hast natürlich Recht in meiner Rechnung muss der Nettobetrag noch addiert werden, das habe ich abgeändert. Habe allerdings jetzt aus dem int Wert für s ein double gemacht und es klappt, hatte es ja im scanf auch mit &lf eingelesen, ich Trottel.
Danke dir. :D

Antworten