Code:
#include<stdio.h>
#define size 100
void current(float V,float Requiv,int num);
void voltage(float V,float *RPtr,float Requiv,int num);
void power (float Ve,float *RPtr,float Requiv,int num);
void series(float *RPtr,float V,int num){
int i;
float Gequiv=0,Requiv;
for(i=0;i<num;i++){
Gequiv = Gequiv+*(RPtr+i);
}
Requiv = Gequiv;
printf("\nEquivalent resistance is = %.2f K\n",Requiv);
printf("\n");
current(V,Requiv,num);
voltage(V,RPtr,Requiv,num);
}
void current(float V,float Requiv,int num){
float I;
I =V/Requiv;
printf("\nCurrent is = %.2f mA\n",I);
printf("\n");
}
int main(){
int i,num;
float R[size];
float Ve;
float *RPtr;
RPtr = R;
printf("Enter the VB Voltage V[%d]: ",i);
scanf_s("%f",&Ve);
printf("Enter the number of resistors connected in series across the battery: ");
scanf_s("%d",&num);
for (i=0;i<num;i++){
printf("Enter the value of resistor R[%d]: ",i);
scanf_s("%f",&R[i]);
}
printf("\nResistor values in the array: K\n");
for(i=0;i<num;i++){
printf("R[%d]=%.2f ",i,R[i]);
}
series(R,Ve,num);
return 0;
}
void voltage(float Ve,float *RPtr,float Requiv,int num){
int i;
float V[size];
float *vPtr;
vPtr = V;
for(i=0;i<num;i++){
V[i] = (Ve**(RPtr+i))/Requiv;
printf("\nV[%d]= %.2f V\n",i,V[i]);
printf("\n");
}
power(Ve,V,Requiv,num);
}
void power (float Ve,float *vPtr, float Requiv ,int num){
int i;
float I,p[size],sum,Power;
I = Ve / Requiv;
printf("\nThe Power across each resistors are : \n\n");
sum = 0 ;
for (i=0;i<=num;i++){
p[i]= I**(vPtr + i);
printf("p[%d] = %.2f mwatt\n\n",i,p[i]);
sum = sum + p[i];
}
printf("The total power dissipated in the resistors = %.2f m watt \n", sum );
Power = Ve*I;
printf("The power supplied by the battery = %.2f m watt\n", sum );
printf("The power supplied by the battery = %.2f m watt\n",Power);
printf("--------------------The law of power conversation satisfied--------------------");
}