Kalkulačka polomeru kruhu
Úvod
Polomer kruhu je jednou z jeho najzákladnejších vlastností. Je to vzdialenosť od stredu kruhu k akémukoľvek bodu na jeho obvode. Táto kalkulačka vám umožňuje určiť polomer kruhu na základe troch rôznych vstupných parametrov:
- Priemer
- Obvod
- Plocha
Poskytnutím ktorejkoľvek z týchto hodnôt môžete vypočítať polomer pomocou matematických vzťahov, ktoré sú inherentné v geometrii kruhu.
Vzorec
Polomer sa dá vypočítať z priemeru, obvodu alebo plochy pomocou nasledujúcich vzorcov:
-
Z priemeru ():
-
Z obvodu ():
-
Z plochy ():
Tieto vzorce sú odvodené z základných vlastností kruhu:
- Priemer: Priemer je dvojnásobok polomeru ().
- Obvod: Obvod je vzdialenosť okolo kruhu ().
- Plocha: Plocha uzavretá kruhom ().
Výpočet
Vypočítanie polomeru z priemeru
Pri danom priemere je polomer jednoducho jeho polovica:
Príklad:
Ak je priemer 10 jednotiek:
Vypočítanie polomeru z obvodu
Začneme s vzorcom pre obvod:
Riešením pre :
Príklad:
Ak je obvod jednotiek:
Vypočítanie polomeru z plochy
Začneme s vzorcom pre plochu:
Riešením pre :
Príklad:
Ak je plocha štvorcových jednotiek:
Okrajové prípady a overovanie vstupov
-
Nulové alebo negatívne vstupy: Kruh nemôže mať negatívny alebo nulový priemer, obvod alebo plochu. Ak sú niektoré z týchto hodnôt nulové alebo negatívne, polomer je nedefinovaný. Kalkulačka v takýchto prípadoch zobrazí chybovú správu.
-
Nekvantitatívne vstupy: Kalkulačka vyžaduje kvantitatívne vstupy. Nekvantitatívne hodnoty (napr. písmená alebo symboly) sú neplatné.
Presnosť a zaokrúhľovanie
Táto kalkulačka používa aritmetiku s dvojitou presnosťou pre výpočty. Výsledky sú zvyčajne zobrazované zaokrúhlené na štyri desatinné miesta pre väčšiu presnosť. Pri použití matematických konštánt, ako je , kalkulačka využíva plnú presnosť dostupnú v programovacom jazyku alebo prostredí. Buďte si vedomí, že aritmetika s plávajúcou desatinnou čiarkou môže v niektorých prípadoch zaviesť malé zaokrúhľovacie chyby.
Použitie
Vypočítanie polomeru kruhu je nevyhnutné v rôznych oblastiach:
Inžinierstvo a stavebníctvo
-
Navrhovanie kruhových komponentov: Inžinieri často potrebujú určiť polomer pri navrhovaní kolies, ozubených kolies, rúr alebo kupolí.
-
Architektúra: Architekti používajú polomer na navrhovanie oblúkov, kupol a kruhových budov.
Astronómia
-
Planétové orbity: Astronómovia vypočítavajú polomer planétových orbít na základe pozorovacích údajov.
-
Nebeské telesá: Určovanie veľkostí planét, hviezd a iných nebeských objektov.
Každodenné riešenie problémov
-
Umenie a dizajn: Umeleckí a dizajnoví pracovníci vypočítavajú polomer na vytvorenie kruhových vzorov a dizajnov.
-
DIY projekty: Vypočítanie materiálov potrebných na kruhové stoly, záhrady alebo fontány.
Matematika a vzdelávanie
-
Učenie geometrie: Pochopenie vlastností kruhov je základné vo vzdelávaní geometrie.
-
Riešenie problémov: Výpočty polomeru sú bežné v matematických úlohách a súťažiach.
Alternatívy
Aj keď je polomer primárnou vlastnosťou, niekedy sú iné vlastnosti kruhu pohodlnejšie na meranie priamo:
-
Meranie dĺžky chordy: Užitečné, keď máte pevné body na kruhu a potrebujete vypočítať polomer.
-
Používanie plochy sektora alebo dĺžky oblúka: V prípadoch, ktoré sa týkajú čiastkových sekcií kruhu.
História
Štúdium kruhov siaha až do starovekých civilizácií:
-
Staroveká geometria: Kruh sa študoval už od čias starovekých Egypťanov a Babylončanov.
-
Euklidove prvky: Okolo roku 300 pred n. l. Euklid definoval kruh a jeho vlastnosti vo svojom zásadnom diele Prvky.
-
Archimedes: Poskytol metódy na aproximáciu (\pi) a vypočítal plochy a objemy súvisiace s kruhmi a guľami.
-
Vývoj (\pi): Po stáročiach matematikovia ako Liu Hui, Zu Chongzhi, Aryabhata a nakoniec John Wallis a Isaac Newton zdokonalili hodnotu a pochopenie (\pi).
Polomer zostáva základným konceptom nielen v geometrii, ale aj v oblasti fyziky, inžinierstva a rôznych aplikovaných vied.
Príklady
Tu sú príklady kódu v niekoľkých programovacích jazykoch na výpočet polomeru z priemeru, obvodu a plochy.
Z priemeru
Python
## Vypočítajte polomer z priemeru
def radius_from_diameter(diameter):
if diameter <= 0:
raise ValueError("Priemer musí byť väčší ako nula.")
return diameter / 2
## Príklad použitia
d = 10
r = radius_from_diameter(d)
print(f"Polomer je {r} jednotiek.")
JavaScript
// Vypočítajte polomer z priemeru
function radiusFromDiameter(diameter) {
if (diameter <= 0) {
throw new Error("Priemer musí byť väčší ako nula.");
}
return diameter / 2;
}
// Príklad použitia
let d = 10;
let r = radiusFromDiameter(d);
console.log(`Polomer je ${r} jednotiek.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw new IllegalArgumentException("Priemer musí byť väčší ako nula.");
}
return diameter / 2;
}
public static void main(String[] args) {
double d = 10;
double r = radiusFromDiameter(d);
System.out.printf("Polomer je %.2f jednotiek.%n", r);
}
}
C++
// Vypočítajte polomer z priemeru
#include <iostream>
#include <stdexcept>
double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw std::invalid_argument("Priemer musí byť väčší ako nula.");
}
return diameter / 2.0;
}
int main() {
double d = 10.0;
try {
double r = radiusFromDiameter(d);
std::cout << "Polomer je " << r << " jednotiek." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Vypočítajte polomer z priemeru
radius_from_diameter <- function(diameter) {
if (diameter <= 0) {
stop("Priemer musí byť väčší ako nula.")
}
return(diameter / 2)
}
## Príklad použitia
d <- 10
r <- radius_from_diameter(d)
cat(sprintf("Polomer je %.2f jednotiek.\n", r))
Ruby
## Vypočítajte polomer z priemeru
def radius_from_diameter(diameter)
raise ArgumentError, "Priemer musí byť väčší ako nula." if diameter <= 0
diameter / 2.0
end
## Príklad použitia
d = 10
r = radius_from_diameter(d)
puts "Polomer je #{r} jednotiek."
PHP
<?php
// Vypočítajte polomer z priemeru
function radiusFromDiameter($diameter) {
if ($diameter <= 0) {
throw new Exception('Priemer musí byť väčší ako nula.');
}
return $diameter / 2;
}
// Príklad použitia
$d = 10;
$r = radiusFromDiameter($d);
echo "Polomer je {$r} jednotiek.";
?>
Rust
// Vypočítajte polomer z priemeru
fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
if diameter <= 0.0 {
return Err("Priemer musí byť väčší ako nula.");
}
Ok(diameter / 2.0)
}
fn main() {
let d = 10.0;
match radius_from_diameter(d) {
Ok(r) => println!("Polomer je {:.2} jednotiek.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Vypočítajte polomer z priemeru
func radiusFromDiameter(_ diameter: Double) throws -> Double {
if diameter <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Priemer musí byť väčší ako nula."])
}
return diameter / 2.0
}
// Príklad použitia
do {
let d = 10.0
let r = try radiusFromDiameter(d)
print("Polomer je \(r) jednotiek.")
} catch {
print(error.localizedDescription)
}
Z obvodu
Python
import math
## Vypočítajte polomer z obvodu
def radius_from_circumference(circumference):
if circumference <= 0:
raise ValueError("Obvod musí byť väčší ako nula.")
return circumference / (2 * math.pi)
## Príklad použitia
C = 31.4159
r = radius_from_circumference(C)
print(f"Polomer je {r:.2f} jednotiek.")
JavaScript
// Vypočítajte polomer z obvodu
function radiusFromCircumference(circumference) {
if (circumference <= 0) {
throw new Error("Obvod musí byť väčší ako nula.");
}
return circumference / (2 * Math.PI);
}
// Príklad použitia
let C = 31.4159;
let r = radiusFromCircumference(C);
console.log(`Polomer je ${r.toFixed(2)} jednotiek.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw new IllegalArgumentException("Obvod musí byť väčší ako nula.");
}
return circumference / (2 * Math.PI);
}
public static void main(String[] args) {
double C = 31.4159;
double r = radiusFromCircumference(C);
System.out.printf("Polomer je %.2f jednotiek.%n", r);
}
}
C++
// Vypočítajte polomer z obvodu
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw std::invalid_argument("Obvod musí byť väčší ako nula.");
}
return circumference / (2.0 * M_PI);
}
int main() {
double C = 31.4159;
try {
double r = radiusFromCircumference(C);
std::cout << "Polomer je " << r << " jednotiek." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Vypočítajte polomer z obvodu
radius_from_circumference <- function(circumference) {
if (circumference <= 0) {
stop("Obvod musí byť väčší ako nula.")
}
return(circumference / (2 * pi))
}
## Príklad použitia
C <- 31.4159
r <- radius_from_circumference(C)
cat(sprintf("Polomer je %.2f jednotiek.\n", r))
Ruby
## Vypočítajte polomer z obvodu
def radius_from_circumference(circumference)
raise ArgumentError, "Obvod musí byť väčší ako nula." if circumference <= 0
circumference / (2 * Math::PI)
end
## Príklad použitia
C = 31.4159
r = radius_from_circumference(C)
puts "Polomer je #{format('%.2f', r)} jednotiek."
PHP
<?php
// Vypočítajte polomer z obvodu
function radiusFromCircumference($circumference) {
if ($circumference <= 0) {
throw new Exception('Obvod musí byť väčší ako nula.');
}
return $circumference / (2 * M_PI);
}
// Príklad použitia
$C = 31.4159;
$r = radiusFromCircumference($C);
echo "Polomer je " . round($r, 2) . " jednotiek.";
?>
Rust
use std::f64::consts::PI;
// Vypočítajte polomer z obvodu
fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
if circumference <= 0.0 {
return Err("Obvod musí byť väčší ako nula.");
}
Ok(circumference / (2.0 * PI))
}
fn main() {
let C = 31.4159;
match radius_from_circumference(C) {
Ok(r) => println!("Polomer je {:.2} jednotiek.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Vypočítajte polomer z obvodu
func radiusFromCircumference(_ circumference: Double) throws -> Double {
if circumference <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Obvod musí byť väčší ako nula."])
}
return circumference / (2 * Double.pi)
}
// Príklad použitia
do {
let C = 31.4159
let r = try radiusFromCircumference(C)
print(String(format: "Polomer je %.2f jednotiek.", r))
} catch {
print(error.localizedDescription)
}
Z plochy
Python
import math
## Vypočítajte polomer z plochy
def radius_from_area(area):
if area <= 0:
raise ValueError("Plocha musí byť väčšia ako nula.")
return math.sqrt(area / math.pi)
## Príklad použitia
A = 78.5398
r = radius_from_area(A)
print(f"Polomer je {r:.2f} jednotiek.")
JavaScript
// Vypočítajte polomer z plochy
function radiusFromArea(area) {
if (area <= 0) {
throw new Error("Plocha musí byť väčšia ako nula.");
}
return Math.sqrt(area / Math.PI);
}
// Príklad použitia
let A = 78.5398;
let r = radiusFromArea(A);
console.log(`Polomer je ${r.toFixed(2)} jednotiek.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromArea(double area) {
if (area <= 0) {
throw new IllegalArgumentException("Plocha musí byť väčšia ako nula.");
}
return Math.sqrt(area / Math.PI);
}
public static void main(String[] args) {
double A = 78.5398;
double r = radiusFromArea(A);
System.out.printf("Polomer je %.2f jednotiek.%n", r);
}
}
C++
// Vypočítajte polomer z plochy
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromArea(double area) {
if (area <= 0) {
throw std::invalid_argument("Plocha musí byť väčšia ako nula.");
}
return std::sqrt(area / M_PI);
}
int main() {
double A = 78.5398;
try {
double r = radiusFromArea(A);
std::cout << "Polomer je " << r << " jednotiek." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Vypočítajte polomer z plochy
radius_from_area <- function(area) {
if (area <= 0) {
stop("Plocha musí byť väčšia ako nula.")
}
return(sqrt(area / pi))
}
## Príklad použitia
A <- 78.5398
r <- radius_from_area(A)
cat(sprintf("Polomer je %.2f jednotiek.\n", r))
MATLAB
% Vypočítajte polomer z plochy
function r = radius_from_area(area)
if area <= 0
error('Plocha musí byť väčšia ako nula.');
end
r = sqrt(area / pi);
end
% Príklad použitia
A = 78.5398;
r = radius_from_area(A);
fprintf('Polomer je %.2f jednotiek.\n', r);
C#
using System;
class CircleRadiusCalculator
{
public static double RadiusFromArea(double area)
{
if (area <= 0)
throw new ArgumentException("Plocha musí byť väčšia ako nula.");
return Math.Sqrt(area / Math.PI);
}
static void Main()
{
double A = 78.5398;
double r = RadiusFromArea(A);
Console.WriteLine("Polomer je {0:F2} jednotiek.", r);
}
}
Go
package main
import (
"fmt"
"math"
)
func radiusFromArea(area float64) (float64, error) {
if area <= 0 {
return 0, fmt.Errorf("Plocha musí byť väčšia ako nula.")
}
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("Polomer je %.2f jednotiek.\n", r)
}
Ruby
## Vypočítajte polomer z plochy
def radius_from_area(area)
raise ArgumentError, "Plocha musí byť väčšia ako nula." if area <= 0
Math.sqrt(area / Math::PI)
end
## Príklad použitia
A = 78.5398
r = radius_from_area(A)
puts "Polomer je #{format('%.2f', r)} jednotiek."
PHP
<?php
// Vypočítajte polomer z plochy
function radiusFromArea($area) {
if ($area <= 0) {
throw new Exception('Plocha musí byť väčšia ako nula.');
}
return sqrt($area / M_PI);
}
// Príklad použitia
$A = 78.5398;
$r = radiusFromArea($A);
echo "Polomer je " . round($r, 2) . " jednotiek.";
?>
Rust
use std::f64::consts::PI;
// Vypočítajte polomer z plochy
fn radius_from_area(area: f64) -> Result<f64, &'static str> {
if area <= 0.0 {
return Err("Plocha musí byť väčšia ako nula.");
}
Ok((area / PI).sqrt())
}
fn main() {
let A = 78.5398;
match radius_from_area(A) {
Ok(r) => println!("Polomer je {:.2} jednotiek.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Vypočítajte polomer z plochy
func radiusFromArea(_ area: Double) throws -> Double {
if area <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Plocha musí byť väčšia ako nula."])
}
return sqrt(area / Double.pi)
}
// Príklad použitia
do {
let A = 78.5398
let r = try radiusFromArea(A)
print(String(format: "Polomer je %.2f jednotiek.", r))
} catch {
print(error.localizedDescription)
}
Excel
## Vypočítajte polomer z priemeru v bunke B1
=IF(B1>0, B1/2, "Neplatný vstup")
## Vypočítajte polomer z obvodu v bunke B2
=IF(B2>0, B2/(2*PI()), "Neplatný vstup")
## Vypočítajte polomer z plochy v bunke B3
=IF(B3>0, SQRT(B3/PI()), "Neplatný vstup")
Vizualizácia
SVG diagram ilustrujúci vzťah medzi polomerom, priemerom a obvodom:
Referencie
- Kruh - Wikipedia
- Obvod - Math Is Fun
- Plocha kruhu - Khan Academy
- História (\pi) - Wikipedia