---
name: calcola-radice
description: Usare quando l'utente deve calcolare la radice di un numero con un indice specificato.
---

# Calcola Radice

Questa skill calcola la radice di un numero con un indice specificato. Formula: numero^(1/indice). Utile per calcoli geometrici (lati di quadrati, cubi), algoritmi matematici, fisica e ingegneria, conversione di unità di misura.

## Procedura

1. **Calcolare la radice**: Usare `calcolaRadice(numero, indice)`
2. **Passare numero e indice**: Entrambi devono essere numeri
3. **Gestire il risultato**: Restituisce un numero (la radice)

## Regole

- `numero` deve essere un numero (intero o decimale)
- `indice` deve essere un numero intero positivo (predefinito: 2)
- Restituisce NaN per numeri negativi con indice pari
- Restituisce Infinity per 0 con indice 0
- Accetta indici frazionari

## Esempi

### Esempio 1: Radice quadrata (indice 2)

```javascript
console.log(calcolaRadice(16, 2));  // 4 (√16)
console.log(calcolaRadice(25, 2));  // 5 (√25)
```

### Esempio 2: Radice cubica (indice 3)

```javascript
console.log(calcolaRadice(27, 3));  // 3 (∛27)
console.log(calcolaRadice(64, 3));  // 4 (∛64)
```

### Esempio 3: Radice quarta (indice 4)

```javascript
console.log(calcolaRadice(16, 4));  // 2 (⁴√16)
console.log(calcolaRadice(81, 4));  // 3 (⁴√81)
```

### Esempio 4: Usare indice predefinito (2)

```javascript
console.log(calcolaRadice(9));     // 3 (radice quadrata)
console.log(calcolaRadice(100));   // 10 (radice quadrata)
```

### Esempio 5: Calcolare lato di un quadrato dall'area

```javascript
const area = 144;
const lato = calcolaRadice(area, 2);
console.log(lato); // 12
```

## Dettagli Aggiuntivi

- **Formula**: numero^(1/indice)
- **Implementazione**: `Math.pow(numero, 1 / indice)`
- **Indici comuni**:
  - 2: radice quadrata
  - 3: radice cubica
  - 4: radice quarta
  - n: radice n-esima
- **Precisione**: Usa l'aritmetica floating-point di JavaScript
- **Casi speciali**:
  - calcolaRadice(16, 2) → 4
  - calcolaRadice(27, 3) → 3
  - calcolaRadice(16, 4) → 2
  - calcolaRadice(9) → 3 (indice predefinito = 2)
- **Attenzione**: Per numeri negativi e indici pari, restituisce NaN
