{"id":100175,"date":"2026-02-15T20:25:09","date_gmt":"2026-02-15T20:25:09","guid":{"rendered":"https:\/\/vibromera.eu\/?post_type=calculator&#038;p=100175"},"modified":"2026-04-05T15:38:14","modified_gmt":"2026-04-05T15:38:14","slug":"ohms-law-calculator","status":"publish","type":"calculator","link":"https:\/\/vibromera.eu\/bn\/calculators\/ohms-law-calculator\/","title":{"rendered":"Ohm&#8217;s Law Calculator \u2014 Voltage, Current, Resistance &#038; Power"},"content":{"rendered":"\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"WebApplication\",\"name\":\"Ohm's Law Calculator\",\"alternateName\":[\"V=IR Calculator\",\"Electrical Power Calculator\",\"Ohm Wheel Calculator\"],\"description\":\"Free online Ohm's Law calculator. Enter any two of Voltage (V), Current (A), Resistance (\u03a9), or Power (W) to instantly calculate all four parameters plus conductance and energy per hour.\",\"url\":\"https:\/\/vibromera.eu\/calculators\/ohms-law-calculator\/\",\"applicationCategory\":\"Engineering Calculator\",\"operatingSystem\":\"Any (Web Browser)\",\"offers\":{\"@type\":\"Offer\",\"price\":\"0\",\"priceCurrency\":\"EUR\"},\"creator\":{\"@type\":\"Organization\",\"name\":\"Vibromera\",\"url\":\"https:\/\/vibromera.eu\/\"},\"datePublished\":\"2025-01-01\",\"dateModified\":\"2025-02-14\",\"inLanguage\":\"en\",\"isAccessibleForFree\":true,\"featureList\":[\"Six input combinations: V+I, V+R, I+R, P+I, P+V, P+R\",\"All four parameters calculated\",\"Conductance in siemens\",\"Energy per hour\",\"Auto-calculation on input change\",\"URL parameter sharing\",\"Calculation history\"],\"keywords\":\"Ohm's law, voltage, current, resistance, power, V=IR, P=VI, conductance\"}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[\n{\"@type\":\"Question\",\"name\":\"What is Ohm's Law?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ohm's Law states that the current through a conductor between two points is directly proportional to the voltage across the two points, and inversely proportional to the resistance. The formula is V = I \u00d7 R, where V is voltage in volts, I is current in amperes, and R is resistance in ohms.\"}},\n{\"@type\":\"Question\",\"name\":\"What is the relationship between voltage, current, resistance and power?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"The four fundamental relationships are: V = I \u00d7 R (Ohm's Law), P = V \u00d7 I (power), P = I\u00b2 \u00d7 R (power from current and resistance), and P = V\u00b2 \/ R (power from voltage and resistance). Knowing any two values allows you to calculate the other two.\"}},\n{\"@type\":\"Question\",\"name\":\"How do series and parallel resistances differ?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"In series, resistances add directly: R_total = R1 + R2 + R3. In parallel, reciprocals add: 1\/R_total = 1\/R1 + 1\/R2 + 1\/R3. Series increases total resistance, while parallel decreases it. For two parallel resistors: R_total = (R1 \u00d7 R2) \/ (R1 + R2).\"}},\n{\"@type\":\"Question\",\"name\":\"What is electrical conductance?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Conductance (G) is the reciprocal of resistance: G = 1\/R. It is measured in siemens (S). A higher conductance means the material conducts electricity more easily. It is useful when analyzing parallel circuits, where conductances add directly.\"}},\n{\"@type\":\"Question\",\"name\":\"Does Ohm's Law apply to AC circuits?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Ohm's Law applies to AC circuits when using impedance (Z) instead of resistance (R). In AC, V = I \u00d7 Z, where Z includes resistance, inductive reactance (XL = 2\u03c0fL), and capacitive reactance (XC = 1\/2\u03c0fC). For purely resistive AC loads, V = IR still applies directly.\"}}\n]}\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\"@context\":\"https:\/\/schema.org\",\"@type\":\"BreadcrumbList\",\"itemListElement\":[\n{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/vibromera.eu\/\"},\n{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Calculators\",\"item\":\"https:\/\/vibromera.eu\/calculators\/\"},\n{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Ohm's Law Calculator\",\"item\":\"https:\/\/vibromera.eu\/calculators\/ohms-law-calculator\/\"}\n]}\n<\/script>\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<link href=\"https:\/\/fonts.googleapis.com\/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700;1,9..40,400&#038;family=JetBrains+Mono:wght@400;500;600&#038;family=Fraunces:opsz,wght@9..144,700;9..144,800&#038;display=swap\" rel=\"stylesheet\">\n\n<link rel=\"stylesheet\" href=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.css\">\n\n<style>\n:root {\n    --vc-bg: #f4f1ec;\n    --vc-surface: #ffffff;\n    --vc-surface-alt: #f8f6f2;\n    --vc-ink: #1a1a1a;\n    --vc-ink-secondary: #5a5650;\n    --vc-ink-muted: #8a857e;\n    --vc-accent: #c85a2a;\n    --vc-accent-hover: #b04d22;\n    --vc-accent-light: #fdf0ea;\n    --vc-blue: #2a5c8c;\n    --vc-blue-light: #eaf1f8;\n    --vc-green: #2a7a4b;\n    --vc-green-light: #eaf8ef;\n    --vc-yellow: #a67c00;\n    --vc-yellow-light: #fef9e8;\n    --vc-red: #b91c1c;\n    --vc-red-light: #fef2f2;\n    --vc-border: #d9d4cc;\n    --vc-border-light: #e8e4dd;\n    --vc-shadow: 0 1px 3px rgba(26,26,26,0.06), 0 4px 12px rgba(26,26,26,0.04);\n    --vc-shadow-lg: 0 4px 12px rgba(26,26,26,0.08), 0 16px 40px rgba(26,26,26,0.06);\n    --vc-radius: 8px;\n    --vc-radius-lg: 12px;\n    --vc-font: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;\n    --vc-mono: 'JetBrains Mono', 'Consolas', 'Monaco', monospace;\n    --vc-display: 'Fraunces', Georgia, serif;\n}\n\n.vc-calculator {\n    font-family: var(--vc-font);\n    font-size: 15px;\n    line-height: 1.65;\n    color: var(--vc-ink);\n    max-width: 960px;\n    margin: 0 auto;\n    padding: 20px 16px 40px;\n    -webkit-font-smoothing: antialiased;\n}\n.vc-calculator *, .vc-calculator *::before, .vc-calculator *::after { box-sizing: border-box; }\n\n\/* \u2500\u2500 HEADER \u2500\u2500 *\/\n.vc-header { text-align: center; padding: 48px 24px 40px; position: relative; }\n.vc-header::after { content:''; position:absolute; bottom:0; left:50%; transform:translateX(-50%); width:80px; height:3px; background:var(--vc-accent); border-radius:2px; }\n.vc-header-eyebrow { font-family:var(--vc-mono); font-size:11px; font-weight:500; letter-spacing:0.15em; text-transform:uppercase; color:var(--vc-accent); margin:0 0 12px; }\n.vc-header-title { font-family:var(--vc-display); font-size:clamp(24px,4vw,36px); font-weight:800; line-height:1.15; color:var(--vc-ink); margin:0 0 16px; letter-spacing:-0.02em; }\n.vc-header-subtitle { font-size:15px; color:var(--vc-ink-secondary); margin:0 auto 20px; max-width:600px; }\n.vc-badges { display:inline-flex; gap:8px; flex-wrap:wrap; justify-content:center; }\n.vc-badge { font-family:var(--vc-mono); font-size:11px; font-weight:500; padding:4px 10px; border-radius:4px; background:var(--vc-surface); border:1px solid var(--vc-border); color:var(--vc-ink-secondary); }\n\n\/* \u2500\u2500 CARD \u2500\u2500 *\/\n.vc-card { background:var(--vc-surface); border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); box-shadow:var(--vc-shadow); overflow:hidden; margin-top:32px; }\n\n\/* \u2500\u2500 FORM \u2500\u2500 *\/\n.vc-form { padding:24px; }\n.vc-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }\n@media(max-width:600px) { .vc-form-grid { grid-template-columns:1fr; } }\n.vc-field { display:flex; flex-direction:column; }\n.vc-field-full { grid-column: 1 \/ -1; }\n.vc-label { font-size:12px; font-weight:600; letter-spacing:0.04em; text-transform:uppercase; color:var(--vc-ink-secondary); margin-bottom:6px; }\n.vc-label-hint { font-weight:400; text-transform:none; letter-spacing:0; color:var(--vc-ink-muted); font-size:11px; }\n.vc-select, .vc-input { width:100%; padding:10px 12px; border:1.5px solid var(--vc-border); border-radius:6px; font-family:var(--vc-font); font-size:14px; color:var(--vc-ink); background:var(--vc-surface); transition:border-color 0.15s, box-shadow 0.15s; }\n.vc-select { padding-right:36px; appearance:none; -webkit-appearance:none; cursor:pointer; background-image:url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' width='16' height='16' fill='none' stroke='%235a5650' stroke-width='2'%3E%3Cpath d='M4 6l4 4 4-4'\/%3E%3C\/svg%3E\"); background-repeat:no-repeat; background-position:right 10px center; }\n.vc-select:focus, .vc-input:focus { outline:none; border-color:var(--vc-accent); box-shadow:0 0 0 3px rgba(200,90,42,0.12); }\n.vc-select:hover, .vc-input:hover { border-color:var(--vc-ink-muted); }\n\n\/* \u2500\u2500 PRESETS \u2500\u2500 *\/\n.vc-presets { display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; padding-top:18px; border-top:1px solid var(--vc-border-light); }\n.vc-presets-label { font-family:var(--vc-mono); font-size:11px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--vc-ink-muted); width:100%; margin-bottom:2px; }\n.vc-preset-btn { padding:5px 12px; font-family:var(--vc-font); font-size:12px; font-weight:500; border:1px solid var(--vc-border); border-radius:6px; background:var(--vc-surface-alt); color:var(--vc-ink-secondary); cursor:pointer; transition:all 0.15s; }\n.vc-preset-btn:hover { border-color:var(--vc-accent); color:var(--vc-accent); background:var(--vc-accent-light); }\n\n\/* \u2500\u2500 RESULTS \u2500\u2500 *\/\n.vc-results { border-top:1px solid var(--vc-border-light); background:var(--vc-surface-alt); padding:0; max-height:0; overflow:hidden; transition:max-height 0.5s cubic-bezier(0.4,0,0.2,1), padding 0.3s; }\n.vc-results.vc-visible { max-height:2000px; padding:24px; }\n.vc-results-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:18px; }\n.vc-results-title { font-family:var(--vc-display); font-size:20px; font-weight:700; color:var(--vc-ink); margin:0; }\n.vc-copy-btn { display:inline-flex; align-items:center; gap:5px; padding:6px 12px; border:1px solid var(--vc-border); border-radius:6px; background:var(--vc-surface); font-family:var(--vc-font); font-size:12px; font-weight:500; color:var(--vc-ink-secondary); cursor:pointer; transition:all 0.15s; }\n.vc-copy-btn:hover { border-color:var(--vc-accent); color:var(--vc-accent); }\n.vc-copy-btn.vc-copied { background:var(--vc-green-light); border-color:var(--vc-green); color:var(--vc-green); }\n\n.vc-result-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-bottom:20px; }\n@media(max-width:500px) { .vc-result-grid { grid-template-columns:1fr; } }\n.vc-rcard { background:var(--vc-surface); border:1px solid var(--vc-border-light); border-radius:var(--vc-radius); padding:16px; transition:transform 0.2s; }\n.vc-rcard:hover { transform:translateY(-1px); }\n.vc-rcard-primary { border-color:var(--vc-accent); border-width:2px; background:linear-gradient(135deg, #fdf6f2 0%, var(--vc-surface) 100%); grid-column:1 \/ -1; }\n.vc-rcard-label { font-family:var(--vc-mono); font-size:10px; font-weight:500; letter-spacing:0.1em; text-transform:uppercase; color:var(--vc-ink-muted); margin-bottom:4px; }\n.vc-rcard-value { font-family:var(--vc-mono); font-size:22px; font-weight:600; color:var(--vc-ink); line-height:1.2; }\n.vc-rcard-primary .vc-rcard-value { font-size:30px; color:var(--vc-accent); }\n.vc-rcard-unit { font-size:14px; font-weight:400; color:var(--vc-ink-secondary); }\n.vc-rcard-calculated { border-color:var(--vc-blue); border-width:2px; background:linear-gradient(135deg, #eef4fa 0%, var(--vc-surface) 100%); }\n.vc-rcard-calculated .vc-rcard-label::after { content:' \u2190 calculated'; font-weight:400; text-transform:none; letter-spacing:0; color:var(--vc-blue); }\n\n\/* \u2500\u2500 COLLAPSIBLE SECTIONS \u2500\u2500 *\/\n.vc-section { margin-top:24px; border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); background:var(--vc-surface); box-shadow:var(--vc-shadow); overflow:hidden; }\n.vc-section-toggle { width:100%; display:flex; align-items:center; justify-content:space-between; padding:18px 24px; border:none; background:transparent; cursor:pointer; font-family:var(--vc-font); text-align:left; transition:background 0.15s; }\n.vc-section-toggle:hover { background:var(--vc-surface-alt); }\n.vc-section-toggle-text { display:flex; align-items:center; gap:10px; }\n.vc-section-icon { font-size:20px; line-height:1; }\n.vc-section-title { font-family:var(--vc-display); font-size:18px; font-weight:700; color:var(--vc-ink); margin:0; }\n.vc-section-chevron { width:20px; height:20px; color:var(--vc-ink-muted); transition:transform 0.3s; flex-shrink:0; }\n.vc-section.vc-open .vc-section-chevron { transform:rotate(180deg); }\n.vc-section-body { max-height:0; overflow:hidden; transition:max-height 0.4s cubic-bezier(0.4,0,0.2,1); }\n.vc-section.vc-open .vc-section-body { max-height:20000px; }\n.vc-section-inner { padding:0 24px 24px; border-top:1px solid var(--vc-border-light); }\n\n\/* \u2500\u2500 THEORY \u2500\u2500 *\/\n.vc-theory h3 { font-family:var(--vc-display); font-size:17px; font-weight:700; color:var(--vc-ink); margin:28px 0 10px; }\n.vc-theory h3:first-child { margin-top:20px; }\n.vc-theory p { font-size:14px; color:var(--vc-ink-secondary); margin:0 0 10px; }\n.vc-theory ul, .vc-theory ol { font-size:14px; color:var(--vc-ink-secondary); margin:0 0 12px 18px; padding:0; }\n.vc-theory li { margin-bottom:5px; }\n.vc-formula-box { background:var(--vc-surface-alt); border:2px solid var(--vc-border); border-radius:6px; padding:14px 20px; font-family:var(--vc-mono); font-size:16px; font-weight:500; text-align:center; margin:14px 0; color:var(--vc-ink); overflow-x:auto; }\n.vc-info-box { background:var(--vc-blue-light); border-left:3px solid var(--vc-blue); padding:14px 16px; border-radius:0 6px 6px 0; margin:14px 0; }\n.vc-info-box p { margin:0; font-size:14px; color:var(--vc-ink-secondary); }\n.vc-warning-box { background:var(--vc-yellow-light); border-left:3px solid var(--vc-yellow); padding:14px 16px; border-radius:0 6px 6px 0; margin:14px 0; }\n.vc-example-box { background:var(--vc-surface-alt); border:1px solid var(--vc-border-light); border-radius:6px; padding:16px; margin:14px 0; }\n.vc-example-title { font-family:var(--vc-mono); font-size:13px; font-weight:600; color:var(--vc-accent); margin-bottom:8px; }\n.vc-table { width:100%; border-collapse:collapse; margin:14px 0; font-size:13px; }\n.vc-table th, .vc-table td { padding:10px 12px; border:1px solid var(--vc-border-light); text-align:left; }\n.vc-table th { background:var(--vc-surface-alt); font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; color:var(--vc-ink-secondary); }\n.vc-table tr:nth-child(even) { background:var(--vc-surface-alt); }\n@media(max-width:600px) { .vc-table { font-size:12px; } .vc-table th, .vc-table td { padding:8px; } }\n\n\/* \u2500\u2500 FAQ \u2500\u2500 *\/\n.vc-faq-list { display:flex; flex-direction:column; gap:8px; margin-top:20px; }\n.vc-faq-item { border:1px solid var(--vc-border-light); border-radius:6px; overflow:hidden; }\n.vc-faq-q { width:100%; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 16px; border:none; background:var(--vc-surface-alt); cursor:pointer; font-family:var(--vc-font); font-size:15px; font-weight:600; color:var(--vc-ink); text-align:left; transition:background 0.15s; }\n.vc-faq-q:hover { background:#ede9e3; }\n.vc-faq-chevron { width:16px; height:16px; color:var(--vc-ink-muted); flex-shrink:0; transition:transform 0.25s; }\n.vc-faq-item.vc-open .vc-faq-chevron { transform:rotate(180deg); }\n.vc-faq-a { max-height:0; overflow:hidden; transition:max-height 0.35s; }\n.vc-faq-item.vc-open .vc-faq-a { max-height:1200px; }\n.vc-faq-a-inner { padding:14px 16px; border-top:1px solid var(--vc-border-light); font-size:14px; color:var(--vc-ink-secondary); }\n.vc-faq-a-inner p { margin:0 0 8px; }\n.vc-faq-a-inner p:last-child { margin-bottom:0; }\n.vc-faq-a-inner ul { margin:4px 0 8px 16px; padding:0; }\n.vc-faq-a-inner li { margin-bottom:3px; }\n\n\/* \u2500\u2500 RELATED \u2500\u2500 *\/\n.vc-related { display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }\n.vc-related-link { display:inline-block; padding:8px 16px; font-family:var(--vc-font); font-size:13px; font-weight:600; background:var(--vc-surface-alt); color:var(--vc-ink-secondary); border:1px solid var(--vc-border); border-radius:var(--vc-radius); text-decoration:none; transition:all 0.15s; }\n.vc-related-link:hover { border-color:var(--vc-accent); color:var(--vc-accent); background:var(--vc-accent-light); }\n\n\/* \u2500\u2500 PROMO \u2500\u2500 *\/\n.vc-promo { margin-top:24px; padding:20px; background:linear-gradient(135deg, var(--vc-accent-light), var(--vc-surface)); border:1px solid var(--vc-border); border-radius:var(--vc-radius-lg); display:flex; align-items:center; gap:16px; }\n.vc-promo-text { flex:1; font-size:14px; color:var(--vc-ink-secondary); }\n.vc-promo-text strong { color:var(--vc-ink); }\n.vc-promo-link { padding:8px 20px; font-size:13px; font-weight:700; color:#fff; background:var(--vc-accent); border-radius:var(--vc-radius); text-decoration:none; white-space:nowrap; transition:background 0.15s; }\n.vc-promo-link:hover { background:var(--vc-accent-hover); }\n\n\/* \u2500\u2500 FOOTER \u2500\u2500 *\/\n.vc-footer { text-align:center; padding:32px 16px; font-size:13px; color:var(--vc-ink-muted); }\n.vc-footer a { color:var(--vc-accent); text-decoration:none; }\n.vc-footer a:hover { text-decoration:underline; }\n.vc-footer-links { margin-top:8px; font-size:12px; }\n.vc-footer-links a { margin:0 8px; }\n\n\/* \u2500\u2500 PRINT \u2500\u2500 *\/\n@media print {\n    .vc-section-body { max-height:none!important; }\n    .vc-faq-a { max-height:none!important; }\n    .vc-results { max-height:none!important; padding:24px!important; }\n    .vc-copy-btn, .vc-section-chevron, .vc-faq-chevron, .vc-presets, .vc-promo { display:none!important; }\n}\n<\/style>\n\n<div class=\"vc-calculator\" id=\"vc-ohms-law\">\n\n<!-- Header -->\n<header class=\"vc-header\">\n    <p class=\"vc-header-eyebrow\">Free Engineering Tool<\/p>\n    <h1 class=\"vc-header-title\">Ohm&#8217;s Law Calculator<\/h1>\n    <p class=\"vc-header-subtitle\">Enter any two known electrical parameters \u2014 Voltage, Current, Resistance, or Power \u2014 and instantly calculate all four, plus conductance and energy per hour.<\/p>\n    <div class=\"vc-badges\">\n        <span class=\"vc-badge\">V = I \u00d7 R<\/span>\n        <span class=\"vc-badge\">P = V \u00d7 I<\/span>\n        <span class=\"vc-badge\">Ohm&#8217;s Wheel<\/span>\n    <\/div>\n<\/header>\n\n<!-- Calculator Card -->\n<div class=\"vc-card\">\n    <form class=\"vc-form\" id=\"vc-form\" autocomplete=\"off\">\n        <div class=\"vc-form-grid\">\n            <div class=\"vc-field vc-field-full\">\n                <label class=\"vc-label\" for=\"vc-known\">Known Values<\/label>\n                <select class=\"vc-select\" id=\"vc-known\">\n                    <option value=\"vi\" selected>Voltage (V) + Current (I)<\/option>\n                    <option value=\"vr\">Voltage (V) + Resistance (R)<\/option>\n                    <option value=\"ir\">Current (I) + Resistance (R)<\/option>\n                    <option value=\"pi\">Power (P) + Current (I)<\/option>\n                    <option value=\"pv\">Power (P) + Voltage (V)<\/option>\n                    <option value=\"pr\">Power (P) + Resistance (R)<\/option>\n                <\/select>\n            <\/div>\n            <div class=\"vc-field\" id=\"vc-field-1\">\n                <label class=\"vc-label\" for=\"vc-val1\" id=\"vc-label-1\">Voltage <span class=\"vc-label-hint\">(V)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-val1\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 12\" value=\"12\">\n            <\/div>\n            <div class=\"vc-field\" id=\"vc-field-2\">\n                <label class=\"vc-label\" for=\"vc-val2\" id=\"vc-label-2\">Current <span class=\"vc-label-hint\">(A)<\/span><\/label>\n                <input class=\"vc-input\" type=\"number\" id=\"vc-val2\" inputmode=\"decimal\" step=\"any\" min=\"0\" placeholder=\"e.g. 2\" value=\"2\">\n            <\/div>\n        <\/div>\n\n        <!-- Presets -->\n        <div class=\"vc-presets\">\n            <div class=\"vc-presets-label\">Quick presets<\/div>\n            <button type=\"button\" class=\"vc-preset-btn\" data-k=\"vi\" data-v1=\"12\" data-v2=\"2\">12V 2A<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-k=\"vi\" data-v1=\"230\" data-v2=\"10\">230V 10A<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-k=\"vr\" data-v1=\"5\" data-v2=\"100\">5V 100\u03a9<\/button>\n            <button type=\"button\" class=\"vc-preset-btn\" data-k=\"pv\" data-v1=\"100\" data-v2=\"230\">100W 230V<\/button>\n        <\/div>\n    <\/form>\n\n    <!-- Results -->\n    <div class=\"vc-results\" id=\"vc-results\">\n        <div class=\"vc-results-head\">\n            <h2 class=\"vc-results-title\">Results<\/h2>\n            <button type=\"button\" class=\"vc-copy-btn\" id=\"vc-copy-btn\">\n                <svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg>\n                Copy\n            <\/button>\n        <\/div>\n        <div class=\"vc-result-grid\" id=\"vc-result-grid\">\n            <div class=\"vc-rcard\" id=\"vc-rc-v\">\n                <div class=\"vc-rcard-label\">Voltage<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-v\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\" id=\"vc-rc-i\">\n                <div class=\"vc-rcard-label\">Current<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-i\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\" id=\"vc-rc-r\">\n                <div class=\"vc-rcard-label\">Resistance<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-r\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\" id=\"vc-rc-p\">\n                <div class=\"vc-rcard-label\">Power<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-p\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Conductance (G = 1\/R)<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-g\">\u2014<\/div>\n            <\/div>\n            <div class=\"vc-rcard\">\n                <div class=\"vc-rcard-label\">Energy per Hour<\/div>\n                <div class=\"vc-rcard-value\" id=\"vc-r-wh\">\u2014<\/div>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Theory & Reference -->\n<div class=\"vc-section vc-open\" id=\"vc-sec-theory\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"true\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\ud83d\udcd8<\/span>\n            <span class=\"vc-section-title\">Theory &amp; Formulas<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner vc-theory\">\n            <h3>Ohm&#8217;s Law<\/h3>\n            <p>Ohm&#8217;s Law defines the fundamental relationship between voltage, current, and resistance in an electrical circuit:<\/p>\n            <div class=\"vc-formula-box\" id=\"vc-katex-1\"><\/div>\n\n            <h3>Power Relationships<\/h3>\n            <p>Electrical power can be calculated from any combination of two known values:<\/p>\n            <div class=\"vc-formula-box\" id=\"vc-katex-2\"><\/div>\n\n            <h3>The Ohm&#8217;s Law Wheel<\/h3>\n            <p>All twelve formulas derived from V = IR and P = VI:<\/p>\n            <table class=\"vc-table\">\n                <thead><tr><th>Find<\/th><th>From V &amp; I<\/th><th>From V &amp; R<\/th><th>From I &amp; R<\/th><th>From P<\/th><\/tr><\/thead>\n                <tbody>\n                    <tr><td><strong>V<\/strong><\/td><td>\u2014<\/td><td>\u2014<\/td><td>V = I \u00d7 R<\/td><td>V = P \/ I or \u221a(P \u00d7 R)<\/td><\/tr>\n                    <tr><td><strong>I<\/strong><\/td><td>\u2014<\/td><td>I = V \/ R<\/td><td>\u2014<\/td><td>I = P \/ V or \u221a(P \/ R)<\/td><\/tr>\n                    <tr><td><strong>R<\/strong><\/td><td>R = V \/ I<\/td><td>\u2014<\/td><td>\u2014<\/td><td>R = V\u00b2 \/ P or P \/ I\u00b2<\/td><\/tr>\n                    <tr><td><strong>P<\/strong><\/td><td>P = V \u00d7 I<\/td><td>P = V\u00b2 \/ R<\/td><td>P = I\u00b2 \u00d7 R<\/td><td>\u2014<\/td><\/tr>\n                <\/tbody>\n            <\/table>\n\n            <h3>Practical Example<\/h3>\n            <div class=\"vc-example-box\">\n                <div class=\"vc-example-title\">Example \u2014 LED Resistor Calculation<\/div>\n                <p><strong>Given:<\/strong> Supply = 12 V, LED forward voltage = 2 V, desired current = 20 mA<\/p>\n                <p>Voltage across resistor: 12 \u2212 2 = 10 V<\/p>\n                <p>R = V \/ I = 10 \/ 0.020 = <strong>500 \u03a9<\/strong><\/p>\n                <p>P = V \u00d7 I = 10 \u00d7 0.020 = <strong>0.2 W<\/strong> (use \u00bcW resistor minimum)<\/p>\n            <\/div>\n\n            <div class=\"vc-info-box\">\n                <p><strong>Tip:<\/strong> Conductance (G) is the reciprocal of resistance: G = 1\/R, measured in siemens (S). It&#8217;s useful in parallel circuit analysis where conductances add directly: G<sub>total<\/sub> = G\u2081 + G\u2082 + G\u2083.<\/p>\n            <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Related Calculators -->\n<div class=\"vc-section\" id=\"vc-sec-related\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\ud83d\udd17<\/span>\n            <span class=\"vc-section-title\">Related Calculators<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-related\">\n                <a class=\"vc-related-link\" href=\"\/calculators\/cable-cross-section\/\">Cable Cross-Section Calculator<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/motor-slip-calculator\/\">Motor Slip Calculator<\/a>\n                <a class=\"vc-related-link\" href=\"\/calculators\/power-factor-correction\/\">Power Factor Calculator<\/a>\n                <\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- FAQ -->\n<div class=\"vc-section\" id=\"vc-sec-faq\">\n    <button type=\"button\" class=\"vc-section-toggle\" aria-expanded=\"false\">\n        <span class=\"vc-section-toggle-text\">\n            <span class=\"vc-section-icon\">\u2753<\/span>\n            <span class=\"vc-section-title\">Frequently Asked Questions<\/span>\n        <\/span>\n        <svg class=\"vc-section-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg>\n    <\/button>\n    <div class=\"vc-section-body\">\n        <div class=\"vc-section-inner\">\n            <div class=\"vc-faq-list\" id=\"vc-faq-list\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n\n<!-- Promo -->\n<div class=\"vc-promo\">\n    <div class=\"vc-promo-text\">\n        <strong>Vibromera \u2014 Portable Balancing &amp; Vibration Analysis<\/strong><br>\n        Professional field balancing instruments and software. Used in 50+ countries for industrial maintenance.\n    <\/div>\n    <a class=\"vc-promo-link\" href=\"https:\/\/vibromera.eu\/\" target=\"_blank\" rel=\"noopener\">Learn More<\/a>\n<\/div>\n\n<!-- Footer -->\n<footer class=\"vc-footer\">\n    <p>\u00a9 2024\u20132025 <a href=\"https:\/\/vibromera.eu\/\">Vibromera<\/a> \u2014 Engineering Calculators<\/p>\n    <p style=\"font-size:12px;margin-top:4px;\">Ohm&#8217;s Law: V = I \u00d7 R. Last updated: February 2025<\/p>\n    <div class=\"vc-footer-links\">\n        <a href=\"\/calculators\/engineering-calculators\/\">All Calculators<\/a>\n        <a href=\"https:\/\/vibromera.eu\/contacts\/\">Contact<\/a>\n    <\/div>\n<\/footer>\n\n<\/div>\n\n<script src=\"https:\/\/cdn.jsdelivr.net\/npm\/katex@0.16.11\/dist\/katex.min.js\"><\/script>\n<script>\n(function() {\n    'use strict';\n\n    var SLUG = 'ohms-law-calculator';\n\n    \/* Input configurations per \"known\" selection *\/\n    var CONFIGS = {\n        vi: { l1: 'Voltage', h1: '(V)', p1: 'e.g. 12', l2: 'Current', h2: '(A)', p2: 'e.g. 2' },\n        vr: { l1: 'Voltage', h1: '(V)', p1: 'e.g. 5',  l2: 'Resistance', h2: '(\u03a9)', p2: 'e.g. 100' },\n        ir: { l1: 'Current', h1: '(A)', p1: 'e.g. 2',  l2: 'Resistance', h2: '(\u03a9)', p2: 'e.g. 6' },\n        pi: { l1: 'Power',   h1: '(W)', p1: 'e.g. 100', l2: 'Current', h2: '(A)', p2: 'e.g. 0.5' },\n        pv: { l1: 'Power',   h1: '(W)', p1: 'e.g. 100', l2: 'Voltage', h2: '(V)', p2: 'e.g. 230' },\n        pr: { l1: 'Power',   h1: '(W)', p1: 'e.g. 100', l2: 'Resistance', h2: '(\u03a9)', p2: 'e.g. 50' }\n    };\n\n    function $(id) { return document.getElementById(id); }\n    function fmt(n, d) {\n        if (isNaN(n) || !isFinite(n)) return '\u2014';\n        if (Math.abs(n) >= 1e6) return n.toExponential(3);\n        if (Math.abs(n) < 0.001 && n !== 0) return n.toExponential(3);\n        var f = n.toFixed(d === undefined ? 4 : d);\n        return f.replace(\/(\\.\\d*?)0+$\/, '$1').replace(\/\\.$\/, '');\n    }\n    function fmtSmart(n) {\n        if (isNaN(n) || !isFinite(n)) return '\u2014';\n        if (Math.abs(n) >= 1e6) return n.toExponential(3);\n        if (Math.abs(n) < 0.001 && n !== 0) return n.toExponential(3);\n        if (Math.abs(n) >= 1000) return fmt(n, 1);\n        if (Math.abs(n) >= 1) return fmt(n, 3);\n        return fmt(n, 4);\n    }\n\n    function updateLabels() {\n        var k = $('vc-known').value;\n        var cfg = CONFIGS[k];\n        $('vc-label-1').innerHTML = cfg.l1 + ' <span class=\"vc-label-hint\">' + cfg.h1 + '<\/span>';\n        $('vc-label-2').innerHTML = cfg.l2 + ' <span class=\"vc-label-hint\">' + cfg.h2 + '<\/span>';\n        $('vc-val1').placeholder = cfg.p1;\n        $('vc-val2').placeholder = cfg.p2;\n    }\n\n    \/* \u2500\u2500 CALCULATION \u2500\u2500 *\/\n    function calculate() {\n        var k = $('vc-known').value;\n        var v1 = parseFloat($('vc-val1').value);\n        var v2 = parseFloat($('vc-val2').value);\n\n        if (isNaN(v1) || isNaN(v2) || v1 < 0 || v2 < 0) {\n            $('vc-results').classList.remove('vc-visible');\n            return;\n        }\n\n        var V, I, R, P;\n        var calculated = []; \/\/ which params were calculated\n\n        switch (k) {\n            case 'vi':\n                V = v1; I = v2;\n                if (I === 0) { $('vc-results').classList.remove('vc-visible'); return; }\n                R = V \/ I; P = V * I;\n                calculated = ['r', 'p'];\n                break;\n            case 'vr':\n                V = v1; R = v2;\n                if (R === 0) { $('vc-results').classList.remove('vc-visible'); return; }\n                I = V \/ R; P = V * V \/ R;\n                calculated = ['i', 'p'];\n                break;\n            case 'ir':\n                I = v1; R = v2;\n                V = I * R; P = I * I * R;\n                calculated = ['v', 'p'];\n                break;\n            case 'pi':\n                P = v1; I = v2;\n                if (I === 0) { $('vc-results').classList.remove('vc-visible'); return; }\n                V = P \/ I; R = P \/ (I * I);\n                calculated = ['v', 'r'];\n                break;\n            case 'pv':\n                P = v1; V = v2;\n                if (V === 0) { $('vc-results').classList.remove('vc-visible'); return; }\n                I = P \/ V; R = V * V \/ P;\n                calculated = ['i', 'r'];\n                break;\n            case 'pr':\n                P = v1; R = v2;\n                if (R === 0) { $('vc-results').classList.remove('vc-visible'); return; }\n                I = Math.sqrt(P \/ R); V = Math.sqrt(P * R);\n                calculated = ['v', 'i'];\n                break;\n        }\n\n        var G = R > 0 ? 1 \/ R : Infinity;\n        var Wh = P; \/\/ energy per hour = power \u00d7 1h\n\n        \/\/ Display\n        $('vc-r-v').innerHTML = fmtSmart(V) + ' <span class=\"vc-rcard-unit\">V<\/span>';\n        $('vc-r-i').innerHTML = fmtSmart(I) + ' <span class=\"vc-rcard-unit\">A<\/span>';\n        $('vc-r-r').innerHTML = fmtSmart(R) + ' <span class=\"vc-rcard-unit\">\u03a9<\/span>';\n        $('vc-r-p').innerHTML = fmtSmart(P) + ' <span class=\"vc-rcard-unit\">W<\/span>';\n        $('vc-r-g').innerHTML = fmtSmart(G) + ' <span class=\"vc-rcard-unit\">S<\/span>';\n        $('vc-r-wh').innerHTML = fmtSmart(Wh) + ' <span class=\"vc-rcard-unit\">Wh<\/span>';\n\n        \/\/ Highlight calculated cards\n        ['v', 'i', 'r', 'p'].forEach(function(param) {\n            var card = $('vc-rc-' + param);\n            card.className = 'vc-rcard';\n            if (calculated.indexOf(param) !== -1) {\n                card.classList.add('vc-rcard-calculated');\n            }\n        });\n\n        \/\/ Make the first calculated one primary (full width)\n        if (calculated.length > 0) {\n            var primaryCard = $('vc-rc-' + calculated[0]);\n            primaryCard.classList.add('vc-rcard-primary');\n            primaryCard.classList.remove('vc-rcard-calculated');\n        }\n\n        $('vc-results').classList.add('vc-visible');\n\n        \/\/ URL params\n        var u = new URL(window.location);\n        u.searchParams.set('known', k);\n        u.searchParams.set('val1', v1);\n        u.searchParams.set('val2', v2);\n        history.replaceState(null, '', u.toString());\n\n        \/\/ History\n        saveHistory({\n            known: k, val1: v1, val2: v2,\n            _summary: 'V=' + fmtSmart(V) + ' I=' + fmtSmart(I) + ' R=' + fmtSmart(R) + ' P=' + fmtSmart(P)\n        });\n    }\n\n    \/* \u2500\u2500 KNOWN CHANGE \u2500\u2500 *\/\n    $('vc-known').addEventListener('change', function() {\n        updateLabels();\n        $('vc-val1').value = '';\n        $('vc-val2').value = '';\n        $('vc-results').classList.remove('vc-visible');\n    });\n\n    \/* \u2500\u2500 PRESETS \u2500\u2500 *\/\n    document.querySelectorAll('.vc-preset-btn').forEach(function(btn) {\n        btn.addEventListener('click', function(e) {\n            e.preventDefault();\n            $('vc-known').value = this.getAttribute('data-k');\n            updateLabels();\n            $('vc-val1').value = this.getAttribute('data-v1');\n            $('vc-val2').value = this.getAttribute('data-v2');\n            calculate();\n        });\n    });\n\n    \/* \u2500\u2500 AUTO-CALCULATE \u2500\u2500 *\/\n    $('vc-form').addEventListener('input', calculate);\n    $('vc-form').addEventListener('change', function(e) {\n        if (e.target.id !== 'vc-known') calculate();\n    });\n\n    \/* \u2500\u2500 COPY \u2500\u2500 *\/\n    $('vc-copy-btn').addEventListener('click', function() {\n        var text = \"Ohm's Law Calculation\\n\" +\n            '\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\n' +\n            'Voltage: ' + $('vc-r-v').textContent + '\\n' +\n            'Current: ' + $('vc-r-i').textContent + '\\n' +\n            'Resistance: ' + $('vc-r-r').textContent + '\\n' +\n            'Power: ' + $('vc-r-p').textContent + '\\n' +\n            'Conductance: ' + $('vc-r-g').textContent + '\\n' +\n            'Energy\/h: ' + $('vc-r-wh').textContent + '\\n' +\n            '\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\\n' +\n            'vibromera.eu\/calculators\/ohms-law-calculator\/';\n\n        if (navigator.clipboard) {\n            navigator.clipboard.writeText(text).then(function() {\n                var btn = $('vc-copy-btn');\n                btn.classList.add('vc-copied');\n                btn.innerHTML = '<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Copied!';\n                setTimeout(function() {\n                    btn.classList.remove('vc-copied');\n                    btn.innerHTML = '<svg width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><rect x=\"9\" y=\"9\" width=\"13\" height=\"13\" rx=\"2\"\/><path d=\"M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1\"\/><\/svg> Copy';\n                }, 2000);\n            });\n        }\n    });\n\n    \/* \u2500\u2500 COLLAPSIBLE SECTIONS \u2500\u2500 *\/\n    document.querySelectorAll('.vc-section-toggle').forEach(function(btn) {\n        btn.addEventListener('click', function() {\n            var section = this.closest('.vc-section');\n            var isOpen = section.classList.contains('vc-open');\n            section.classList.toggle('vc-open');\n            this.setAttribute('aria-expanded', !isOpen);\n        });\n    });\n\n    \/* \u2500\u2500 FAQ \u2500\u2500 *\/\n    var faqData = [\n        { q: \"What is Ohm's Law?\", a: \"<p>Ohm's Law states that the current (I) flowing through a conductor is directly proportional to the voltage (V) across it and inversely proportional to the resistance (R): <strong>V = I \u00d7 R<\/strong>.<\/p><p>Discovered by Georg Simon Ohm in 1827, it is one of the most fundamental laws in electrical engineering and applies to any resistive circuit element.<\/p>\" },\n        { q: 'What is the relationship between V, I, R, and P?', a: \"<p>The four electrical parameters are related by Ohm's Law and the power equation:<\/p><ul><li><strong>V = I \u00d7 R<\/strong> \u2014 voltage equals current times resistance<\/li><li><strong>P = V \u00d7 I<\/strong> \u2014 power equals voltage times current<\/li><li><strong>P = I\u00b2 \u00d7 R<\/strong> \u2014 power from current and resistance<\/li><li><strong>P = V\u00b2 \/ R<\/strong> \u2014 power from voltage and resistance<\/li><\/ul><p>Knowing any two of the four values (V, I, R, P) allows you to calculate the other two.<\/p>\" },\n        { q: 'How do series and parallel resistances differ?', a: '<p><strong>Series connection:<\/strong> Resistances add directly.<\/p><ul><li>R<sub>total<\/sub> = R\u2081 + R\u2082 + R\u2083 + ...<\/li><li>Same current flows through all resistors<\/li><li>Voltage divides across resistors<\/li><\/ul><p><strong>Parallel connection:<\/strong> Reciprocals add.<\/p><ul><li>1\/R<sub>total<\/sub> = 1\/R\u2081 + 1\/R\u2082 + 1\/R\u2083 + ...<\/li><li>Same voltage across all resistors<\/li><li>Current divides among branches<\/li><\/ul><p>For two parallel resistors: R<sub>total<\/sub> = (R\u2081 \u00d7 R\u2082) \/ (R\u2081 + R\u2082)<\/p>' },\n        { q: 'What is electrical conductance?', a: '<p>Conductance (G) is the reciprocal of resistance: <strong>G = 1\/R<\/strong>. It is measured in <strong>siemens (S)<\/strong>, formerly called mhos (\u2127).<\/p><p>Conductance is particularly useful when analyzing parallel circuits, because conductances in parallel simply add: G<sub>total<\/sub> = G\u2081 + G\u2082 + G\u2083.<\/p><p>A 100 \u03a9 resistor has a conductance of 0.01 S (10 mS).<\/p>' },\n        { q: \"Does Ohm's Law work for AC circuits?\", a: \"<p>Ohm's Law applies to AC circuits when resistance (R) is replaced by <strong>impedance (Z)<\/strong>:<\/p><ul><li>V = I \u00d7 Z (AC version of Ohm's Law)<\/li><li>Z includes resistance (R), inductive reactance (X<sub>L<\/sub> = 2\u03c0fL), and capacitive reactance (X<sub>C<\/sub> = 1\/(2\u03c0fC))<\/li><li>Z = \u221a(R\u00b2 + (X<sub>L<\/sub> \u2212 X<sub>C<\/sub>)\u00b2)<\/li><\/ul><p>For purely resistive AC loads (heaters, incandescent bulbs), V = IR still applies directly. For inductive or capacitive loads, you must use impedance and consider phase angle.<\/p>\" }\n    ];\n\n    var faqList = $('vc-faq-list');\n    faqData.forEach(function(faq) {\n        faqList.innerHTML += '<div class=\"vc-faq-item\"><button type=\"button\" class=\"vc-faq-q\"><span>' + faq.q + '<\/span><svg class=\"vc-faq-chevron\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M6 9l6 6 6-6\"\/><\/svg><\/button><div class=\"vc-faq-a\"><div class=\"vc-faq-a-inner\">' + faq.a + '<\/div><\/div><\/div>';\n    });\n    faqList.addEventListener('click', function(e) {\n        var btn = e.target.closest('.vc-faq-q');\n        if (!btn) return;\n        btn.closest('.vc-faq-item').classList.toggle('vc-open');\n    });\n\n    \/* \u2500\u2500 HISTORY \u2500\u2500 *\/\n    function saveHistory(entry) {\n        var key = 'vc_history_' + SLUG;\n        var arr = [];\n        try { arr = JSON.parse(localStorage.getItem(key)) || []; } catch(e) {}\n        entry._ts = new Date().toISOString();\n        arr.unshift(entry);\n        if (arr.length > 10) arr = arr.slice(0, 10);\n        try { localStorage.setItem(key, JSON.stringify(arr)); } catch(e) {}\n    }\n\n    \/* \u2500\u2500 URL PARAMS \u2500\u2500 *\/\n    function loadParams() {\n        var p = new URLSearchParams(window.location.search);\n        if (p.has('known')) $('vc-known').value = p.get('known');\n        if (p.has('val1')) $('vc-val1').value = p.get('val1');\n        if (p.has('val2')) $('vc-val2').value = p.get('val2');\n    }\n\n    \/* \u2500\u2500 KATEX \u2500\u2500 *\/\n    function renderFormulas() {\n        try {\n            katex.render('V = I \\\\times R \\\\qquad I = \\\\frac{V}{R} \\\\qquad R = \\\\frac{V}{I}', $('vc-katex-1'), { displayMode: true, throwOnError: false });\n            katex.render('P = V \\\\times I = I^2 \\\\times R = \\\\frac{V^2}{R}', $('vc-katex-2'), { displayMode: true, throwOnError: false });\n        } catch(e) {}\n    }\n\n    \/* \u2500\u2500 INIT \u2500\u2500 *\/\n    function init() {\n        loadParams();\n        updateLabels();\n        renderFormulas();\n        calculate();\n    }\n\n    if (document.readyState === 'loading') {\n        document.addEventListener('DOMContentLoaded', init);\n    } else {\n        init();\n    }\n})();\n<\/script>\n","protected":false},"excerpt":{"rendered":"<p>\u09ac\u09bf\u09a8\u09be\u09ae\u09c2\u09b2\u09cd\u09af\u09c7 \u0985\u09a8\u09b2\u09be\u0987\u09a8 \u0993\u09b9\u09ae\u09c7\u09b0 \u0986\u0987\u09a8 \u0995\u09cd\u09af\u09be\u09b2\u0995\u09c1\u09b2\u09c7\u099f\u09b0\u0964 \u0985\u09ac\u09b6\u09bf\u09b7\u09cd\u099f\u099f\u09bf \u0997\u09a3\u09a8\u09be \u0995\u09b0\u09a4\u09c7 \u09ad\u09cb\u09b2\u09cd\u099f\u09c7\u099c (V), \u09aa\u09cd\u09b0\u09ac\u09be\u09b9 (A), \u09aa\u09cd\u09b0\u09a4\u09bf\u09b0\u09cb\u09a7 (\u03a9) \u09ac\u09be \u09b6\u0995\u09cd\u09a4\u09bf (W) \u098f\u09b0 \u09ae\u09a7\u09cd\u09af\u09c7 \u09af\u09c7 \u0995\u09cb\u09a8\u0993 \u09a6\u09c1\u099f\u09bf \u09aa\u09cd\u09b0\u09ac\u09c7\u09b6 \u0995\u09b0\u09c1\u09a8\u0964 \u09aa\u09b0\u09bf\u099a\u09be\u09b2\u09a8\u09be \u098f\u09ac\u0982 \u09b6\u0995\u09cd\u09a4\u09bf \u0985\u09a8\u09cd\u09a4\u09b0\u09cd\u09ad\u09c1\u0995\u09cd\u09a4\u0964<\/p>","protected":false},"featured_media":0,"template":"","meta":{"ai_generated_summary":"","footnotes":""},"categories":[],"tags":[],"class_list":["post-100175","calculator","type-calculator","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100175","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator"}],"about":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/types\/calculator"}],"version-history":[{"count":2,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100175\/revisions"}],"predecessor-version":[{"id":100929,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/calculator\/100175\/revisions\/100929"}],"wp:attachment":[{"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/media?parent=100175"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/categories?post=100175"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/vibromera.eu\/bn\/wp-json\/wp\/v2\/tags?post=100175"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}