Whiz Tools

Kalkulator polumjera kruga

Uvod

Polumjer kruga je jedna od njegovih najosnovnijih osobina. To je udaljenost od središta kruga do bilo koje točke na njegovoj obodu. Ovaj kalkulator vam omogućuje da odredite polumjer kruga na temelju tri različita ulazna parametra:

  1. Promjer
  2. Opseg
  3. Površina

Dajući bilo koju od ovih vrijednosti, možete izračunati polumjer koristeći matematičke odnose svojstvene geometriji kruga.

Formula

Polumjer se može izračunati iz promjera, opsega ili površine koristeći sljedeće formule:

  1. Iz promjera (dd):

    r=d2r = \frac{d}{2}
  2. Iz opsega (CC):

    r=C2πr = \frac{C}{2\pi}
  3. Iz površine (AA):

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

Ove formule su izvedene iz osnovnih svojstava kruga:

  • Promjer: Promjer je dvostruko veći od polumjera (d=2rd = 2r).
  • Opseg: Opseg je udaljenost oko kruga (C=2πrC = 2\pi r).
  • Površina: Površina koju okružuje krug (A=πr2A = \pi r^2).

Izračun

Izračunavanje polumjera iz promjera

Dajući promjer, polumjer je jednostavno polovina promjera:

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

Primjer:

Ako je promjer 10 jedinica:

r=102=5 jedinicar = \frac{10}{2} = 5 \text{ jedinica}

Izračunavanje polumjera iz opsega

Počevši od formule za opseg:

C=2πrC = 2\pi r

Rješavanje za rr:

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

Primjer:

Ako je opseg 31.415931.4159 jedinica:

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

Izračunavanje polumjera iz površine

Počevši od formule za površinu:

A=πr2A = \pi r^2

Rješavanje za rr:

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

Primjer:

Ako je površina 78.539878.5398 kvadratnih jedinica:

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

Rubni slučajevi i validacija ulaza

  • Nulti ili negativni ulazi: Krug ne može imati negativan ili nulti promjer, opseg ili površinu. Ako je bilo koja od ovih vrijednosti nula ili negativna, polumjer je neodređen. Kalkulator će prikazati poruku o grešci u takvim slučajevima.

  • Nenumerički ulazi: Kalkulator zahtijeva numeričke ulaze. Nenumeričke vrijednosti (npr. slova ili simboli) su nevažeće.

Preciznost i zaokruživanje

Ovaj kalkulator koristi aritmetiku s dvostrukom preciznošću za izračune. Rezultati se obično prikazuju zaokruženi na četiri decimalna mjesta radi veće točnosti. Kada se koriste matematičke konstante poput π\pi, kalkulator koristi punu preciznost dostupnu u programskom jeziku ili okruženju. Budite svjesni da aritmetika s pomičnim zarezom može u nekim slučajevima uvesti male pogreške u zaokruživanju.

Upotrebe

Izračunavanje polumjera kruga je ključno u raznim područjima:

Inženjerstvo i građevinarstvo

  • Dizajniranje kružnih komponenti: Inženjeri često trebaju odrediti polumjer prilikom dizajniranja kotača, zupčanika, cijevi ili kupola.

  • Arhitektura: Arhitekti koriste polumjer za dizajn lukova, kupola i kružnih zgrada.

Astronomija

  • Planetarne orbite: Astronomi izračunavaju polumjer planetarnih orbita na temelju opservacijskih podataka.

  • Nebeska tijela: Određivanje veličina planeta, zvijezda i drugih nebeskih objekata.

Svakodnevno rješavanje problema

  • Umjetnost i dizajn: Umjetnici i dizajneri izračunavaju polumjer za stvaranje kružnih uzoraka i dizajna.

  • DIY projekti: Izračunavanje potrebnih materijala za kružne stolove, vrtove ili fontane.

Matematika i obrazovanje

  • Učenje geometrije: Razumijevanje svojstava krugova je temeljno u obrazovanju iz geometrije.

  • Rješavanje problema: Izračuni polumjera su uobičajeni u matematičkim problemima i natjecanjima.

Alternative

Iako je polumjer primarna osobina, ponekad su druge osobine kruga prikladnije za izravno mjerenje:

  • Mjerenje duljine tetive: Korisno kada imate fiksne točke na krugu i trebate izračunati polumjer.

  • Korištenje površine sektora ili duljine luka: U slučajevima koji uključuju djelomične dijelove kruga.

Povijest

Studija krugova datira još iz drevnih civilizacija:

  • Drevna geometrija: Krug se proučavao još od vremena drevnih Egipćana i Babilonaca.

  • Euklidovi elementi: Oko 300. godine prije Krista, Euklid je definirao krug i njegova svojstva u svom znamenitom djelu, Elementi.

  • Arhimed: Pružio je metode za aproksimaciju (\pi) i izračunao površine i volumene povezane s krugovima i kuglama.

  • Razvoj (\pi): Tijekom stoljeća, matematičari poput Liu Huija, Zu Chongzhija, Aryabhate, a na kraju John Wallisa i Isaaca Newtona usavršili su vrijednost i razumijevanje (\pi).

Polumjer ostaje temeljni koncept ne samo u geometriji, već i u fizici, inženjerstvu i raznim primijenjenim znanostima.

Primjeri

Evo primjera koda na više programskih jezika za izračunavanje polumjera iz promjera, opsega i površine.

Iz promjera

Python
## Izračunaj polumjer iz promjera
def radius_from_diameter(diameter):
    if diameter <= 0:
        raise ValueError("Promjer mora biti veći od nule.")
    return diameter / 2

## Primjer korištenja
d = 10
r = radius_from_diameter(d)
print(f"Polumjer je {r} jedinica.")
JavaScript
// Izračunaj polumjer iz promjera
function radiusFromDiameter(diameter) {
    if (diameter <= 0) {
        throw new Error("Promjer mora biti veći od nule.");
    }
    return diameter / 2;
}

// Primjer korištenja
let d = 10;
let r = radiusFromDiameter(d);
console.log(`Polumjer je ${r} jedinica.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromDiameter(double diameter) {
        if (diameter <= 0) {
            throw new IllegalArgumentException("Promjer mora biti veći od nule.");
        }
        return diameter / 2;
    }

    public static void main(String[] args) {
        double d = 10;
        double r = radiusFromDiameter(d);
        System.out.printf("Polumjer je %.2f jedinica.%n", r);
    }
}
C++
// Izračunaj polumjer iz promjera
#include <iostream>
#include <stdexcept>

double radiusFromDiameter(double diameter) {
    if (diameter <= 0) {
        throw std::invalid_argument("Promjer mora biti veći od nule.");
    }
    return diameter / 2.0;
}

int main() {
    double d = 10.0;
    try {
        double r = radiusFromDiameter(d);
        std::cout << "Polumjer je " << r << " jedinica." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Izračunaj polumjer iz promjera
radius_from_diameter <- function(diameter) {
  if (diameter <= 0) {
    stop("Promjer mora biti veći od nule.")
  }
  return(diameter / 2)
}

## Primjer korištenja
d <- 10
r <- radius_from_diameter(d)
cat(sprintf("Polumjer je %.2f jedinica.\n", r))
Ruby
## Izračunaj polumjer iz promjera
def radius_from_diameter(diameter)
  raise ArgumentError, "Promjer mora biti veći od nule." if diameter <= 0
  diameter / 2.0
end

## Primjer korištenja
d = 10
r = radius_from_diameter(d)
puts "Polumjer je #{r} jedinica."
PHP
<?php
// Izračunaj polumjer iz promjera
function radiusFromDiameter($diameter) {
    if ($diameter <= 0) {
        throw new Exception('Promjer mora biti veći od nule.');
    }
    return $diameter / 2;
}

// Primjer korištenja
$d = 10;
$r = radiusFromDiameter($d);
echo "Polumjer je {$r} jedinica.";
?>
Rust
// Izračunaj polumjer iz promjera
fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
    if diameter <= 0.0 {
        return Err("Promjer mora biti veći od nule.");
    }
    Ok(diameter / 2.0)
}

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

// Izračunaj polumjer iz promjera
func radiusFromDiameter(_ diameter: Double) throws -> Double {
    if diameter <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Promjer mora biti veći od nule."])
    }
    return diameter / 2.0
}

// Primjer korištenja
do {
    let d = 10.0
    let r = try radiusFromDiameter(d)
    print("Polumjer je \(r) jedinica.")
} catch {
    print(error.localizedDescription)
}

Iz opsega

Python
import math

## Izračunaj polumjer iz opsega
def radius_from_circumference(circumference):
    if circumference <= 0:
        raise ValueError("Opseg mora biti veći od nule.")
    return circumference / (2 * math.pi)

## Primjer korištenja
C = 31.4159
r = radius_from_circumference(C)
print(f"Polumjer je {r:.2f} jedinica.")
JavaScript
// Izračunaj polumjer iz opsega
function radiusFromCircumference(circumference) {
    if (circumference <= 0) {
        throw new Error("Opseg mora biti veći od nule.");
    }
    return circumference / (2 * Math.PI);
}

// Primjer korištenja
let C = 31.4159;
let r = radiusFromCircumference(C);
console.log(`Polumjer je ${r.toFixed(2)} jedinica.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromCircumference(double circumference) {
        if (circumference <= 0) {
            throw new IllegalArgumentException("Opseg mora biti veći od nule.");
        }
        return circumference / (2 * Math.PI);
    }

    public static void main(String[] args) {
        double C = 31.4159;
        double r = radiusFromCircumference(C);
        System.out.printf("Polumjer je %.2f jedinica.%n", r);
    }
}
C++
// Izračunaj polumjer iz opsega
#include <iostream>
#include <cmath>
#include <stdexcept>

double radiusFromCircumference(double circumference) {
    if (circumference <= 0) {
        throw std::invalid_argument("Opseg mora biti veći od nule.");
    }
    return circumference / (2.0 * M_PI);
}

int main() {
    double C = 31.4159;
    try {
        double r = radiusFromCircumference(C);
        std::cout << "Polumjer je " << r << " jedinica." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Izračunaj polumjer iz opsega
radius_from_circumference <- function(circumference) {
  if (circumference <= 0) {
    stop("Opseg mora biti veći od nule.")
  }
  return(circumference / (2 * pi))
}

## Primjer korištenja
C <- 31.4159
r <- radius_from_circumference(C)
cat(sprintf("Polumjer je %.2f jedinica.\n", r))
Ruby
## Izračunaj polumjer iz opsega
def radius_from_circumference(circumference)
  raise ArgumentError, "Opseg mora biti veći od nule." if circumference <= 0
  circumference / (2 * Math::PI)
end

## Primjer korištenja
C = 31.4159
r = radius_from_circumference(C)
puts "Polumjer je #{format('%.2f', r)} jedinica."
PHP
<?php
// Izračunaj polumjer iz opsega
function radiusFromCircumference($circumference) {
    if ($circumference <= 0) {
        throw new Exception('Opseg mora biti veći od nule.');
    }
    return $circumference / (2 * M_PI);
}

// Primjer korištenja
$C = 31.4159;
$r = radiusFromCircumference($C);
echo "Polumjer je " . round($r, 2) . " jedinica.";
?>
Rust
use std::f64::consts::PI;

// Izračunaj polumjer iz opsega
fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
    if circumference <= 0.0 {
        return Err("Opseg mora biti veći od nule.");
    }
    Ok(circumference / (2.0 * PI))
}

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

// Izračunaj polumjer iz opsega
func radiusFromCircumference(_ circumference: Double) throws -> Double {
    if circumference <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Opseg mora biti veći od nule."])
    }
    return circumference / (2 * Double.pi)
}

// Primjer korištenja
do {
    let C = 31.4159
    let r = try radiusFromCircumference(C)
    print(String(format: "Polumjer je %.2f jedinica.", r))
} catch {
    print(error.localizedDescription)
}

Iz površine

Python
import math

## Izračunaj polumjer iz površine
def radius_from_area(area):
    if area <= 0:
        raise ValueError("Površina mora biti veća od nule.")
    return math.sqrt(area / math.pi)

## Primjer korištenja
A = 78.5398
r = radius_from_area(A)
print(f"Polumjer je {r:.2f} jedinica.")
JavaScript
// Izračunaj polumjer iz površine
function radiusFromArea(area) {
    if (area <= 0) {
        throw new Error("Površina mora biti veća od nule.");
    }
    return Math.sqrt(area / Math.PI);
}

// Primjer korištenja
let A = 78.5398;
let r = radiusFromArea(A);
console.log(`Polumjer je ${r.toFixed(2)} jedinica.`);
Java
public class CircleRadiusCalculator {
    public static double radiusFromArea(double area) {
        if (area <= 0) {
            throw new IllegalArgumentException("Površina mora biti veća od nule.");
        }
        return Math.sqrt(area / Math.PI);
    }

    public static void main(String[] args) {
        double A = 78.5398;
        double r = radiusFromArea(A);
        System.out.printf("Polumjer je %.2f jedinica.%n", r);
    }
}
C++
// Izračunaj polumjer iz površine
#include <iostream>
#include <cmath>
#include <stdexcept>

double radiusFromArea(double area) {
    if (area <= 0) {
        throw std::invalid_argument("Površina mora biti veća od nule.");
    }
    return std::sqrt(area / M_PI);
}

int main() {
    double A = 78.5398;
    try {
        double r = radiusFromArea(A);
        std::cout << "Polumjer je " << r << " jedinica." << std::endl;
    } catch (const std::exception& e) {
        std::cerr << e.what() << std::endl;
    }
    return 0;
}
R
## Izračunaj polumjer iz površine
radius_from_area <- function(area) {
  if (area <= 0) {
    stop("Površina mora biti veća od nule.")
  }
  return(sqrt(area / pi))
}

## Primjer korištenja
A <- 78.5398
r <- radius_from_area(A)
cat(sprintf("Polumjer je %.2f jedinica.\n", r))
MATLAB
% Izračunaj polumjer iz površine
function r = radius_from_area(area)
    if area <= 0
        error('Površina mora biti veća od nule.');
    end
    r = sqrt(area / pi);
end

% Primjer korištenja
A = 78.5398;
r = radius_from_area(A);
fprintf('Polumjer je %.2f jedinica.\n', r);
C#
using System;

class CircleRadiusCalculator
{
    public static double RadiusFromArea(double area)
    {
        if (area <= 0)
            throw new ArgumentException("Površina mora biti veća od nule.");
        return Math.Sqrt(area / Math.PI);
    }

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

import (
	"fmt"
	"math"
)

func radiusFromArea(area float64) (float64, error) {
	if area <= 0 {
		return 0, fmt.Errorf("Površina mora biti veća od nule.")
	}
	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("Polumjer je %.2f jedinica.\n", r)
}
Ruby
## Izračunaj polumjer iz površine
def radius_from_area(area)
  raise ArgumentError, "Površina mora biti veća od nule." if area <= 0
  Math.sqrt(area / Math::PI)
end

## Primjer korištenja
A = 78.5398
r = radius_from_area(A)
puts "Polumjer je #{format('%.2f', r)} jedinica."
PHP
<?php
// Izračunaj polumjer iz površine
function radiusFromArea($area) {
    if ($area <= 0) {
        throw new Exception('Površina mora biti veća od nule.');
    }
    return sqrt($area / M_PI);
}

// Primjer korištenja
$A = 78.5398;
$r = radiusFromArea($A);
echo "Polumjer je " . round($r, 2) . " jedinica.";
?>
Rust
use std::f64::consts::PI;

// Izračunaj polumjer iz površine
fn radius_from_area(area: f64) -> Result<f64, &'static str> {
    if area <= 0.0 {
        return Err("Površina mora biti veća od nule.");
    }
    Ok((area / PI).sqrt())
}

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

// Izračunaj polumjer iz površine
func radiusFromArea(_ area: Double) throws -> Double {
    if area <= 0 {
        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Površina mora biti veća od nule."])
    }
    return sqrt(area / Double.pi)
}

// Primjer korištenja
do {
    let A = 78.5398
    let r = try radiusFromArea(A)
    print(String(format: "Polumjer je %.2f jedinica.", r))
} catch {
    print(error.localizedDescription)
}

Excel

## Izračunaj polumjer iz promjera u ćeliji B1
=IF(B1>0, B1/2, "Nevažeći ulaz")

## Izračunaj polumjer iz opsega u ćeliji B2
=IF(B2>0, B2/(2*PI()), "Nevažeći ulaz")

## Izračunaj polumjer iz površine u ćeliji B3
=IF(B3>0, SQRT(B3/PI()), "Nevažeći ulaz")

Vizualizacija

SVG dijagram koji ilustrira odnos između polumjera, promjera i opsega:

Polumjer (r) Promjer (d) Opseg (C)

Reference

  1. Krug - Wikipedia
  2. Opseg - Math Is Fun
  3. Površina kruga - Khan Academy
  4. Povijest (\pi) - Wikipedia
Feedback