Kalkulator polmera kroga
Uvod
Polmer kroga je ena njegovih najbolj temeljnih lastnosti. To je razdalja od središča kroga do katere koli točke na njegovem obodu. Ta kalkulator vam omogoča, da določite polmer kroga na podlagi treh različnih vhodnih parametrov:
- Premer
- Obseg
- Ploščina
Z zagotavljanjem katere koli od teh vrednosti lahko izračunate polmer s pomočjo matematičnih odnosov, ki so inherentni geometriji kroga.
Formula
Polmer lahko izračunamo iz premera, obsega ali ploščine z uporabo naslednjih formul:
-
Iz premera ():
-
Iz obsega ():
-
Iz ploščine ():
Te formule izhajajo iz osnovnih lastnosti kroga:
- Premer: Premer je dvakratni polmer ().
- Obseg: Obseg je razdalja okoli kroga ().
- Ploščina: Ploščina, ki jo obsega krog ().
Izračun
Izračun polmera iz premera
Ob danem premeru je polmer preprosto polovica tega:
Primer:
Če je premer 10 enot:
Izračun polmera iz obsega
Začnemo z formulo za obseg:
Rešujemo za :
Primer:
Če je obseg enot:
Izračun polmera iz ploščine
Začnemo z formulo za ploščino:
Rešujemo za :
Primer:
Če je ploščina kvadratnih enot:
Robni primeri in preverjanje vhodov
-
Ničelni ali negativni vnosi: Krog ne more imeti negativnega ali ničelnega premera, obsega ali ploščine. Če je katera od teh vrednosti ničelna ali negativna, je polmer nedoločen. Kalkulator bo v takšnih primerih prikazal sporočilo o napaki.
-
Neničelni vnosi: Kalkulator zahteva numerične vnose. Neničelne vrednosti (npr. črke ali simboli) so neveljavne.
Natančnost in zaokroževanje
Ta kalkulator uporablja aritmetiko z dvojno natančnostjo za izračune. Rezultati so običajno prikazani zaokroženi na štiri decimalne mesta za večjo natančnost. Pri uporabi matematičnih konstant, kot je , kalkulator uporablja polno natančnost, ki je na voljo v programskem jeziku ali okolju. Bodite pozorni, da lahko aritmetika z decimalnimi številkami v nekaterih primerih privede do majhnih napak pri zaokroževanju.
Uporabniški primeri
Izračun polmera kroga je bistven v različnih področjih:
Inženiring in gradnja
-
Oblikovanje krožnih komponent: Inženirji pogosto potrebujejo določiti polmer pri oblikovanju koles, zobnikov, cevi ali kupol.
-
Arhitektura: Arhitekti uporabljajo polmer za oblikovanje lokov, kupol in krožnih zgradb.
Astronomija
-
Planetarne orbite: Astronomi izračunajo polmer planetarnih orbit na podlagi opazovalnih podatkov.
-
Nebesna telesa: Določanje velikosti planetov, zvezd in drugih nebesnih predmetov.
Vsakodnevno reševanje problemov
-
Umetnost in oblikovanje: Umetniki in oblikovalci izračunajo polmer za ustvarjanje krožnih vzorcev in oblik.
-
DIY projekti: Izračun materialov, potrebnih za krožne mize, vrtove ali fontane.
Matematika in izobraževanje
-
Učenje geometrije: Razumevanje lastnosti krogov je temeljno v izobraževanju o geometriji.
-
Reševanje problemov: Izračuni polmera so pogosti v matematičnih problemih in tekmovanjih.
Alternativne možnosti
Medtem ko je polmer osnovna lastnost, so včasih druge lastnosti kroga bolj priročne za neposredno merjenje:
-
Merjenje dolžine kord: Koristno, ko imate fiksne točke na krogu in potrebujete izračunati polmer.
-
Uporaba površine sektorja ali dolžine loka: V primerih, ki vključujejo delne odseke kroga.
Zgodovina
Študij krogov sega v antične civilizacije:
-
Antična geometrija: Krog so preučevali že v času starih Egipčanov in Babiloncev.
-
Evklidova Elementa: Okoli leta 300 pr. n. št. je Evklid definiral krog in njegove lastnosti v svojem temeljnem delu Elementi.
-
Arhimed: Ponuja metode za približno izračunavanje (\pi) in izračunavanje površin in prostornin, povezanih s krogi in kroglami.
-
Razvoj (\pi): Čez stoletja so matematikom, kot so Liu Hui, Zu Chongzhi, Aryabhata, in na koncu John Wallis in Isaac Newton, izpopolnili vrednost in razumevanje (\pi).
Polmer ostaja temeljni koncept ne le v geometriji, temveč tudi v fiziki, inženirstvu in različnih uporabnih znanostih.
Primeri
Tukaj so primeri kode v več programskih jezikih za izračun polmera iz premera, obsega in ploščine.
Iz premera
Python
## Izračun polmera iz premera
def radius_from_diameter(diameter):
if diameter <= 0:
raise ValueError("Premer mora biti večji od nič.")
return diameter / 2
## Primer uporabe
d = 10
r = radius_from_diameter(d)
print(f"Polmer je {r} enot.")
JavaScript
// Izračun polmera iz premera
function radiusFromDiameter(diameter) {
if (diameter <= 0) {
throw new Error("Premer mora biti večji od nič.");
}
return diameter / 2;
}
// Primer uporabe
let d = 10;
let r = radiusFromDiameter(d);
console.log(`Polmer je ${r} enot.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw new IllegalArgumentException("Premer mora biti večji od nič.");
}
return diameter / 2;
}
public static void main(String[] args) {
double d = 10;
double r = radiusFromDiameter(d);
System.out.printf("Polmer je %.2f enot.%n", r);
}
}
C++
// Izračun polmera iz premera
#include <iostream>
#include <stdexcept>
double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw std::invalid_argument("Premer mora biti večji od nič.");
}
return diameter / 2.0;
}
int main() {
double d = 10.0;
try {
double r = radiusFromDiameter(d);
std::cout << "Polmer je " << r << " enot." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Izračun polmera iz premera
radius_from_diameter <- function(diameter) {
if (diameter <= 0) {
stop("Premer mora biti večji od nič.")
}
return(diameter / 2)
}
## Primer uporabe
d <- 10
r <- radius_from_diameter(d)
cat(sprintf("Polmer je %.2f enot.\n", r))
Ruby
## Izračun polmera iz premera
def radius_from_diameter(diameter)
raise ArgumentError, "Premer mora biti večji od nič." if diameter <= 0
diameter / 2.0
end
## Primer uporabe
d = 10
r = radius_from_diameter(d)
puts "Polmer je #{r} enot."
PHP
<?php
// Izračun polmera iz premera
function radiusFromDiameter($diameter) {
if ($diameter <= 0) {
throw new Exception('Premer mora biti večji od nič.');
}
return $diameter / 2;
}
// Primer uporabe
$d = 10;
$r = radiusFromDiameter($d);
echo "Polmer je {$r} enot.";
?>
Rust
// Izračun polmera iz premera
fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
if diameter <= 0.0 {
return Err("Premer mora biti večji od nič.");
}
Ok(diameter / 2.0)
}
fn main() {
let d = 10.0;
match radius_from_diameter(d) {
Ok(r) => println!("Polmer je {:.2} enot.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Izračun polmera iz premera
func radiusFromDiameter(_ diameter: Double) throws -> Double {
if diameter <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Premer mora biti večji od nič."])
}
return diameter / 2.0
}
// Primer uporabe
do {
let d = 10.0
let r = try radiusFromDiameter(d)
print("Polmer je \(r) enot.")
} catch {
print(error.localizedDescription)
}
Iz obsega
Python
import math
## Izračun polmera iz obsega
def radius_from_circumference(circumference):
if circumference <= 0:
raise ValueError("Obseg mora biti večji od nič.")
return circumference / (2 * math.pi)
## Primer uporabe
C = 31.4159
r = radius_from_circumference(C)
print(f"Polmer je {r:.2f} enot.")
JavaScript
// Izračun polmera iz obsega
function radiusFromCircumference(circumference) {
if (circumference <= 0) {
throw new Error("Obseg mora biti večji od nič.");
}
return circumference / (2 * Math.PI);
}
// Primer uporabe
let C = 31.4159;
let r = radiusFromCircumference(C);
console.log(`Polmer je ${r.toFixed(2)} enot.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw new IllegalArgumentException("Obseg mora biti večji od nič.");
}
return circumference / (2 * Math.PI);
}
public static void main(String[] args) {
double C = 31.4159;
double r = radiusFromCircumference(C);
System.out.printf("Polmer je %.2f enot.%n", r);
}
}
C++
// Izračun polmera iz obsega
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw std::invalid_argument("Obseg mora biti večji od nič.");
}
return circumference / (2.0 * M_PI);
}
int main() {
double C = 31.4159;
try {
double r = radiusFromCircumference(C);
std::cout << "Polmer je " << r << " enot." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Izračun polmera iz obsega
radius_from_circumference <- function(circumference) {
if (circumference <= 0) {
stop("Obseg mora biti večji od nič.")
}
return(circumference / (2 * pi))
}
## Primer uporabe
C <- 31.4159
r <- radius_from_circumference(C)
cat(sprintf("Polmer je %.2f enot.\n", r))
Ruby
## Izračun polmera iz obsega
def radius_from_circumference(circumference)
raise ArgumentError, "Obseg mora biti večji od nič." if circumference <= 0
circumference / (2 * Math::PI)
end
## Primer uporabe
C = 31.4159
r = radius_from_circumference(C)
puts "Polmer je #{format('%.2f', r)} enot."
PHP
<?php
// Izračun polmera iz obsega
function radiusFromCircumference($circumference) {
if ($circumference <= 0) {
throw new Exception('Obseg mora biti večji od nič.');
}
return $circumference / (2 * M_PI);
}
// Primer uporabe
$C = 31.4159;
$r = radiusFromCircumference($C);
echo "Polmer je " . round($r, 2) . " enot.";
?>
Rust
use std::f64::consts::PI;
// Izračun polmera iz obsega
fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
if circumference <= 0.0 {
return Err("Obseg mora biti večji od nič.");
}
Ok(circumference / (2.0 * PI))
}
fn main() {
let C = 31.4159;
match radius_from_circumference(C) {
Ok(r) => println!("Polmer je {:.2} enot.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Izračun polmera iz obsega
func radiusFromCircumference(_ circumference: Double) throws -> Double {
if circumference <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Obseg mora biti večji od nič."])
}
return circumference / (2 * Double.pi)
}
// Primer uporabe
do {
let C = 31.4159
let r = try radiusFromCircumference(C)
print(String(format: "Polmer je %.2f enot.", r))
} catch {
print(error.localizedDescription)
}
Iz ploščine
Python
import math
## Izračun polmera iz ploščine
def radius_from_area(area):
if area <= 0:
raise ValueError("Ploščina mora biti večja od nič.")
return math.sqrt(area / math.pi)
## Primer uporabe
A = 78.5398
r = radius_from_area(A)
print(f"Polmer je {r:.2f} enot.")
JavaScript
// Izračun polmera iz ploščine
function radiusFromArea(area) {
if (area <= 0) {
throw new Error("Ploščina mora biti večja od nič.");
}
return Math.sqrt(area / Math.PI);
}
// Primer uporabe
let A = 78.5398;
let r = radiusFromArea(A);
console.log(`Polmer je ${r.toFixed(2)} enot.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromArea(double area) {
if (area <= 0) {
throw new IllegalArgumentException("Ploščina mora biti večja od nič.");
}
return Math.sqrt(area / Math.PI);
}
public static void main(String[] args) {
double A = 78.5398;
double r = radiusFromArea(A);
System.out.printf("Polmer je %.2f enot.%n", r);
}
}
C++
// Izračun polmera iz ploščine
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromArea(double area) {
if (area <= 0) {
throw std::invalid_argument("Ploščina mora biti večja od nič.");
}
return std::sqrt(area / M_PI);
}
int main() {
double A = 78.5398;
try {
double r = radiusFromArea(A);
std::cout << "Polmer je " << r << " enot." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Izračun polmera iz ploščine
radius_from_area <- function(area) {
if (area <= 0) {
stop("Ploščina mora biti večja od nič.")
}
return(sqrt(area / pi))
}
## Primer uporabe
A <- 78.5398
r <- radius_from_area(A)
cat(sprintf("Polmer je %.2f enot.\n", r))
MATLAB
% Izračun polmera iz ploščine
function r = radius_from_area(area)
if area <= 0
error('Ploščina mora biti večja od nič.');
end
r = sqrt(area / pi);
end
% Primer uporabe
A = 78.5398;
r = radius_from_area(A);
fprintf('Polmer je %.2f enot.\n', r);
C#
using System;
class CircleRadiusCalculator
{
public static double RadiusFromArea(double area)
{
if (area <= 0)
throw new ArgumentException("Ploščina mora biti večja od nič.");
return Math.Sqrt(area / Math.PI);
}
static void Main()
{
double A = 78.5398;
double r = RadiusFromArea(A);
Console.WriteLine("Polmer je {0:F2} enot.", r);
}
}
Go
package main
import (
"fmt"
"math"
)
func radiusFromArea(area float64) (float64, error) {
if area <= 0 {
return 0, fmt.Errorf("Ploščina mora biti večja od nič.")
}
return math.Sqrt(area / math.Pi), nil
}
func main() {
A := 78.5398
r, err := radiusFromArea(A)
if err != nil {
fmt.Println(err)
return
}
fmt.Printf("Polmer je %.2f enot.\n", r)
}
Ruby
## Izračun polmera iz ploščine
def radius_from_area(area)
raise ArgumentError, "Ploščina mora biti večja od nič." if area <= 0
Math.sqrt(area / Math::PI)
end
## Primer uporabe
A = 78.5398
r = radius_from_area(A)
puts "Polmer je #{format('%.2f', r)} enot."
PHP
<?php
// Izračun polmera iz ploščine
function radiusFromArea($area) {
if ($area <= 0) {
throw new Exception('Ploščina mora biti večja od nič.');
}
return sqrt($area / M_PI);
}
// Primer uporabe
$A = 78.5398;
$r = radiusFromArea($A);
echo "Polmer je " . round($r, 2) . " enot.";
?>
Rust
use std::f64::consts::PI;
// Izračun polmera iz ploščine
fn radius_from_area(area: f64) -> Result<f64, &'static str> {
if area <= 0.0 {
return Err("Ploščina mora biti večja od nič.");
}
Ok((area / PI).sqrt())
}
fn main() {
let A = 78.5398;
match radius_from_area(A) {
Ok(r) => println!("Polmer je {:.2} enot.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Izračun polmera iz ploščine
func radiusFromArea(_ area: Double) throws -> Double {
if area <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Ploščina mora biti večja od nič."])
}
return sqrt(area / Double.pi)
}
// Primer uporabe
do {
let A = 78.5398
let r = try radiusFromArea(A)
print(String(format: "Polmer je %.2f enot.", r))
} catch {
print(error.localizedDescription)
}
Excel
## Izračun polmera iz premera v celici B1
=IF(B1>0, B1/2, "Neveljavna vhodna vrednost")
## Izračun polmera iz obsega v celici B2
=IF(B2>0, B2/(2*PI()), "Neveljavna vhodna vrednost")
## Izračun polmera iz ploščine v celici B3
=IF(B3>0, SQRT(B3/PI()), "Neveljavna vhodna vrednost")
Vizualizacija
SVG diagram, ki prikazuje odnos med polmerom, premerom in obsegom:
Reference
- Krog - Wikipedia
- Obseg - Matematika je zabavna
- Ploščina kroga - Khanova akademija
- Zgodovina (\pi) - Wikipedia