Calcolatore del Raggio di un Cerchio per Geometria

Calcola il raggio di un cerchio utilizzando il diametro, la circonferenza o l'area. Ideale per calcoli di geometria e per comprendere le proprietà del cerchio.

Calcolatore del Raggio di un Cerchio

📚

Documentazione

Calcolatore del Raggio di un Cerchio

Introduzione

Il raggio di un cerchio è una delle sue proprietà più fondamentali. È la distanza dal centro del cerchio a qualsiasi punto sulla sua circonferenza. Questo calcolatore consente di determinare il raggio di un cerchio basato su tre diversi parametri di input:

  1. Diametro
  2. Circonferenza
  3. Area

Fornendo uno di questi valori, puoi calcolare il raggio utilizzando le relazioni matematiche insite nella geometria del cerchio.

Formula

Il raggio può essere calcolato dal diametro, dalla circonferenza o dall'area utilizzando le seguenti formule:

  1. Dal Diametro (dd):

    r=d2r = \frac{d}{2}
  2. Dalla Circonferenza (CC):

    r=C2πr = \frac{C}{2\pi}
  3. Dall'Area (AA):

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

Queste formule sono derivate dalle proprietà di base di un cerchio:

  • Diametro: Il diametro è il doppio del raggio (d=2rd = 2r).
  • Circonferenza: La circonferenza è la distanza attorno al cerchio (C=2πrC = 2\pi r).
  • Area: L'area racchiusa dal cerchio (A=πr2A = \pi r^2).

Calcolo

Calcolo del Raggio dal Diametro

Dato il diametro, il raggio è semplicemente la metà di esso:

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

Esempio:

Se il diametro è di 10 unità:

r=102=5 unitaˋr = \frac{10}{2} = 5 \text{ unità}

Calcolo del Raggio dalla Circonferenza

Partendo dalla formula della circonferenza:

C=2πrC = 2\pi r

Risolvendo per rr:

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

Esempio:

Se la circonferenza è di 31.415931.4159 unità:

r=31.41592π31.41596.28325 unitaˋr = \frac{31.4159}{2\pi} \approx \frac{31.4159}{6.2832} \approx 5 \text{ unità}

Calcolo del Raggio dall'Area

Partendo dalla formula dell'area:

A=πr2A = \pi r^2

Risolvendo per rr:

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

Esempio:

Se l'area è di 78.539878.5398 unità quadrate:

r=78.5398π=78.53983.141625=5 unitaˋr = \sqrt{\frac{78.5398}{\pi}} = \sqrt{\frac{78.5398}{3.1416}} \approx \sqrt{25} = 5 \text{ unità}

Casi Limite e Validazione degli Input

  • Input Zero o Negativi: Un cerchio non può avere un diametro, una circonferenza o un'area negativi o nulli. Se uno di questi valori è zero o negativo, il raggio è indefinito. Il calcolatore mostrerà un messaggio di errore in tali casi.

  • Input Non Numerici: Il calcolatore richiede input numerici. Valori non numerici (ad es. lettere o simboli) sono non validi.

Precisione e Arrotondamento

Questo calcolatore utilizza l'aritmetica in virgola mobile a doppia precisione per i calcoli. I risultati sono generalmente visualizzati arrotondati a quattro decimali per una maggiore accuratezza. Quando si utilizzano costanti matematiche come π\pi, il calcolatore utilizza la massima precisione disponibile nel linguaggio di programmazione o nell'ambiente. Tieni presente che l'aritmetica in virgola mobile può introdurre piccoli errori di arrotondamento in alcuni casi.

Casi d'Uso

Calcolare il raggio di un cerchio è essenziale in vari campi:

Ingegneria e Costruzione

  • Progettazione di Componenti Circolari: Gli ingegneri spesso devono determinare il raggio quando progettano ruote, ingranaggi, tubi o cupole.

  • Architettura: Gli architetti utilizzano il raggio per progettare archi, cupole e edifici circolari.

Astronomia

  • Orbite Planetarie: Gli astronomi calcolano il raggio delle orbite planetarie basandosi su dati osservativi.

  • Corpi Celesti: Determinazione delle dimensioni di pianeti, stelle e altri oggetti celesti.

Risoluzione di Problemi Quotidiani

  • Arte e Design: Artisti e designer calcolano il raggio per creare motivi e design circolari.

  • Progetti Fai-da-te: Calcolo dei materiali necessari per tavoli, giardini o fontane circolari.

Matematica ed Educazione

  • Apprendimento della Geometria: Comprendere le proprietà dei cerchi è fondamentale nell'educazione geometrica.

  • Risoluzione di Problemi: I calcoli del raggio sono comuni nei problemi matematici e nelle competizioni.

Alternative

Sebbene il raggio sia una proprietà primaria, a volte altre proprietà del cerchio sono più convenienti da misurare direttamente:

  • Misurazione della Lunghezza del Cordone: Utile quando si hanno punti fissi su un cerchio e si deve calcolare il raggio.

  • Utilizzo dell'Area del Settore o della Lunghezza dell'Arco: Nei casi che coinvolgono sezioni parziali di un cerchio.

Storia

Lo studio dei cerchi risale alle antiche civiltà:

  • Geometria Antica: Il cerchio è stato studiato fin dai tempi degli antichi egizi e babilonesi.

  • Elementi di Euclide: Intorno al 300 a.C., Euclide definì il cerchio e le sue proprietà nella sua opera fondamentale, Elementi.

  • Archimede: Fornì metodi per approssimare (\pi) e calcolò aree e volumi relativi a cerchi e sfere.

  • Sviluppo di (\pi): Nel corso dei secoli, matematici come Liu Hui, Zu Chongzhi, Aryabhata e infine John Wallis e Isaac Newton hanno affinato il valore e la comprensione di (\pi).

Il raggio rimane un concetto fondamentale non solo in geometria ma anche in fisica, ingegneria e varie scienze applicate.

Esempi

Ecco esempi di codice in più linguaggi di programmazione per calcolare il raggio dal diametro, dalla circonferenza e dall'area.

Dal Diametro

Python
1## Calcola il raggio dal diametro
2def radius_from_diameter(diameter):
3    if diameter <= 0:
4        raise ValueError("Il diametro deve essere maggiore di zero.")
5    return diameter / 2
6
7## Esempio di utilizzo
8d = 10
9r = radius_from_diameter(d)
10print(f"Il raggio è {r} unità.")
11
JavaScript
1// Calcola il raggio dal diametro
2function radiusFromDiameter(diameter) {
3    if (diameter <= 0) {
4        throw new Error("Il diametro deve essere maggiore di zero.");
5    }
6    return diameter / 2;
7}
8
9// Esempio di utilizzo
10let d = 10;
11let r = radiusFromDiameter(d);
12console.log(`Il raggio è ${r} unità.`);
13
Java
1public class CircleRadiusCalculator {
2    public static double radiusFromDiameter(double diameter) {
3        if (diameter <= 0) {
4            throw new IllegalArgumentException("Il diametro deve essere maggiore di zero.");
5        }
6        return diameter / 2;
7    }
8
9    public static void main(String[] args) {
10        double d = 10;
11        double r = radiusFromDiameter(d);
12        System.out.printf("Il raggio è %.2f unità.%n", r);
13    }
14}
15
C++
1// Calcola il raggio dal diametro
2#include <iostream>
3#include <stdexcept>
4
5double radiusFromDiameter(double diameter) {
6    if (diameter <= 0) {
7        throw std::invalid_argument("Il diametro deve essere maggiore di zero.");
8    }
9    return diameter / 2.0;
10}
11
12int main() {
13    double d = 10.0;
14    try {
15        double r = radiusFromDiameter(d);
16        std::cout << "Il raggio è " << r << " unità." << std::endl;
17    } catch (const std::exception& e) {
18        std::cerr << e.what() << std::endl;
19    }
20    return 0;
21}
22
R
1## Calcola il raggio dal diametro
2radius_from_diameter <- function(diameter) {
3  if (diameter <= 0) {
4    stop("Il diametro deve essere maggiore di zero.")
5  }
6  return(diameter / 2)
7}
8
9## Esempio di utilizzo
10d <- 10
11r <- radius_from_diameter(d)
12cat(sprintf("Il raggio è %.2f unità.\n", r))
13
Ruby
1## Calcola il raggio dal diametro
2def radius_from_diameter(diameter)
3  raise ArgumentError, "Il diametro deve essere maggiore di zero." if diameter <= 0
4  diameter / 2.0
5end
6
7## Esempio di utilizzo
8d = 10
9r = radius_from_diameter(d)
10puts "Il raggio è #{r} unità."
11
PHP
1<?php
2// Calcola il raggio dal diametro
3function radiusFromDiameter($diameter) {
4    if ($diameter <= 0) {
5        throw new Exception('Il diametro deve essere maggiore di zero.');
6    }
7    return $diameter / 2;
8}
9
10// Esempio di utilizzo
11$d = 10;
12$r = radiusFromDiameter($d);
13echo "Il raggio è {$r} unità.";
14?>
15
Rust
1// Calcola il raggio dal diametro
2fn radius_from_diameter(diameter: f64) -> Result<f64, &'static str> {
3    if diameter <= 0.0 {
4        return Err("Il diametro deve essere maggiore di zero.");
5    }
6    Ok(diameter / 2.0)
7}
8
9fn main() {
10    let d = 10.0;
11    match radius_from_diameter(d) {
12        Ok(r) => println!("Il raggio è {:.2} unità.", r),
13        Err(e) => println!("{}", e),
14    }
15}
16
Swift
1import Foundation
2
3// Calcola il raggio dal diametro
4func radiusFromDiameter(_ diameter: Double) throws -> Double {
5    if diameter <= 0 {
6        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "Il diametro deve essere maggiore di zero."])
7    }
8    return diameter / 2.0
9}
10
11// Esempio di utilizzo
12do {
13    let d = 10.0
14    let r = try radiusFromDiameter(d)
15    print("Il raggio è \(r) unità.")
16} catch {
17    print(error.localizedDescription)
18}
19

Dalla Circonferenza

Python
1import math
2
3## Calcola il raggio dalla circonferenza
4def radius_from_circumference(circumference):
5    if circumference <= 0:
6        raise ValueError("La circonferenza deve essere maggiore di zero.")
7    return circumference / (2 * math.pi)
8
9## Esempio di utilizzo
10C = 31.4159
11r = radius_from_circumference(C)
12print(f"Il raggio è {r:.2f} unità.")
13
JavaScript
1// Calcola il raggio dalla circonferenza
2function radiusFromCircumference(circumference) {
3    if (circumference <= 0) {
4        throw new Error("La circonferenza deve essere maggiore di zero.");
5    }
6    return circumference / (2 * Math.PI);
7}
8
9// Esempio di utilizzo
10let C = 31.4159;
11let r = radiusFromCircumference(C);
12console.log(`Il raggio è ${r.toFixed(2)} unità.`);
13
Java
1public class CircleRadiusCalculator {
2    public static double radiusFromCircumference(double circumference) {
3        if (circumference <= 0) {
4            throw new IllegalArgumentException("La circonferenza deve essere maggiore di zero.");
5        }
6        return circumference / (2 * Math.PI);
7    }
8
9    public static void main(String[] args) {
10        double C = 31.4159;
11        double r = radiusFromCircumference(C);
12        System.out.printf("Il raggio è %.2f unità.%n", r);
13    }
14}
15
C++
1// Calcola il raggio dalla circonferenza
2#include <iostream>
3#include <cmath>
4#include <stdexcept>
5
6double radiusFromCircumference(double circumference) {
7    if (circumference <= 0) {
8        throw std::invalid_argument("La circonferenza deve essere maggiore di zero.");
9    }
10    return circumference / (2.0 * M_PI);
11}
12
13int main() {
14    double C = 31.4159;
15    try {
16        double r = radiusFromCircumference(C);
17        std::cout << "Il raggio è " << r << " unità." << std::endl;
18    } catch (const std::exception& e) {
19        std::cerr << e.what() << std::endl;
20    }
21    return 0;
22}
23
R
1## Calcola il raggio dalla circonferenza
2radius_from_circumference <- function(circumference) {
3  if (circumference <= 0) {
4    stop("La circonferenza deve essere maggiore di zero.")
5  }
6  return(circumference / (2 * pi))
7}
8
9## Esempio di utilizzo
10C <- 31.4159
11r <- radius_from_circumference(C)
12cat(sprintf("Il raggio è %.2f unità.\n", r))
13
Ruby
1## Calcola il raggio dalla circonferenza
2def radius_from_circumference(circumference)
3  raise ArgumentError, "La circonferenza deve essere maggiore di zero." if circumference <= 0
4  circumference / (2 * Math::PI)
5end
6
7## Esempio di utilizzo
8C = 31.4159
9r = radius_from_circumference(C)
10puts "Il raggio è #{format('%.2f', r)} unità."
11
PHP
1<?php
2// Calcola il raggio dalla circonferenza
3function radiusFromCircumference($circumference) {
4    if ($circumference <= 0) {
5        throw new Exception('La circonferenza deve essere maggiore di zero.');
6    }
7    return $circumference / (2 * M_PI);
8}
9
10// Esempio di utilizzo
11$C = 31.4159;
12$r = radiusFromCircumference($C);
13echo "Il raggio è " . round($r, 2) . " unità.";
14?>
15
Rust
1use std::f64::consts::PI;
2
3// Calcola il raggio dalla circonferenza
4fn radius_from_circumference(circumference: f64) -> Result<f64, &'static str> {
5    if circumference <= 0.0 {
6        return Err("La circonferenza deve essere maggiore di zero.");
7    }
8    Ok(circumference / (2.0 * PI))
9}
10
11fn main() {
12    let C = 31.4159;
13    match radius_from_circumference(C) {
14        Ok(r) => println!("Il raggio è {:.2} unità.", r),
15        Err(e) => println!("{}", e),
16    }
17}
18
Swift
1import Foundation
2
3// Calcola il raggio dalla circonferenza
4func radiusFromCircumference(_ circumference: Double) throws -> Double {
5    if circumference <= 0 {
6        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "La circonferenza deve essere maggiore di zero."])
7    }
8    return circumference / (2 * Double.pi)
9}
10
11// Esempio di utilizzo
12do {
13    let C = 31.4159
14    let r = try radiusFromCircumference(C)
15    print(String(format: "Il raggio è %.2f unità.", r))
16} catch {
17    print(error.localizedDescription)
18}
19

Dall'Area

Python
1import math
2
3## Calcola il raggio dall'area
4def radius_from_area(area):
5    if area <= 0:
6        raise ValueError("L'area deve essere maggiore di zero.")
7    return math.sqrt(area / math.pi)
8
9## Esempio di utilizzo
10A = 78.5398
11r = radius_from_area(A)
12print(f"Il raggio è {r:.2f} unità.")
13
JavaScript
1// Calcola il raggio dall'area
2function radiusFromArea(area) {
3    if (area <= 0) {
4        throw new Error("L'area deve essere maggiore di zero.");
5    }
6    return Math.sqrt(area / Math.PI);
7}
8
9// Esempio di utilizzo
10let A = 78.5398;
11let r = radiusFromArea(A);
12console.log(`Il raggio è ${r.toFixed(2)} unità.`);
13
Java
1public class CircleRadiusCalculator {
2    public static double radiusFromArea(double area) {
3        if (area <= 0) {
4            throw new IllegalArgumentException("L'area deve essere maggiore di zero.");
5        }
6        return Math.sqrt(area / Math.PI);
7    }
8
9    public static void main(String[] args) {
10        double A = 78.5398;
11        double r = radiusFromArea(A);
12        System.out.printf("Il raggio è %.2f unità.%n", r);
13    }
14}
15
C++
1// Calcola il raggio dall'area
2#include <iostream>
3#include <cmath>
4#include <stdexcept>
5
6double radiusFromArea(double area) {
7    if (area <= 0) {
8        throw std::invalid_argument("L'area deve essere maggiore di zero.");
9    }
10    return std::sqrt(area / M_PI);
11}
12
13int main() {
14    double A = 78.5398;
15    try {
16        double r = radiusFromArea(A);
17        std::cout << "Il raggio è " << r << " unità." << std::endl;
18    } catch (const std::exception& e) {
19        std::cerr << e.what() << std::endl;
20    }
21    return 0;
22}
23
R
1## Calcola il raggio dall'area
2radius_from_area <- function(area) {
3  if (area <= 0) {
4    stop("L'area deve essere maggiore di zero.")
5  }
6  return(sqrt(area / pi))
7}
8
9## Esempio di utilizzo
10A <- 78.5398
11r <- radius_from_area(A)
12cat(sprintf("Il raggio è %.2f unità.\n", r))
13
MATLAB
1% Calcola il raggio dall'area
2function r = radius_from_area(area)
3    if area <= 0
4        error('L''area deve essere maggiore di zero.');
5    end
6    r = sqrt(area / pi);
7end
8
9% Esempio di utilizzo
10A = 78.5398;
11r = radius_from_area(A);
12fprintf('Il raggio è %.2f unità.\n', r);
13
C#
1using System;
2
3class CircleRadiusCalculator
4{
5    public static double RadiusFromArea(double area)
6    {
7        if (area <= 0)
8            throw new ArgumentException("L'area deve essere maggiore di zero.");
9        return Math.Sqrt(area / Math.PI);
10    }
11
12    static void Main()
13    {
14        double A = 78.5398;
15        double r = RadiusFromArea(A);
16        Console.WriteLine("Il raggio è {0:F2} unità.", r);
17    }
18}
19
Go
1package main
2
3import (
4	"fmt"
5	"math"
6)
7
8func radiusFromArea(area float64) (float64, error) {
9	if area <= 0 {
10		return 0, fmt.Errorf("L'area deve essere maggiore di zero.")
11	}
12	return math.Sqrt(area / math.Pi), nil
13}
14
15func main() {
16	A := 78.5398
17	r, err := radiusFromArea(A)
18	if err != nil {
19		fmt.Println(err)
20		return
21	}
22	fmt.Printf("Il raggio è %.2f unità.\n", r)
23}
24
Ruby
1## Calcola il raggio dall'area
2def radius_from_area(area)
3  raise ArgumentError, "L'area deve essere maggiore di zero." if area <= 0
4  Math.sqrt(area / Math::PI)
5end
6
7## Esempio di utilizzo
8A = 78.5398
9r = radius_from_area(A)
10puts "Il raggio è #{format('%.2f', r)} unità."
11
PHP
1<?php
2// Calcola il raggio dall'area
3function radiusFromArea($area) {
4    if ($area <= 0) {
5        throw new Exception('L''area deve essere maggiore di zero.');
6    }
7    return sqrt($area / M_PI);
8}
9
10// Esempio di utilizzo
11$A = 78.5398;
12$r = radiusFromArea($A);
13echo "Il raggio è " . round($r, 2) . " unità.";
14?>
15
Rust
1use std::f64::consts::PI;
2
3// Calcola il raggio dall'area
4fn radius_from_area(area: f64) -> Result<f64, &'static str> {
5    if area <= 0.0 {
6        return Err("L'area deve essere maggiore di zero.");
7    }
8    Ok((area / PI).sqrt())
9}
10
11fn main() {
12    let A = 78.5398;
13    match radius_from_area(A) {
14        Ok(r) => println!("Il raggio è {:.2} unità.", r),
15        Err(e) => println!("{}", e),
16    }
17}
18
Swift
1import Foundation
2
3// Calcola il raggio dall'area
4func radiusFromArea(_ area: Double) throws -> Double {
5    if area <= 0 {
6        throw NSError(domain: "InvalidInput", code: 0, userInfo: [NSLocalizedDescriptionKey: "L'area deve essere maggiore di zero."])
7    }
8    return sqrt(area / Double.pi)
9}
10
11// Esempio di utilizzo
12do {
13    let A = 78.5398
14    let r = try radiusFromArea(A)
15    print(String(format: "Il raggio è %.2f unità.", r))
16} catch {
17    print(error.localizedDescription)
18}
19

Excel

1## Calcola il raggio dal diametro nella cella B1
2=IF(B1>0, B1/2, "Input non valido")
3
4## Calcola il raggio dalla circonferenza nella cella B2
5=IF(B2>0, B2/(2*PI()), "Input non valido")
6
7## Calcola il raggio dall'area nella cella B3
8=IF(B3>0, SQRT(B3/PI()), "Input non valido")
9

Visualizzazione

Un diagramma SVG che illustra la relazione tra il raggio, il diametro e la circonferenza:

Raggio (r) Diametro (d) Circonferenza (C)

Riferimenti

  1. Cerchio - Wikipedia
  2. Circonferenza - Math Is Fun
  3. Area di un Cerchio - Khan Academy
  4. Storia di (\pi) - Wikipedia