Whiz Tools

Kalkulátor poloměru kruhu

Úvod

Poloměr kruhu je jednou z jeho nejzákladnějších vlastností. Je to vzdálenost od středu kruhu k libovolnému bodu na jeho obvodu. Tento kalkulátor vám umožňuje určit poloměr kruhu na základě tří různých vstupních parametrů:

  1. Průměr
  2. Obvod
  3. Plocha

Poskytnutím jakékoli z těchto hodnot můžete vypočítat poloměr pomocí matematických vztahů inherentních v geometrii kruhu.

Vzorec

Poloměr lze vypočítat z průměru, obvodu nebo plochy pomocí následujících vzorců:

  1. Z průměru (dd):

    r=d2r = \frac{d}{2}
  2. Z obvodu (CC):

    r=C2πr = \frac{C}{2\pi}
  3. Z plochy (AA):

    r=Aπr = \sqrt{\frac{A}{\pi}}

Tyto vzorce jsou odvozeny ze základních vlastností kruhu:

  • Průměr: Průměr je dvojnásobek poloměru (d=2rd = 2r).
  • Obvod: Obvod je vzdálenost kolem kruhu (C=2πrC = 2\pi r).
  • Plocha: Plocha uzavřená kruhem (A=πr2A = \pi r^2).

Výpočet

Výpočet poloměru z průměru

Pokud máte průměr, poloměr je jednoduše polovina z něj:

r=d2r = \frac{d}{2}

Příklad:

Pokud je průměr 10 jednotek:

r=102=5 jednotekr = \frac{10}{2} = 5 \text{ jednotek}

Výpočet poloměru z obvodu

Začínáme s vzorcem pro obvod:

C=2πrC = 2\pi r

Řešení pro rr:

r=C2πr = \frac{C}{2\pi}

Příklad:

Pokud je obvod 31.415931.4159 jednotek:

r=31.41592π31.41596.28325 jednotekr = \frac{31.4159}{2\pi} \approx \frac{31.4159}{6.2832} \approx 5 \text{ jednotek}

Výpočet poloměru z plochy

Začínáme s vzorcem pro plochu:

A=πr2A = \pi r^2

Řešení pro rr:

r=Aπr = \sqrt{\frac{A}{\pi}}

Příklad:

Pokud je plocha 78.539878.5398 čtverečních jednotek:

r=78.5398π=78.53983.141625=5 jednotekr = \sqrt{\frac{78.5398}{\pi}} = \sqrt{\frac{78.5398}{3.1416}} \approx \sqrt{25} = 5 \text{ jednotek}

Hraniční případy a validace vstupu

  • Nulové nebo záporné vstupy: Kruh nemůže mít záporný nebo nulový průměr, obvod nebo plochu. Pokud je některá z těchto hodnot nulová nebo záporná, poloměr je nedefinovaný. Kalkulátor v takových případech zobrazí chybovou zprávu.

  • Nekvantitativní vstupy: Kalkulátor vyžaduje kvantitativní vstupy. Nekvantitativní hodnoty (např. písmena nebo symboly) jsou neplatné.

Přesnost a zaokrouhlení

Tento kalkulátor používá aritmetiku s dvojitou přesností pro výpočty. Výsledky jsou obvykle zobrazeny zaokrouhlené na čtyři desetinná místa pro větší přesnost. Při použití matematických konstant jako π\pi kalkulátor využívá plnou přesnost dostupnou v programovacím jazyce nebo prostředí. Buďte si vědomi, že aritmetika s plovoucí desetinnou čárkou může v některých případech zavést malé zaokrouhlovací chyby.

Případové použití

Výpočet poloměru kruhu je zásadní v různých oblastech:

Inženýrství a stavebnictví

  • Navrhování kruhových komponentů: Inženýři často potřebují určit poloměr při navrhování kol, ozubených kol, trubek nebo kupolí.

  • Architektura: Architekti používají poloměr k navrhování oblouků, kupolí a kruhových budov.

Astronomie

  • Planetární orbity: Astronomové vypočítávají poloměr planetárních orbit na základě pozorovacích dat.

  • Nebeské tělesa: Určení velikostí planet, hvězd a dalších nebeských objektů.

Každodenní řešení problémů

  • Umění a design: Umělci a designéři vypočítávají poloměr pro vytváření kruhových vzorů a designů.

  • DIY projekty: Výpočet materiálů potřebných pro kruhové stoly, zahrady nebo fontány.

Matematika a vzdělávání

  • Učení geometrie: Porozumění vlastnostem kruhů je základní v geometrickém vzdělávání.

  • Řešení problémů: Výpočty poloměru jsou běžné v matematických úlohách a soutěžích.

Alternativy

I když je poloměr primární vlastností, někdy jsou jiné vlastnosti kruhu pohodlnější měřit přímo:

  • Měření délky chordy: Užitečné, když máte pevné body na kruhu a potřebujete vypočítat poloměr.

  • Použití plochy sektoru nebo délky oblouku: V případech zahrnujících částečné sekce kruhu.

Historie

Studium kruhů sahá až do starověkých civilizací:

  • Starověká geometrie: Kruh byl studován od dob starých Egypťanů a Babylonců.

  • Euklidovy prvky: Kolem roku 300 př. n. l. Euklid definoval kruh a jeho vlastnosti ve své zásadní práci Prvky.

  • Archimédés: Poskytl metody pro aproximaci (\pi) a vypočítal plochy a objemy související s kruhy a koulemi.

  • Vývoj (\pi): Během staletí matematikové jako Liu Hui, Zu Chongzhi, Aryabhata a nakonec John Wallis a Isaac Newton zdokonalili hodnotu a porozumění (\pi).

Poloměr zůstává základním konceptem nejen v geometrii, ale také v oblasti fyziky, inženýrství a různých aplikovaných věd.

Příklady

Zde jsou příklady kódu v několika programovacích jazycích pro výpočet poloměru z průměru, obvodu a plochy.

Z průměru

Python
## Vypočítat poloměr z průměru
def radius_from_diameter(diameter):
    if diameter <= 0:
        raise ValueError("Průměr musí být větší než nula.")
    return diameter / 2

## Příklad použití
d = 10
r = radius_from_diameter(d)
print(f"Poloměr je {r} jednotek.")
JavaScript
// Vypočítat poloměr z průměru
function radiusFromDiameter(diameter) {
    if (diameter <= 0) {
        throw new Error("Průměr musí být větší než nula.");
    }
    return diameter / 2;
}

// Příklad použití
let d = 10;
let r = radiusFromDiameter(d);
console.log(`Poloměr je ${r} jednotek.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromDiameter(double diameter) {
        if (diameter <= 0) {
            throw new IllegalArgumentException("Průměr musí být větší než nula.");
        }
        return diameter / 2;
    }

    public static void main(String[] args) {
        double d = 10;
        double r = radiusFromDiameter(d);
        System.out.printf("Poloměr je %.2f jednotek.%n", r);
    }
}
C++
// Vypočítat poloměr z průměru
#include <iostream>
#include <stdexcept>

double radiusFromDiameter(double diameter) {
    if (diameter <= 0) {
        throw std::invalid_argument("Průměr musí být větší než nula.");
    }
    return diameter / 2.0;
}

int main() {
    double d = 10.0;
    try {
        double r = radiusFromDiameter(d);
        std::cout << "Poloměr je " << r << " jednotek." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Vypočítat poloměr z průměru
radius_from_diameter <- function(diameter) {
  if (diameter <= 0) {
    stop("Průměr musí být větší než nula.")
  }
  return(diameter / 2)
}

## Příklad použití
d <- 10
r <- radius_from_diameter(d)
cat(sprintf("Poloměr je %.2f jednotek.\n", r))
Ruby
## Vypočítat poloměr z průměru
def radius_from_diameter(diameter)
  raise ArgumentError, "Průměr musí být větší než nula." if diameter <= 0
  diameter / 2.0
end

## Příklad použití
d = 10
r = radius_from_diameter(d)
puts "Poloměr je #{r} jednotek."
PHP
<?php
// Vypočítat poloměr z průměru
function radiusFromDiameter($diameter) {
    if ($diameter <= 0) {
        throw new Exception('Průměr musí být větší než nula.');
    }
    return $diameter / 2;
}

// Příklad použití
$d = 10;
$r = radiusFromDiameter($d);
echo "Poloměr je {$r} jednotek.";
?>
Rust
// Vypočítat poloměr z průměru
fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
    if diameter <= 0.0 {
        return Err("Průměr musí být větší než nula.");
    }
    Ok(diameter / 2.0)
}

fn main() {
    let d = 10.0;
    match radius_from_diameter(d) {
        Ok(r) => println!("Poloměr je {:.2} jednotek.", r),
        Err(e) => println!("{}", e),
    }
}
Swift
import Foundation

// Vypočítat poloměr z průměru
func radiusFromDiameter(_ diameter: Double) throws -> Double {
    if diameter <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Průměr musí být větší než nula."])
    }
    return diameter / 2.0
}

// Příklad použití
do {
    let d = 10.0
    let r = try radiusFromDiameter(d)
    print("Poloměr je \(r) jednotek.")
} catch {
    print(error.localizedDescription)
}

Z obvodu

Python
import math

## Vypočítat poloměr z obvodu
def radius_from_circumference(circumference):
    if circumference <= 0:
        raise ValueError("Obvod musí být větší než nula.")
    return circumference / (2 * math.pi)

## Příklad použití
C = 31.4159
r = radius_from_circumference(C)
print(f"Poloměr je {r:.2f} jednotek.")
JavaScript
// Vypočítat poloměr z obvodu
function radiusFromCircumference(circumference) {
    if (circumference <= 0) {
        throw new Error("Obvod musí být větší než nula.");
    }
    return circumference / (2 * Math.PI);
}

// Příklad použití
let C = 31.4159;
let r = radiusFromCircumference(C);
console.log(`Poloměr je ${r.toFixed(2)} jednotek.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromCircumference(double circumference) {
        if (circumference <= 0) {
            throw new IllegalArgumentException("Obvod musí být větší než nula.");
        }
        return circumference / (2 * Math.PI);
    }

    public static void main(String[] args) {
        double C = 31.4159;
        double r = radiusFromCircumference(C);
        System.out.printf("Poloměr je %.2f jednotek.%n", r);
    }
}
C++
// Vypočítat poloměr z obvodu
#include <iostream>
#include <cmath>
#include <stdexcept>

double radiusFromCircumference(double circumference) {
    if (circumference <= 0) {
        throw std::invalid_argument("Obvod musí být větší než nula.");
    }
    return circumference / (2.0 * M_PI);
}

int main() {
    double C = 31.4159;
    try {
        double r = radiusFromCircumference(C);
        std::cout << "Poloměr je " << r << " jednotek." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Vypočítat poloměr z obvodu
radius_from_circumference <- function(circumference) {
  if (circumference <= 0) {
    stop("Obvod musí být větší než nula.")
  }
  return(circumference / (2 * pi))
}

## Příklad použití
C <- 31.4159
r <- radius_from_circumference(C)
cat(sprintf("Poloměr je %.2f jednotek.\n", r))
Ruby
## Vypočítat poloměr z obvodu
def radius_from_circumference(circumference)
  raise ArgumentError, "Obvod musí být větší než nula." if circumference <= 0
  circumference / (2 * Math::PI)
end

## Příklad použití
C = 31.4159
r = radius_from_circumference(C)
puts "Poloměr je #{format('%.2f', r)} jednotek."
PHP
<?php
// Vypočítat poloměr z obvodu
function radiusFromCircumference($circumference) {
    if ($circumference <= 0) {
        throw new Exception('Obvod musí být větší než nula.');
    }
    return $circumference / (2 * M_PI);
}

// Příklad použití
$C = 31.4159;
$r = radiusFromCircumference($C);
echo "Poloměr je " . round($r, 2) . " jednotek.";
?>
Rust
use std::f64::consts::PI;

// Vypočítat poloměr z obvodu
fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
    if circumference <= 0.0 {
        return Err("Obvod musí být větší než nula.");
    }
    Ok(circumference / (2.0 * PI))
}

fn main() {
    let C = 31.4159;
    match radius_from_circumference(C) {
        Ok(r) => println!("Poloměr je {:.2} jednotek.", r),
        Err(e) => println!("{}", e),
    }
}
Swift
import Foundation

// Vypočítat poloměr z obvodu
func radiusFromCircumference(_ circumference: Double) throws -> Double {
    if circumference <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Obvod musí být větší než nula."])
    }
    return circumference / (2 * Double.pi)
}

// Příklad použití
do {
    let C = 31.4159
    let r = try radiusFromCircumference(C)
    print(String(format: "Poloměr je %.2f jednotek.", r))
} catch {
    print(error.localizedDescription)
}

Z plochy

Python
import math

## Vypočítat poloměr z plochy
def radius_from_area(area):
    if area <= 0:
        raise ValueError("Plocha musí být větší než nula.")
    return math.sqrt(area / math.pi)

## Příklad použití
A = 78.5398
r = radius_from_area(A)
print(f"Poloměr je {r:.2f} jednotek.")
JavaScript
// Vypočítat poloměr z plochy
function radiusFromArea(area) {
    if (area <= 0) {
        throw new Error("Plocha musí být větší než nula.");
    }
    return Math.sqrt(area / Math.PI);
}

// Příklad použití
let A = 78.5398;
let r = radiusFromArea(A);
console.log(`Poloměr je ${r.toFixed(2)} jednotek.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromArea(double area) {
        if (area <= 0) {
            throw new IllegalArgumentException("Plocha musí být větší než nula.");
        }
        return Math.sqrt(area / Math.PI);
    }

    public static void main(String[] args) {
        double A = 78.5398;
        double r = radiusFromArea(A);
        System.out.printf("Poloměr je %.2f jednotek.%n", r);
    }
}
C++
// Vypočítat poloměr z plochy
#include <iostream>
#include <cmath>
#include <stdexcept>

double radiusFromArea(double area) {
    if (area <= 0) {
        throw std::invalid_argument("Plocha musí být větší než nula.");
    }
    return std::sqrt(area / M_PI);
}

int main() {
    double A = 78.5398;
    try {
        double r = radiusFromArea(A);
        std::cout << "Poloměr je " << r << " jednotek." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Vypočítat poloměr z plochy
radius_from_area <- function(area) {
  if (area <= 0) {
    stop("Plocha musí být větší než nula.")
  }
  return(sqrt(area / pi))
}

## Příklad použití
A <- 78.5398
r <- radius_from_area(A)
cat(sprintf("Poloměr je %.2f jednotek.\n", r))
MATLAB
% Vypočítat poloměr z plochy
function r = radius_from_area(area)
    if area <= 0
        error('Plocha musí být větší než nula.');
    end
    r = sqrt(area / pi);
end

% Příklad použití
A = 78.5398;
r = radius_from_area(A);
fprintf('Poloměr je %.2f jednotek.\n', r);
C#
using System;

class CircleRadiusCalculator
{
    public static double RadiusFromArea(double area)
    {
        if (area <= 0)
            throw new ArgumentException("Plocha musí být větší než nula.");
        return Math.Sqrt(area / Math.PI);
    }

    static void Main()
    {
        double A = 78.5398;
        double r = RadiusFromArea(A);
        Console.WriteLine("Poloměr je {0:F2} jednotek.", r);
    }
}
Go
package main

import (
	"fmt"
	"math"
)

func radiusFromArea(area float64) (float64, error) {
	if area <= 0 {
		return 0, fmt.Errorf("Plocha musí být větší než 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("Poloměr je %.2f jednotek.\n", r)
}
Ruby
## Vypočítat poloměr z plochy
def radius_from_area(area)
  raise ArgumentError, "Plocha musí být větší než nula." if area <= 0
  Math.sqrt(area / Math::PI)
end

## Příklad použití
A = 78.5398
r = radius_from_area(A)
puts "Poloměr je #{format('%.2f', r)} jednotek."
PHP
<?php
// Vypočítat poloměr z plochy
function radiusFromArea($area) {
    if ($area <= 0) {
        throw new Exception('Plocha musí být větší než nula.');
    }
    return sqrt($area / M_PI);
}

// Příklad použití
$A = 78.5398;
$r = radiusFromArea($A);
echo "Poloměr je " . round($r, 2) . " jednotek.";
?>
Rust
use std::f64::consts::PI;

// Vypočítat poloměr z plochy
fn radius_from_area(area: f64) -> Result<f64, &'static str> {
    if area <= 0.0 {
        return Err("Plocha musí být větší než nula.");
    }
    Ok((area / PI).sqrt())
}

fn main() {
    let A = 78.5398;
    match radius_from_area(A) {
        Ok(r) => println!("Poloměr je {:.2} jednotek.", r),
        Err(e) => println!("{}", e),
    }
}
Swift
import Foundation

// Vypočítat poloměr z plochy
func radiusFromArea(_ area: Double) throws -> Double {
    if area <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Plocha musí být větší než nula."])
    }
    return sqrt(area / Double.pi)
}

// Příklad použití
do {
    let A = 78.5398
    let r = try radiusFromArea(A)
    print(String(format: "Poloměr je %.2f jednotek.", r))
} catch {
    print(error.localizedDescription)
}

Excel

## Vypočítat poloměr z průměru v buňce B1
=IF(B1>0, B1/2, "Neplatný vstup")

## Vypočítat poloměr z obvodu v buňce B2
=IF(B2>0, B2/(2*PI()), "Neplatný vstup")

## Vypočítat poloměr z plochy v buňce B3
=IF(B3>0, SQRT(B3/PI()), "Neplatný vstup")

Vizualizace

SVG diagram ilustrující vztah mezi poloměrem, průměrem a obvodem:

Poloměr (r) Průměr (d) Obvod (C)

Odkazy

  1. Kruh - Wikipedia
  2. Obvod - Math Is Fun
  3. Plocha kruhu - Khan Academy
  4. Historie (\pi) - Wikipedia
Feedback