1. electrical calculations
- Posted by Senator Nov 03, 2018
- 1258 views
- Last edited Nov 12, 2018
More of my "eternal novice" stuff:
-- -- elecCalc.ex -- include std/console.e include std/graphics.e include std/text.e constant Options = sprintf("%s", { """ Electrical Formulas 1. W = V2/R 2. W = R*A2 3. W = V*A 4. A = sqrt(W/R) 5. A = W/V 6. A = V/R 7. V = R*A 8. V = W/A 9. V = sqrt(W*R) 10. V = Wh/Ah 11. R = V/A 12. R = V2/W 13. R = W/A2 14. Wh = V*Ah 15. Wh = mAh*(V/1000) 16. Ah = Wh/V 0 -- quit """ }) atom W, A, V, Wh, Ah, mAh, R, hp=745.7 procedure set_values( sequence g={"", 0, "", 0} ) puts(1,"\n") for i = 1 to 4 by 2 do g[i+1]=prompt_number("\t\t"&g[i] &" = ",{}) if equal("W", g[i]) then W = g[i+1] elsif equal("A", g[i]) then A = g[i+1] elsif equal("V", g[i]) then V = g[i+1] elsif equal("Wh", g[i]) then Wh = g[i+1] elsif equal("Ah", g[i]) then Ah = g[i+1] elsif equal("mAh", g[i]) then mAh = g[i+1] elsif equal("R", g[i]) then R = g[i+1] end if end for end procedure procedure main() sequence Rs, SS="%s = %.4g", HP=" (%.4g Hp)" integer RUN=1 bk_color(BLACK) text_color(GREEN) clear_screen() while RUN do RUN = prompt_number(Options&" Select #: ", {0,16}) switch RUN do case 1 then display("\t1. W = V2/R") set_values({"V",0, "R",0}) W=power(V,2)/R Rs=sprintf(SS & HP, {"W",W,W/hp}) case 2 then display("\t2. W = R*A2") set_values({"R",0,"A",0}) W=R*power(A,2) Rs=sprintf(SS & HP,{"W", W,W/hp}) case 3 then display("\t3. W = V*A") set_values({"V",0,"A",0}) W=V*A Rs=sprintf(SS & HP,{"W",W,W/hp}) case 4 then display("\t4. A = sqrt(W/R)") set_values({"W",0,"R",0}) Rs=sprintf(SS,{"A",sqrt(W/R)}) case 5 then display("\t5. A = W/V") set_values({"W",0,"V",0}) Rs=sprintf(SS,{"A",W/V}) case 6 then display("\t6. A = V/R") set_values({"V",0,"R",0}) Rs=sprintf(SS,{"A",V/R}) case 7 then display("\t7. V = R*A") set_values({"R",0,"A",0}) Rs=sprintf(SS,{"V",R*A}) case 8 then display("\t8. V = W/A") set_values({"W",0,"A",0}) Rs=sprintf(SS,{"V",W/A}) case 9 then display("\t9. V = sqrt(W*R)") set_values({"W",0,"R",0}) Rs=sprintf(SS,{"V", sqrt(W*R)}) case 10 then display("\t10. V= Wh/Ah") set_values({"Wh",0,"Ah",0}) Rs=sprintf(SS,{"V",Wh/Ah}) case 11 then display("\t11. R = V/A") set_values({"V",0,"A",0}) Rs=sprintf(SS,{"R",V/A}) case 12 then display("\t12. R = V2/W") set_values({"V",0,"W",0}) Rs=sprintf(SS,{"R",power(V,2)/W}) case 13 then display("\t13. R = W/A2") set_values({"W",0,"A",0}) Rs=sprintf(SS,{"R",W/power(A,2)}) case 14 then display("\t14. Wh = V*Ah") set_values({"V",0,"Ah",0}) Rs=sprintf(SS,{"Wh",V*Ah}) case 15 then display("\t15. Wh = mAh*(V/1000)") set_values({"mAh",0,"V",0}) Rs=sprintf(SS,{"Wh",mAh*(V/1000)}) case 16 then display("\t16. Ah = Wh/V") set_values({"Wh",0,"V",0}) Rs=sprintf(SS,{"Ah",Wh/V}) case 0 then abort(0) end switch text_color(YELLOW) display("\t\t"&Rs) text_color(GREEN) end while end procedure main()
2. Re: electrical calculations
- Posted by MarkB Nov 04, 2018
- 1167 views
Senator said...
More of my "eternal novice" stuff:
-- -- elecCalc.ex -- include std/console.e include std/graphics.e constant Options = sprintf("%s", { """ Electrical Formulas 1. W = V2/R 2. W = R*A2 3. W = V*A 4. A = power(W/R,.5) 5. A = W/V 6. A = V/R 7. V = R*A 8. V = W/A 9. V = power(W*R,.5) 10. V = Wh/Ah 11. R = V/A 12. R = V2/W 13. R = W/A2 14. Wh = V/Ah 15. Wh = mAh*(V/1000) 16. Ah = Wh/V 0 -- quit """ })
Hey senator. Option 14 should read Wh = V * Ah
Cheers,
Mark.
3. Re: electrical calculations
- Posted by Senator Nov 05, 2018
- 1085 views
MarkB said...
Hey senator. Option 14 should read Wh = V * Ah
Cheers,
Mark.
Thanks for catching the error. I have corrected the post.
Regards, Ken