Radius of a Circle Calculator
Introduction
Radius ya mduara ni moja ya mali zake za msingi. Ni umbali kutoka katikati ya mduara hadi sehemu yoyote kwenye ukingo wake. Kihesabu hiki kinakuwezesha kubaini radius ya mduara kulingana na vigezo vitatu tofauti:
- Kipenyo
- Mzunguko
- Eneo
Kwa kutoa moja ya hizi thamani, unaweza kuhesabu radius kwa kutumia uhusiano wa kimaadili uliopo katika jiometri ya mduara.
Formula
Radius inaweza kuhesabiwa kutoka kwa kipenyo, mzunguko, au eneo kwa kutumia fomula zifuatazo:
-
Kutoka Kipenyo ():
-
Kutoka Mzunguko ():
-
Kutoka Eneo ():
Fomula hizi zinatokana na mali za kimsingi za mduara:
- Kipenyo: Kipenyo ni mara mbili ya radius ().
- Mzunguko: Mzunguko ni umbali wa kuzunguka mduara ().
- Eneo: Eneo lililo ndani ya mduara ().
Calculation
Hesabu Radius Kutoka Kipenyo
Kutoa kipenyo, radius ni nusu yake tu:
Mfano:
Ikiwa kipenyo ni vitengo 10:
Hesabu Radius Kutoka Mzunguko
Kuanza na fomula ya mzunguko:
Kutatua kwa :
Mfano:
Ikiwa mzunguko ni vitengo:
Hesabu Radius Kutoka Eneo
Kuanza na fomula ya eneo:
Kutatua kwa :
Mfano:
Ikiwa eneo ni vitengo vya mraba:
Mambo ya Kando na Uthibitishaji wa Ingizo
-
Ingizo la Sifuri au Mbaya: Mduara hauwezi kuwa na kipenyo, mzunguko, au eneo hasi au sifuri. Ikiwa mojawapo ya hizi thamani ni sifuri au hasi, radius haijafafanuliwa. Kihesabu kitaonyesha ujumbe wa kosa katika hali kama hizo.
-
Ingizo lisilo la Nambari: Kihesabu kinahitaji ingizo la nambari. Thamani zisizo za nambari (k.m. herufi au alama) hazikubaliki.
Usahihi na Upunguzaji
Kihesabu hiki kinatumia hesabu ya nambari ya floating-point ya double kwa ajili ya mahesabu. Matokeo kwa kawaida yanaonyeshwa yakiwa yamepunguzwa hadi mahali manne ya desimali kwa usahihi zaidi. Wakati wa kutumia vigezo vya kimaadili kama , kihesabu kinatumia usahihi wote unaopatikana katika lugha ya programu au mazingira. Kuwa makini kwamba hesabu ya floating-point inaweza kuleta makosa madogo ya upunguzaji katika baadhi ya matukio.
Matumizi
Kuhesabu radius ya mduara ni muhimu katika nyanja mbalimbali:
Uhandisi na Ujenzi
-
Kusimamia Vipengele vya Mduara: Wahandisi mara nyingi wanahitaji kubaini radius wanapobuni magurudumu, gia, mabomba, au dome.
-
Architektura: Wajenzi hutumia radius kubuni arches, dome, na majengo ya mduara.
Astronomiya
-
Mizunguko ya Sayari: Wanajimu wanahesabu radius ya mizunguko ya sayari kulingana na data za uchunguzi.
-
Mifumo ya Nyota: Kubaini ukubwa wa sayari, nyota, na vitu vingine vya angani.
Kutatua Matatizo ya Kila Siku
-
Sanaa na Ubunifu: Wasanii na wabunifu wanahesabu radius ili kuunda mifumo na michoro ya mduara.
-
Miradi ya DIY: Kuhesabu vifaa vinavyohitajika kwa ajili ya meza za mduara, bustani, au visima.
Hisabati na Elimu
-
Kujifunza Jiometri: Kuelewa mali za mduara ni muhimu katika elimu ya jiometri.
-
Kutatua Matatizo: Hesabu za radius ni za kawaida katika matatizo ya hisabati na mashindano.
Mbadala
Ingawa radius ni mali ya msingi, wakati mwingine mali nyingine za mduara zinaweza kuwa rahisi kupima moja kwa moja:
-
Kupima Urefu wa Chord: Inatumika wakati una alama zilizowekwa kwenye mduara na unahitaji kuhesabu radius.
-
Kutumia Eneo la Sekta au Urefu wa Arc: Katika hali zinazohusisha sehemu za mduara.
Historia
Utafiti wa mduara umeanzia katika tamaduni za kale:
-
Jiometri ya Kale: Mduara umekuwa ukisomeka tangu wakati wa Wamisri wa kale na Wababiloni.
-
Kazi za Euclid: Takriban mwaka 300 KK, Euclid alifafanua mduara na mali zake katika kazi yake maarufu, Elements.
-
Archimedes: Alitoa mbinu za kukadiria (\pi) na kuhesabu maeneo na volumu zinazohusiana na miduara na mipira.
-
Maendeleo ya (\pi): Katika karne nyingi, wanahisabati kama Liu Hui, Zu Chongzhi, Aryabhata, na hatimaye John Wallis na Isaac Newton walipunguza thamani na uelewa wa (\pi).
Radius inabaki kuwa dhana muhimu sio tu katika jiometri bali pia katika fizikia, uhandisi, na sayansi mbalimbali za matumizi.
Mifano
Hapa kuna mifano ya msimbo katika lugha mbalimbali za programu ili kuhesabu radius kutoka kipenyo, mzunguko, na eneo.
Kutoka Kipenyo
Python
## Hesabu radius kutoka kipenyo
def radius_from_diameter(diameter):
if diameter <= 0:
raise ValueError("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.")
return diameter / 2
## Mfano wa matumizi
d = 10
r = radius_from_diameter(d)
print(f"The radius is {r} units.")
JavaScript
// Hesabu radius kutoka kipenyo
function radiusFromDiameter(diameter) {
if (diameter <= 0) {
throw new Error("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.");
}
return diameter / 2;
}
// Mfano wa matumizi
let d = 10;
let r = radiusFromDiameter(d);
console.log(`The radius is ${r} units.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw new IllegalArgumentException("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.");
}
return diameter / 2;
}
public static void main(String[] args) {
double d = 10;
double r = radiusFromDiameter(d);
System.out.printf("The radius is %.2f units.%n", r);
}
}
C++
// Hesabu radius kutoka kipenyo
#include <iostream>
#include <stdexcept>
double radiusFromDiameter(double diameter) {
if (diameter <= 0) {
throw std::invalid_argument("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.");
}
return diameter / 2.0;
}
int main() {
double d = 10.0;
try {
double r = radiusFromDiameter(d);
std::cout << "The radius is " << r << " units." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Hesabu radius kutoka kipenyo
radius_from_diameter <- function(diameter) {
if (diameter <= 0) {
stop("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.")
}
return(diameter / 2)
}
## Mfano wa matumizi
d <- 10
r <- radius_from_diameter(d)
cat(sprintf("The radius is %.2f units.\n", r))
Ruby
## Hesabu radius kutoka kipenyo
def radius_from_diameter(diameter)
raise ArgumentError, "Kipenyo kinapaswa kuwa kikubwa kuliko sifuri." if diameter <= 0
diameter / 2.0
end
## Mfano wa matumizi
d = 10
r = radius_from_diameter(d)
puts "The radius is #{r} units."
PHP
<?php
// Hesabu radius kutoka kipenyo
function radiusFromDiameter($diameter) {
if ($diameter <= 0) {
throw new Exception('Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.');
}
return $diameter / 2;
}
// Mfano wa matumizi
$d = 10;
$r = radiusFromDiameter($d);
echo "The radius is {$r} units.";
?>
Rust
// Hesabu radius kutoka kipenyo
fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
if diameter <= 0.0 {
return Err("Kipenyo kinapaswa kuwa kikubwa kuliko sifuri.");
}
Ok(diameter / 2.0)
}
fn main() {
let d = 10.0;
match radius_from_diameter(d) {
Ok(r) => println!("The radius is {:.2} units.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Hesabu radius kutoka kipenyo
func radiusFromDiameter(_ diameter: Double) throws -> Double {
if diameter <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Kipenyo kinapaswa kuwa kikubwa kuliko sifuri."])
}
return diameter / 2.0
}
// Mfano wa matumizi
do {
let d = 10.0
let r = try radiusFromDiameter(d)
print("The radius is \(r) units.")
} catch {
print(error.localizedDescription)
}
Kutoka Mzunguko
Python
import math
## Hesabu radius kutoka mzunguko
def radius_from_circumference(circumference):
if circumference <= 0:
raise ValueError("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.")
return circumference / (2 * math.pi)
## Mfano wa matumizi
C = 31.4159
r = radius_from_circumference(C)
print(f"The radius is {r:.2f} units.")
JavaScript
// Hesabu radius kutoka mzunguko
function radiusFromCircumference(circumference) {
if (circumference <= 0) {
throw new Error("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.");
}
return circumference / (2 * Math.PI);
}
// Mfano wa matumizi
let C = 31.4159;
let r = radiusFromCircumference(C);
console.log(`The radius is ${r.toFixed(2)} units.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw new IllegalArgumentException("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.");
}
return circumference / (2 * Math.PI);
}
public static void main(String[] args) {
double C = 31.4159;
double r = radiusFromCircumference(C);
System.out.printf("The radius is %.2f units.%n", r);
}
}
C++
// Hesabu radius kutoka mzunguko
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromCircumference(double circumference) {
if (circumference <= 0) {
throw std::invalid_argument("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.");
}
return circumference / (2.0 * M_PI);
}
int main() {
double C = 31.4159;
try {
double r = radiusFromCircumference(C);
std::cout << "The radius is " << r << " units." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Hesabu radius kutoka mzunguko
radius_from_circumference <- function(circumference) {
if (circumference <= 0) {
stop("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.")
}
return(circumference / (2 * pi))
}
## Mfano wa matumizi
C <- 31.4159
r <- radius_from_circumference(C)
cat(sprintf("The radius is %.2f units.\n", r))
Ruby
## Hesabu radius kutoka mzunguko
def radius_from_circumference(circumference)
raise ArgumentError, "Mzunguko unapaswa kuwa mkubwa kuliko sifuri." if circumference <= 0
circumference / (2 * Math::PI)
end
## Mfano wa matumizi
C = 31.4159
r = radius_from_circumference(C)
puts "The radius is #{format('%.2f', r)} units."
PHP
<?php
// Hesabu radius kutoka mzunguko
function radiusFromCircumference($circumference) {
if ($circumference <= 0) {
throw new Exception('Mzunguko unapaswa kuwa mkubwa kuliko sifuri.');
}
return $circumference / (2 * M_PI);
}
// Mfano wa matumizi
$C = 31.4159;
$r = radiusFromCircumference($C);
echo "The radius is " . round($r, 2) . " units.";
?>
Rust
use std::f64::consts::PI;
// Hesabu radius kutoka mzunguko
fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
if circumference <= 0.0 {
return Err("Mzunguko unapaswa kuwa mkubwa kuliko sifuri.");
}
Ok(circumference / (2.0 * PI))
}
fn main() {
let C = 31.4159;
match radius_from_circumference(C) {
Ok(r) => println!("The radius is {:.2} units.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Hesabu radius kutoka mzunguko
func radiusFromCircumference(_ circumference: Double) throws -> Double {
if circumference <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Mzunguko unapaswa kuwa mkubwa kuliko sifuri."])
}
return circumference / (2 * Double.pi)
}
// Mfano wa matumizi
do {
let C = 31.4159
let r = try radiusFromCircumference(C)
print(String(format: "The radius is %.2f units.", r))
} catch {
print(error.localizedDescription)
}
Kutoka Eneo
Python
import math
## Hesabu radius kutoka eneo
def radius_from_area(area):
if area <= 0:
raise ValueError("Eneo linapaswa kuwa kubwa kuliko sifuri.")
return math.sqrt(area / math.pi)
## Mfano wa matumizi
A = 78.5398
r = radius_from_area(A)
print(f"The radius is {r:.2f} units.")
JavaScript
// Hesabu radius kutoka eneo
function radiusFromArea(area) {
if (area <= 0) {
throw new Error("Eneo linapaswa kuwa kubwa kuliko sifuri.");
}
return Math.sqrt(area / Math.PI);
}
// Mfano wa matumizi
let A = 78.5398;
let r = radiusFromArea(A);
console.log(`The radius is ${r.toFixed(2)} units.`);
Java
public class CircleRadiusCalculator {
public static double radiusFromArea(double area) {
if (area <= 0) {
throw new IllegalArgumentException("Eneo linapaswa kuwa kubwa kuliko sifuri.");
}
return Math.sqrt(area / Math.PI);
}
public static void main(String[] args) {
double A = 78.5398;
double r = radiusFromArea(A);
System.out.printf("The radius is %.2f units.%n", r);
}
}
C++
// Hesabu radius kutoka eneo
#include <iostream>
#include <cmath>
#include <stdexcept>
double radiusFromArea(double area) {
if (area <= 0) {
throw std::invalid_argument("Eneo linapaswa kuwa kubwa kuliko sifuri.");
}
return std::sqrt(area / M_PI);
}
int main() {
double A = 78.5398;
try {
double r = radiusFromArea(A);
std::cout << "The radius is " << r << " units." << std::endl;
} catch (const std::exception& e) {
std::cerr << e.what() << std::endl;
}
return 0;
}
R
## Hesabu radius kutoka eneo
radius_from_area <- function(area) {
if (area <= 0) {
stop("Eneo linapaswa kuwa kubwa kuliko sifuri.")
}
return(sqrt(area / pi))
}
## Mfano wa matumizi
A <- 78.5398
r <- radius_from_area(A)
cat(sprintf("The radius is %.2f units.\n", r))
MATLAB
% Hesabu radius kutoka eneo
function r = radius_from_area(area)
if area <= 0
error('Eneo linapaswa kuwa kubwa kuliko sifuri.');
end
r = sqrt(area / pi);
end
% Mfano wa matumizi
A = 78.5398;
r = radius_from_area(A);
fprintf('The radius is %.2f units.\n', r);
C#
using System;
class CircleRadiusCalculator
{
public static double RadiusFromArea(double area)
{
if (area <= 0)
throw new ArgumentException("Eneo linapaswa kuwa kubwa kuliko sifuri.");
return Math.Sqrt(area / Math.PI);
}
static void Main()
{
double A = 78.5398;
double r = RadiusFromArea(A);
Console.WriteLine("The radius is {0:F2} units.", r);
}
}
Go
package main
import (
"fmt"
"math"
)
func radiusFromArea(area float64) (float64, error) {
if area <= 0 {
return 0, fmt.Errorf("Eneo linapaswa kuwa kubwa kuliko sifuri.")
}
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("The radius is %.2f units.\n", r)
}
Ruby
## Hesabu radius kutoka eneo
def radius_from_area(area)
raise ArgumentError, "Eneo linapaswa kuwa kubwa kuliko sifuri." if area <= 0
Math.sqrt(area / Math::PI)
end
## Mfano wa matumizi
A = 78.5398
r = radius_from_area(A)
puts "The radius is #{format('%.2f', r)} units."
PHP
<?php
// Hesabu radius kutoka eneo
function radiusFromArea($area) {
if ($area <= 0) {
throw new Exception('Eneo linapaswa kuwa kubwa kuliko sifuri.');
}
return sqrt($area / M_PI);
}
// Mfano wa matumizi
$A = 78.5398;
$r = radiusFromArea($A);
echo "The radius is " . round($r, 2) . " units.";
?>
Rust
use std::f64::consts::PI;
// Hesabu radius kutoka eneo
fn radius_from_area(area: f64) -> Result<f64, &'static str> {
if area <= 0.0 {
return Err("Eneo linapaswa kuwa kubwa kuliko sifuri.");
}
Ok((area / PI).sqrt())
}
fn main() {
let A = 78.5398;
match radius_from_area(A) {
Ok(r) => println!("The radius is {:.2} units.", r),
Err(e) => println!("{}", e),
}
}
Swift
import Foundation
// Hesabu radius kutoka eneo
func radiusFromArea(_ area: Double) throws -> Double {
if area <= 0 {
throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Eneo linapaswa kuwa kubwa kuliko sifuri."])
}
return sqrt(area / Double.pi)
}
// Mfano wa matumizi
do {
let A = 78.5398
let r = try radiusFromArea(A)
print(String(format: "The radius is %.2f units.", r))
} catch {
print(error.localizedDescription)
}
Excel
## Hesabu radius kutoka kipenyo kwenye seli B1
=IF(B1>0, B1/2, "Ingizo batili")
## Hesabu radius kutoka mzunguko kwenye seli B2
=IF(B2>0, B2/(2*PI()), "Ingizo batili")
## Hesabu radius kutoka eneo kwenye seli B3
=IF(B3>0, SQRT(B3/PI()), "Ingizo batili")
Visualization
Mchoro wa SVG unaoonyesha uhusiano kati ya radius, kipenyo, na mzunguko:
References
- Mduara - Wikipedia
- Mzunguko - Math Is Fun
- Eneo la Mduara - Khan Academy
- Historia ya (\pi) - Wikipedia