|

楼主 |
发表于 2022-12-6 08:55:52
|
显示全部楼层
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdint.h>
- #include <math.h>
- int main(){
- double x,avg,halfwaveRMS,peakvalue,halfwaveAVGDC,halfwaveRMSAC,ACPOW,DCPOW;
- double fullwaveRMS=230,calcullated_halfwaveRMS_VALUE=0;
- printf("\r\nfullwaveRMS=%lf",fullwaveRMS);printf("V","\r\n");
- peakvalue=fullwaveRMS*sqrt(2);
- printf("\r\npeakvalue=%lf",peakvalue);printf("V");
- int i;
- x=0;
- for(i=0;i<360;i++){
- x+=pow(sin(M_PI*i/360.0),2.0);
- }
- halfwaveRMS=peakvalue*sqrt(x/720);
- printf("\r\nhalfwaveRMS(AC+DC)=%lf",halfwaveRMS);printf("V");printf("\n");
-
- avg=0;
- for(i=0;i<360;i++){
- avg+=sin(M_PI*i/360.0);
- }
- avg=avg/720;
- halfwaveAVGDC=peakvalue*avg;
- printf("\r\nhalfwaveAVG(DC)=%lf",halfwaveAVGDC);printf("V");
- x=0;
- for(i=0;i<360;i++){
- x+=pow(sin(M_PI*i/360.0)-avg,2.0);
- }
- for(i=0;i<360;i++){
- x+=pow(avg,2.0);
- }
- halfwaveRMSAC=peakvalue*sqrt(x/720);
- printf("\r\nhalfwaveRMS(AC)=%lf",halfwaveRMSAC);printf("V");
- ACPOW=pow(halfwaveRMSAC,2.0);
- DCPOW=pow(halfwaveAVGDC,2.0);
- calcullated_halfwaveRMS_VALUE=sqrt(ACPOW+DCPOW);
- printf("\r\ncalcullated_halfwaveRMS_VALUE sqrt(DC^2+AC^2)=%lf",calcullated_halfwaveRMS_VALUE);printf("V");
-
- }
复制代码 |
评分
-
1
查看全部评分
-
|