C Language
मानक मठ
खोज…
वाक्य - विन्यास
- # पिन करें <math.h>
- डबल पॉ (डबल एक्स, डबल वाई);
- फ्लोट पाउफ (फ्लोट एक्स, फ्लोट वाई);
- लंबे डबल पॉवेल (लंबे डबल एक्स, लंबे डबल वाई);
टिप्पणियों
- गणित पुस्तकालय के उपयोग के साथ लिंक करने के लिए
-lm
झंडे के साथ। - कि जरूरतों को एक गणितीय समारोह से एक त्रुटि के लिए जाँच करने के लिए स्थापित करना चाहिए एक पोर्टेबल कार्यक्रम
errno
शून्य करने के लिए, और निम्न फोन करनाfeclearexcept(FE_ALL_EXCEPT);
गणितीय फ़ंक्शन को कॉल करने से पहले। गणितीय समारोह से वापस आने पर, यदिerrno
अशून्य, या निम्न कॉल रिटर्न अशून्य हैfetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW | FE_UNDERFLOW);
तब गणितीय फ़ंक्शन में एक त्रुटि हुई। अधिक जानकारी के लिए math_error का पेज पढ़ें।
डबल सटीक फ़्लोटिंग-पॉइंट शेष: fmod ()
यह फ़ंक्शन x/y
के विभाजन के फ़्लोटिंग-पॉइंट शेष को लौटाता है। दिए गए मान में x के समान चिह्न है।
#include <math.h> /* for fmod() */
#include <stdio.h> /* for printf() */
int main(void)
{
double x = 10.0;
double y = 5.1;
double modulus = fmod(x, y);
printf("%lf\n", modulus); /* f is the same as lf. */
return 0;
}
आउटपुट:
4.90000
महत्वपूर्ण: देखभाल के साथ इस फ़ंक्शन का उपयोग करें, क्योंकि यह अस्थायी बिंदु मानों के संचालन के कारण अप्रत्याशित मान वापस कर सकता है।
#include <math.h>
#include <stdio.h>
int main(void)
{
printf("%f\n", fmod(1, 0.1));
printf("%19.17f\n", fmod(1, 0.1));
return 0;
}
आउटपुट:
0.1
0.09999999999999995
एकल सटीक और लंबी डबल परिशुद्धता फ़्लोटिंग पॉइंट शेष: fmodf (), fmodl ()
C99
ये फ़ंक्शंस x/y
के विभाजन के फ़्लोटिंग-पॉइंट शेष हैं। दिए गए मान में x के समान चिह्न है।
एकल परिशुद्धता:
#include <math.h> /* for fmodf() */
#include <stdio.h> /* for printf() */
int main(void)
{
float x = 10.0;
float y = 5.1;
float modulus = fmodf(x, y);
printf("%f\n", modulus); /* lf would do as well as modulus gets promoted to double. */
}
आउटपुट:
4.90000
डबल डबल परिशुद्धता:
#include <math.h> /* for fmodl() */
#include <stdio.h> /* for printf() */
int main(void)
{
long double x = 10.0;
long double y = 5.1;
long double modulus = fmodl(x, y);
printf("%Lf\n", modulus); /* Lf is for long double. */
}
आउटपुट:
4.90000
बिजली के कार्य - पाउ
निम्न उदाहरण कोड 1 + 4 (3 + 3 ^ 2 + 3 ^ 3 + 3 ^ 4 + ... + 3 ^ N) श्रृंखला के योग की गणना मानक गणित पुस्तकालय के pow () परिवार का उपयोग करता है।
#include <stdio.h>
#include <math.h>
#include <errno.h>
#include <fenv.h>
int main()
{
double pwr, sum=0;
int i, n;
printf("\n1+4(3+3^2+3^3+3^4+...+3^N)=?\nEnter N:");
scanf("%d",&n);
if (n<=0) {
printf("Invalid power N=%d", n);
return -1;
}
for (i=0; i<n+1; i++) {
errno = 0;
feclearexcept(FE_ALL_EXCEPT);
pwr = powl(3,i);
if (fetestexcept(FE_INVALID | FE_DIVBYZERO | FE_OVERFLOW |
FE_UNDERFLOW)) {
perror("Math Error");
}
sum += i ? pwr : 0;
printf("N= %d\tS= %g\n", i, 1+4*sum);
}
return 0;
}
उदाहरण आउटपुट:
1+4(3+3^2+3^3+3^4+...+3^N)=?
Enter N:10
N= 0 S= 1
N= 1 S= 13
N= 2 S= 49
N= 3 S= 157
N= 4 S= 481
N= 5 S= 1453
N= 6 S= 4369
N= 7 S= 13117
N= 8 S= 39361
N= 9 S= 118093
N= 10 S= 354289
Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow