Header Ads

ad728
  • New Updates

    Working With Real Numbers


    Working With Real Numbers

    जब Float प्रकार की संख्याओं को विशेष Formatting में Screen पर प्रिंट करना होता है , तब हमें निम्न Syntax को printf() Function के Control String के साथ प्रयोग करना होता है |

    For Real Numbers % w. p f

    For Exponent Numbers % w. p e यहां

    Float प्रकार के Data Type का Variable जब Screen पर Print करते हैं तो Print होने वाला मान हमेशा दशमलव के बाद 6 अंकों तक एक मान को Print करता है | साथ ही Print होने वाला हर मान यहां भी Right Justified रूप में ही Print होता है | यदि हमें Left Side से Value को Print करना हो तो (Minus) – Flag का प्रयोग करना पड़ता है | मानलो x = 12345.6789 है , तो निम्न अलग – अलग Statements निम्न  Format में Output Print करेंगे |

     

    printf(“%10.4f”,x);

    ये Statement कुल 10 अंकों का मान Output में Print करेगा और दशमलव के बाद के चार अंक Print करगा |

     printf(“%10.2f”,x);

    यहां दशमलव के बाद दो अंक प्रिंट होगे और Output में कुल दस अंक Print हो सकेंगे |

     

    जैसा कि चित्र में दिखाया गया है कुल Space तो 10 Reserve होंगे लेकिन Output में केवल आठ ही अंक Print होंगे क्योंकि दशमलव के बाद केवल दो अंक ही प्रिंट होंगे | इसलिए आगे के दो अंक की जगह खली ही रहेगी |

     

    printf(“% - 10.2f”,x);

    यहां पर कुल दस Space Reserve होंगे और दशमलव के बाद दो अंकों तक संख्या Print होगी शेष जगह खाली रहेगी , लेकिन यहां हमने – चिन्ह प्रयोग किया है इसलिए संख्या Left Justified Print होगी | देखें निम्न चित्र


    printf(“%f”,x);

    यह Statement की पूरी Value को Print करेगा | चुंकि Float Variable दशमलव के बाद 6 अकों तक के मान को Screen पर Print करता है और यहां पर दशमलव के बाद केवल 4 ही अंक है इसलिए बाकी के अंक Garbage Value को प्राप्त हो जाते हैं |


    printf(“%*.*f”, w,p,x);

    यह Statement बिल्कुल उसी प्रकार है जिस प्रकार अन्य Statements है | फर्क बस इतना ही है कि इस Statement में Width Precision को Control String के साथ ना लिख कर Variable के साथ लिखा जाता है | इसमें यदि w की जगह 10 P की जगह 2 लिख दिया जाए तो Output निम्नानुसार प्राप्त होगा जो कि %10.2f के समान ही है |


    जिस तरह Float प्रकार के Variables को विभन्न Format में प्रिंट करते हैं , उसी तरह हम घातांक मानों को भी विभन्न प्रकार से प्रिंट कर सकते हैं | जब हमें संख्या को घातांक रूप में प्रिंट करना होता है तब मात्र f के स्थान पर e का प्रयोग करते है और बाकी की सारी Formatting समान राखी जाती है | निम्नानुसार कुछ उदाहरण बताये जा रहे हैं लेकिन इन्हीं उदाहरणों में मामूली से बदलाव करके विभन्न Format प्राप्त किए जा सकते है |

    printf(“%e”,x);

    यह Statement निम्न Output देगा , क्योंकि सारा मान घातांक रूप में बदल जाएगा |

    printf(“%10.2e”,x);

    यह Statement दस Space Reserve करेगा और दशमलव के बाद दो अंक दर्शाएगा |

    printf(“%-10.2e”,x);

    यह Statement दस Space Reserve करेगा और दशमलव के बाद दो अंक Print करेगा लेकिन print होने वाला मान Left Justified Print होगा क्योंकि Control String के साथ Flag का प्रयोग किया गया है |

    printf(“%10.2e”, -x);

    यह Statement दस Space Reserve करेगा और दशमलव के बाद के दो अंकों को Print करेगा साथ ही संख्या को ऋणात्मक Format में प्रिंट करेगा क्योंकि Variable के सामने Minus का चिन्ह प्रयोग किया गया है |


    Program

      
    #include<stdio.h>
    main()
    {
    	float x=12345.6789;
    	
    	printf("\n x is %f",x);
    	printf("\n x is %e",x);
    	printf("\n x is %10.2f",x);
    	printf("\n x is %10.2e",x);
    	printf("\n x is %*.*f",10,2,x);
    	printf("\n x is %e", 10,2,x);
    	printf("\n x is %f",-x);
    	printf("\n x is %e",-x);
    	
    	getch();
    }
    
      

    Output

      
     x is 12345.678711
     x is 1.234568e+004
     x is   12345.68
     x is  1.23e+004
     x is   12345.68
     x is 4.940656e-323
     x is -12345.678711
     x is -1.234568e+004 
      

     


    No comments

    Post Top Ad

    ad728

    Post Bottom Ad

    ad728