000
23.05.2005, 22:28 Uhr
ryu
|
Hallo und Servus !!!
Dies ist mein erster Foren-Beitrag, also bitte nicht gleich köpfen oder vierteilen, falls ich in diesem Post irgendwelche Regeln missachtet haben sollte.
Aufgabenstellung: Schreiben Sie ein Porgramm, das die Division 2er ganzer Zahlen nach der Methode vornimmt, die Sie in der Grundschule gelernt haben. Gleitkommavariablen und -operationen dürfen nicht verwendet werden.
Mein Programm:
#include<stdio.h>
C++: |
void main()
{ int z; //zu teilende Zahl int n; //Der Teiler int nk; //Anzahl der Nachkommastellen int res; //Divisionsergebnis printf("\r\n Divisionsalgorithmus\r\n\n\n"); printf("Bitte geben Sie den Zaehler ein:"); scanf("%i",&z); printf("Bitte geben Sie jetzt den Nenner ein:"); scanf("%i",&n); printf("\r\n Wieviele Nachkommastellen sollen berechnet werden?"); scanf("%i",&nk); printf("Ergebnis: ");
if(nk==0){ res = z / n; printf("%i",res); } else{ while(nk+1>0){
nk = nk - 1; res = z / n; z = (z - (res * n)) * 10;
printf("%i",res); } } printf("\n");
}
|
Mein Problem (Vorsicht C++ Noob): Wenn ich z.B. 63/8 rechne mit 3 Nachkommastellen, spuckt das Programm nur 7875 aus und nicht 7.875 Ich hab leider keine Ahnung wie ich die Ausgabe des Kommas(bzw. des Punktes) nach der Vorkommastelle und vor den Nachkommastellen erhalte.
Vielen Dank für eure Hilfe schon mal im Vorraus. mfg
ryu Dieser Post wurde am 23.05.2005 um 22:35 Uhr von FloSoft editiert. |