Verständnisproblem bei Zahlenausgabe

Thread Starter
Mitglied seit
18.04.2005
Beiträge
256
Hallo zusammen,

ich habe mich endlich dazu durchringen können ein wenig in die Materie des Programmierens zu schnuppern. Vorkenntnisse sind absolut keine Vorhanden und aus diesem Grund habe ich mir das Buch Mac-Programmierung für Kids zugelegt, dass ist so geschrieben, dass sogar ich das halbwegs verstehe ;)

Jetzt zu meinem Problemchen, in dem Buch wird u.a. auch ein Beispiel mit einer kleinen Berechnung aufgeführt, welche ich lediglich um die u.g. Werte 3 und 4 entsprechend erweitert habe.
Die Ausgabe bei Wert 4 erfolgt jetzt zu meinem Unverständnis ohne Nachkommastellen, was ich durch Angabe des Format-Specifiers %.2f eigentlich verhindern wollte.

Es wäre nett wenn mir hier jemand eine kurze Erklärung bzw. einen Tip für einen durch mich verursachten Käfer geben könnte :)
Code:
#import <Foundation/Foundation.h>

int main (int argc, const char * argv[])
{

    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
    double wert1 = 7.5;
    double wert2 = 3;
    double wert3 = 7;
    double wert4 = 6;
    double ergebnis = (wert1+wert2)*(wert3+wert4);
    
    NSLog(@"Die Summe von %.2f und %.2f * %.2f +%2.f",wert1,wert2,wert3,wert4);
    NSLog(@"ist %.f", ergebnis);
    [pool drain];
    return 0;
}


Ausgabe:

2011-05-27 19:59:37.580 Variablen[8377:903] Die Summe von 7.50 und 3.00 * 7.00 + 6
2011-05-27 19:59:37.583 Variablen[8377:903] ist 136
 

UPeuker

Mitglied
Mitglied seit
21.10.2008
Beiträge
496
Ich sehe in deinem Quellcode für Wert 4 "%2.f" und nicht "%.2f". Die Ausgabe ist also so wie programmiert ;)
 

JeanLuc7

Aktives Mitglied
Mitglied seit
04.04.2005
Beiträge
5.211
Schau mal genau hin. Bei Wert 4 steht %2.f, bei allen anderen %.2 - kleiner Unterschied mit großer Wirkung :)
 
Thread Starter
Mitglied seit
18.04.2005
Beiträge
256
:hamma:, danke euch beiden, da hab ich wohl den sprichwörtlichen Wald übersehen und sollte für heute Schluss machen.
 
Oben