chore(i18n,curriculum): update translations (#43140)
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 587d8250367417b2b2512c60
|
||||
title: Create a Queue Class
|
||||
title: Creare una classe Coda
|
||||
challengeType: 1
|
||||
forumTopicId: 301631
|
||||
dashedName: create-a-queue-class
|
||||
@ -8,19 +8,19 @@ dashedName: create-a-queue-class
|
||||
|
||||
# --description--
|
||||
|
||||
Like stacks, queues are a collection of elements. But unlike stacks, queues follow the FIFO (First-In First-Out) principle. Elements added to a queue are pushed to the tail, or the end, of the queue, and only the element at the front of the queue is allowed to be removed.
|
||||
Come gli stack, le code sono una raccolta di elementi. Ma a differenza degli stack, le code seguono il principio FIFO (First-In First-Out). Gli elementi aggiunti ad una coda vengono spinti in fondo, o alla fine, della coda, e solo l'elemento nella parte anteriore della coda può essere rimosso.
|
||||
|
||||
We could use an array to represent a queue, but just like stacks, we want to limit the amount of control we have over our queues.
|
||||
Potremmo usare un array per rappresentare una coda, ma proprio come per gli stack, vogliamo limitare la quantità di controllo che abbiamo sulle nostre code.
|
||||
|
||||
The two main methods of a queue class is the enqueue and the dequeue method. The enqueue method pushes an element to the tail of the queue, and the dequeue method removes and returns the element at the front of the queue. Other useful methods are the front, size, and isEmpty methods.
|
||||
I due metodi principali di una classe coda sono il metodo di accodamento e il metodo di rimozione. Il metodo di accodamento spinge un elemento in fondo alla coda, e il metodo di rimozione rimuove e restituisce l'elemento in testa alla coda. Altri metodi utili sono front, size e isEmpty.
|
||||
|
||||
# --instructions--
|
||||
|
||||
Write an `enqueue` method that pushes an element to the tail of the queue, a `dequeue` method that removes and returns the front element, a `front` method that lets us see the front element, a `size` method that shows the length, and an `isEmpty` method to check if the queue is empty.
|
||||
Scrivi un metodo `enqueue` che spinge un elemento in fondo alla coda, un metodo `dequeue` che rimuove e restituisce l'elemento in testa alla coda, un metodo `front` che permette di vedere l'elemento in testa alla coda, un metodo `size` che ne mostra la lunghezza, e un metodo `isEmpty` per controllare se la coda è vuota.
|
||||
|
||||
# --hints--
|
||||
|
||||
Your `Queue` class should have a `enqueue` method.
|
||||
La tua classe `Queue` dovrebbe avere un metodo `enqueue`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -31,7 +31,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Queue` class should have a `dequeue` method.
|
||||
La tua classe `Queue` dovrebbe avere un metodo `dequeue`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -42,7 +42,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Queue` class should have a `front` method.
|
||||
La tua classe `Queue` dovrebbe avere un metodo `front`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -53,7 +53,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Queue` class should have a `size` method.
|
||||
La tua classe `Queue` dovrebbe avere un metodo `size`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -64,7 +64,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Queue` class should have an `isEmpty` method.
|
||||
La classe `Queue` dovrebbe avere un metodo `isEmpty`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -75,7 +75,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `dequeue` method should remove and return the front element of the queue
|
||||
Il metodo `dequeue` dovrebbe rimuovere e restituire l'elemento in testa alla coda
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -88,7 +88,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `front` method should return value of the front element of the queue
|
||||
Il metodo `front` dovrebbe restituire il valore dell'elemento in testa alla coda
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -101,7 +101,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `size` method should return the length of the queue
|
||||
Il metodo `size` dovrebbe restituire la lunghezza della coda
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -113,7 +113,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `isEmpty` method should return `false` if there are elements in the queue
|
||||
Il metodo `isEmpty` dovrebbe restituire `false` se ci sono elementi nella coda
|
||||
|
||||
```js
|
||||
assert(
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 8d1323c8c441eddfaeb5bdef
|
||||
title: Create a Set Class
|
||||
title: Creare una classe Set
|
||||
challengeType: 1
|
||||
forumTopicId: 301632
|
||||
dashedName: create-a-set-class
|
||||
@ -8,7 +8,7 @@ dashedName: create-a-set-class
|
||||
|
||||
# --description--
|
||||
|
||||
In this exercise we are going to create a class named `Set` to emulate an abstract data structure called "set". A set is like an array, but it cannot contain duplicate values. The typical use for a set is to simply check for the presence of an item. We can see how the ES6 `Set` object works in the example below:
|
||||
In questo esercizio creeremo una classe chiamata `Set` per emulare una struttura dati astratta chiamata "set" (insieme). Un set è come un array, ma non può contenere valori duplicati. L'uso tipico di un set è quello di controllare semplicemente la presenza di un oggetto. Possiamo vedere come funziona l'oggetto ES6 `Set` nell'esempio qui sotto:
|
||||
|
||||
```js
|
||||
const set1 = new Set([1, 2, 3, 5, 5, 2, 0]);
|
||||
@ -20,17 +20,17 @@ console.log(set1.has(6));
|
||||
// output: false
|
||||
```
|
||||
|
||||
First, we will create an add method that adds a value to our set collection as long as the value does not already exist in the set. Then we will create a remove method that removes a value from the set collection if it already exists. And finally, we will create a size method that returns the number of elements inside the set collection.
|
||||
In primo luogo, creeremo un metodo di aggiunta che aggiunge un valore alla nostra collezione purché il valore non esista già nel set. Quindi creeremo un metodo di rimozione che rimuove un valore dalla collezione se esiste già. E infine, creeremo un metodo size che restituisce il numero di elementi all'interno della collezione set.
|
||||
|
||||
# --instructions--
|
||||
|
||||
Create an `add` method that adds a unique value to the set collection and returns `true` if the value was successfully added and `false` otherwise.
|
||||
Crea un metodo `add` che aggiunge un valore univoco alla collezione impostata e restituisce `true` se il valore è stato aggiunto con successo e `false` altrimenti.
|
||||
|
||||
Create a `remove` method that accepts a value and checks if it exists in the set. If it does, then this method should remove it from the set collection, and return `true`. Otherwise, it should return `false`. Create a `size` method that returns the size of the set collection.
|
||||
Crea un metodo `remove` che accetta un valore e controlla se esiste nel set. Se sì, questo metodo dovrebbe rimuoverlo dalla collezione, e restituire `true`. In caso contrario dovrebber restituire `false`. Crea un metodo `size` che restituisce la dimensione del set.
|
||||
|
||||
# --hints--
|
||||
|
||||
Your `Set` class should have an `add` method.
|
||||
La tua classe `Set` dovrebbe avere un metodo `add`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -41,7 +41,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `add` method should not add duplicate values.
|
||||
Il tuo metodo `add` non dovrebbe aggiungere valori duplicati.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -56,7 +56,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `add` method should return `true` when a value has been successfully added.
|
||||
Il tuo metodo `add` dovrebbe restituire `true` quando un valore è stato aggiunto con successo.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -68,7 +68,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `add` method should return `false` when a duplicate value is added.
|
||||
Il tuo metodo `add` dovrebbe restituire `false` quando viene aggiunto un valore duplicato.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -81,7 +81,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Set` class should have a `remove` method.
|
||||
La tua classe `Set` dovrebbe avere un metodo `remove`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -92,7 +92,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `remove` method should only remove items that are present in the set.
|
||||
Il tuo metodo `remove` dovrebbe rimuovere solo gli elementi presenti nel set.
|
||||
|
||||
```js
|
||||
assert.deepEqual(
|
||||
@ -107,7 +107,7 @@ assert.deepEqual(
|
||||
);
|
||||
```
|
||||
|
||||
Your `remove` method should remove the given item from the set.
|
||||
Il tuo metodo `remove` dovrebbe rimuovere dal set l'elemento dato.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -122,7 +122,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Your `Set` class should have a `size` method.
|
||||
La tua classe `Set` dovrebbe avere un metodo `size`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -133,7 +133,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `size` method should return the number of elements in the collection.
|
||||
Il metodo `size` dovrebbe restituire il numero di elementi nella collezione.
|
||||
|
||||
```js
|
||||
assert(
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 587d8258367417b2b2512c80
|
||||
title: Delete a Leaf Node in a Binary Search Tree
|
||||
title: Eliminare un nodo foglia in un albero binario di ricerca
|
||||
challengeType: 1
|
||||
forumTopicId: 301637
|
||||
dashedName: delete-a-leaf-node-in-a-binary-search-tree
|
||||
@ -8,15 +8,15 @@ dashedName: delete-a-leaf-node-in-a-binary-search-tree
|
||||
|
||||
# --description--
|
||||
|
||||
This is the first of three challenges where we will implement a more difficult operation in binary search trees: deletion. Deletion is difficult because removing nodes breaks links in the tree. These links must be carefully reestablished to ensure the binary tree structure is maintained. For some deletions, this means the tree must be rearranged. In general, you will encounter one of three cases when trying to delete a node: Leaf Node: The target to delete has zero children. One Child: The target to delete only has one child. Two Children: The target to delete has two child nodes. Removing a leaf node is easy, we simply remove it. Deleting a node with one child is also relatively easy, we simply remove it and link its parent to child of the node we deleted. Removing a node with two children is more difficult, however, because this creates two child nodes that need to be reconnected to the parent tree. We'll see how to deal with this case in the third challenge. Additionally, you need to be mindful of some edge cases when handling deletion. What if the tree is empty? What if the node to delete is the root node? What if there are only two elements in the tree? For now, let's handle the first case where we delete a leaf node.
|
||||
Questa è la prima di tre sfide in cui implementeremo un'operazione più difficile negli alberi di ricerca binari: la cancellazione. La cancellazione è difficile perché la rimozione dei nodi rompe i collegamenti nell'albero. Questi collegamenti devono essere ristabiliti attentamente per garantire che la struttura binaria dell'albero sia mantenuta. Per alcune cancellazioni, questo significa che l'albero deve essere riorganizzato. In generale, incontrerai uno di questi tre casi tentando di eliminare un nodo: Nodo foglia: l'obiettivo da eliminare ha zero figli. Un figlio: l'obiettivo da eliminare ha solo un figlio. Due figli: l'obiettivo da eliminare ha due nodi figli. Rimuovere un nodo foglia è facile, semplicemente lo rimuoviamo. Anche l'eliminazione di un nodo con un figlio è relativamente semplice: lo rimuoviamo e colleghiamo il suo genitore al figlio del nodo che abbiamo eliminato. La rimozione di un nodo con due figli è tuttavia più difficile, perché questo crea due nodi figli che devono essere riconnessi all'albero genitore. Vedremo come affrontare questo caso nella terza sfida. Inoltre, bisogna essere consapevoli di alcuni casi base quando si gestisce la cancellazione. Cosa succede se l'albero è vuoto? Cosa succede se il nodo da eliminare è il nodo radice? E se ci fossero solo due elementi nell'albero? Per ora, gestiamo il primo caso in cui cancelliamo un nodo foglia.
|
||||
|
||||
# --instructions--
|
||||
|
||||
Create a method on our binary tree called `remove`. We'll build the logic for our deletion operation in here. First, you'll want to create a function within remove that finds the node we are trying to delete in the current tree. If the node is not present in the tree, `remove` should return `null`. Now, if the target node is a leaf node with no children, then the parent reference to it should be set to `null`. This effectively deletes the node from the tree. To do this, you will have to keep track of the parent of the node we are trying to delete as well. It will also be useful to create a way to track the number of children the target node has, as this will determine which case our deletion falls under. We will handle the second and third cases in the next challenges. Good luck!
|
||||
Crea un metodo sul nostro albero binario denominandolo `remove`. Costruiremo qui la logica per la nostra operazione di eliminazione. In primo luogo, vorrai creare una funzione all'interno di remove che trova il nodo che stiamo cercando di eliminare nell'albero corrente. Se il nodo non è presente nell'albero, `remove` dovrà restituire `null`. Ora, se il nodo di destinazione è un nodo dfoglia senza figli, allora il riferimento del genitore ad esso dovrebbe essere impostato a `null`. Questo elimina efficacemente il nodo dall'albero. Per fare questo, dovrai tenere traccia del genitore del nodo che stiamo cercando di eliminare. Sarà anche utile creare un modo per tenere traccia del numero di figli che ha il nodo di destinazione, in quanto ciò determinerà in quale caso rientra la nostra eliminazione. Nelle prossime sfide affronteremo il secondo e il terzo caso. Buona fortuna!
|
||||
|
||||
# --hints--
|
||||
|
||||
The `BinarySearchTree` data structure should exist.
|
||||
La struttura dati `BinarySearchTree` dovrebbe esistere.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -30,7 +30,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The binary search tree should have a method called `remove`.
|
||||
L'albero binario di ricerca dovrebbe avere un metodo chiamato `remove`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -46,7 +46,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Trying to remove an element that does not exist should return `null`.
|
||||
Tentare di rimuovere un elemento che non esiste dovrebbe restituire `null`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -65,7 +65,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
If the root node has no children, deleting it should set the root to `null`.
|
||||
Se il nodo radice non ha figli, l'eliminazione dovrebbe impostare la radice a `null`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -86,7 +86,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `remove` method should remove leaf nodes from the tree.
|
||||
Il metodo `remove` dovrebbe rimuovere i nodi foglia dall'albero.
|
||||
|
||||
```js
|
||||
assert(
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 587d8258367417b2b2512c81
|
||||
title: Delete a Node with One Child in a Binary Search Tree
|
||||
title: Eliminare un nodo con un figlio in un albero binario di ricerca
|
||||
challengeType: 1
|
||||
forumTopicId: 301638
|
||||
dashedName: delete-a-node-with-one-child-in-a-binary-search-tree
|
||||
@ -8,15 +8,15 @@ dashedName: delete-a-node-with-one-child-in-a-binary-search-tree
|
||||
|
||||
# --description--
|
||||
|
||||
Now that we can delete leaf nodes let's move on to the second case: deleting a node with one child. For this case, say we have a tree with the following nodes 1 — 2 — 3 where 1 is the root. To delete 2, we simply need to make the right reference in 1 point to 3. More generally to delete a node with only one child, we make that node's parent reference the next node in the tree.
|
||||
Ora che sappiamo eliminare i nodi foglia, passiamo al secondo caso: eliminare un nodo con un figlio. Per questo caso, supponiamo di avere un albero con i seguenti nodi 1 — 2 — 3 dove 1 è la radice. Per eliminare il 2, dobbiamo semplicemente far puntare il riferimento destro in 1 a 3. Più in generale per eliminare un nodo con un solo figlio, facciamo in modo che il genitore di quel nodo faccia riferimento al nodo successivo nell'albero.
|
||||
|
||||
# --instructions--
|
||||
|
||||
We've provided some code in our `remove` method that accomplishes the tasks from the last challenge. We find the target to delete and its parent and define the number of children the target node has. Let's add the next case here for target nodes with only one child. Here, we'll have to determine if the single child is a left or right branch in the tree and then set the correct reference in the parent to point to this node. In addition, let's account for the case where the target is the root node (this means the parent node will be `null`). Feel free to replace all the starter code with your own as long as it passes the tests.
|
||||
Abbiamo messo nel nostro metodo `remove` del codice che esegue le attività dall'ultima sfida. Troviamo l'obiettivo da eliminare e il suo genitore e determiniamo il numero di figli che ha il nodo di destinazione. Aggiungiamo qui il caso successivo per i nodi con un solo figlio. Qui dovremo determinare se il singolo figlio è un ramo sinistro o destro nell'albero e quindi impostare il riferimento corretto nel genitore in modo che punti a questo nodo. Inoltre, teniamo conto del caso in cui l'obiettivo è il nodo radice (questo significa che il nodo padre sarà `null`). Sentiti libero di sostituire tutto il codice iniziale con il tuo purché superi i test.
|
||||
|
||||
# --hints--
|
||||
|
||||
The `BinarySearchTree` data structure should exist.
|
||||
La struttura dati `BinarySearchTree` dovrebbe esistere.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -30,7 +30,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The binary search tree should have a method called `remove`.
|
||||
L'albero binario di ricerca dovrebbe avere un metodo chiamato `remove`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -46,7 +46,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Trying to remove an element that does not exist should return `null`.
|
||||
Tentare di rimuovere un elemento che non esiste dovrebbe restituire `null`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -65,7 +65,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
If the root node has no children, deleting it should set the root to `null`.
|
||||
Se il nodo radice non ha figli, l'eliminazione dovrebbe impostare la radice a `null`.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -86,7 +86,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `remove` method should remove leaf nodes from the tree.
|
||||
Il metodo `remove` dovrebbe rimuovere i nodi foglia dall'albero.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -114,7 +114,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
The `remove` method should remove nodes with one child.
|
||||
Il metodo `remove` dovrebbe rimuovere i nodi con un figlio.
|
||||
|
||||
```js
|
||||
assert(
|
||||
@ -140,7 +140,7 @@ assert(
|
||||
);
|
||||
```
|
||||
|
||||
Removing the root in a tree with two nodes should set the second to be the root.
|
||||
Rimuovere la radice in un albero con due nodi dovrebbe impostare il secondo come radice.
|
||||
|
||||
```js
|
||||
assert(
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 594810f028c0303b75339acb
|
||||
title: 100 doors
|
||||
title: 100 porte
|
||||
challengeType: 5
|
||||
forumTopicId: 302217
|
||||
dashedName: 100-doors
|
||||
@ -8,27 +8,27 @@ dashedName: 100-doors
|
||||
|
||||
# --description--
|
||||
|
||||
There are 100 doors in a row that are all initially closed. You make 100 passes by the doors. The first time through, visit every door and 'toggle' the door (if the door is closed, open it; if it is open, close it). The second time, only visit every 2nd door (i.e., door #2, #4, #6, ...) and toggle it. The third time, visit every 3rd door (i.e., door #3, #6, #9, ...), etc., until you only visit the 100th door.
|
||||
Ci sono 100 porte in fila che sono inizialmente tutte chiuse. Fai 100 passaggi vicino alle porte. La prima volta che passi, visiti ogni porta e la azioni (se la porta è chiusa la apri, se è aperta la chiudi). La seconda volta, visita solo ogni seconda porta (cioè le porte numer 2, 4, 6...) e azionala. La terza volta, visita ogni terza porta (cioè, porta #3, #6, #9, ...), ecc., fino a quando non visiti solo la centesima porta.
|
||||
|
||||
# --instructions--
|
||||
|
||||
Implement a function to determine the state of the doors after the last pass. Return the final result in an array, with only the door number included in the array if it is open.
|
||||
Implementa una funzione che determina lo stato delle porte dopo l'ultimo passaggio. Alla fine restituisci un array che contiene il numero di una porta solo se questa è aperta alla fine.
|
||||
|
||||
# --hints--
|
||||
|
||||
`getFinalOpenedDoors` should be a function.
|
||||
`getFinalOpenedDoors` dovrebbe essere una funzione.
|
||||
|
||||
```js
|
||||
assert(typeof getFinalOpenedDoors === 'function');
|
||||
```
|
||||
|
||||
`getFinalOpenedDoors` should return an array.
|
||||
`getFinalOpenedDoors` dovrebbe restituire un array.
|
||||
|
||||
```js
|
||||
assert(Array.isArray(getFinalOpenedDoors(100)));
|
||||
```
|
||||
|
||||
`getFinalOpenedDoors` should produce the correct result.
|
||||
`getFinalOpenedDoors` dovrebbe produrre il risultato corretto.
|
||||
|
||||
```js
|
||||
assert.deepEqual(getFinalOpenedDoors(100), solution);
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: 5a5d02bd919fcf9ca8cf46cb
|
||||
title: Build a Light-Bright App
|
||||
title: Costruisci un'app luminosa
|
||||
challengeType: 3
|
||||
forumTopicId: 302350
|
||||
dashedName: build-a-light-bright-app
|
||||
@ -8,27 +8,27 @@ dashedName: build-a-light-bright-app
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [CodePen.io](https://codepen.io) app that is functionally similar to this: <https://codepen.io/freeCodeCamp/full/eyLYXE>.
|
||||
**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: <https://codepen.io/freeCodeCamp/full/eyLYXE>.
|
||||
|
||||
**Rule #1:** Don't look at the example project's code. Figure it out for yourself.
|
||||
**Regola #1:** Non guardare il codice del progetto esempio. Arrivaci per conto tuo.
|
||||
|
||||
**Rule #2:** Fulfill the below [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
**Regola #2:** Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can click or drag the mouse cursor to color the circles.
|
||||
**User Story:** Posso cliccare o trascinare il cursore del mouse per colorare i cerchi.
|
||||
|
||||
**User Story:** I can double-click on a colored circle to remove the color.
|
||||
**User Story:** Posso fare doppio click su un cerchio colorato per rimuovere il colore.
|
||||
|
||||
**User Story:** I can click on a colored circle to change its color.
|
||||
**User Story:** Posso cliccare su un cerchio colorato per cambiarne il colore.
|
||||
|
||||
**User Story:** I should get a circle of different color on each click.
|
||||
**User Story:** Dovrei ottenere un cerchio di colore diverso ad ogni clic.
|
||||
|
||||
**User Story:** I can click on the 'Reset' button to remove the recent color.
|
||||
**User Story:** Posso usare il pulsante "Reset" per rimuovere il colore recente.
|
||||
|
||||
**User Story:** I can click on the 'Reset All' button to remove all the colors from the circles.
|
||||
**User Story:** Posso usare il bottone "Reset All" per rimuovere tutti i colori dai cerchi.
|
||||
|
||||
When you are finished, include a link to your project on CodePen and click the "I've completed this challenge" button.
|
||||
Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul [forum di freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c443eddfaeb5bdff
|
||||
title: Build a Nightlife Coordination App
|
||||
title: Costruisci un'app per il coordinamento della vita notturna
|
||||
challengeType: 4
|
||||
forumTopicId: 302351
|
||||
dashedName: build-a-nightlife-coordination-app
|
||||
@ -8,21 +8,21 @@ dashedName: build-a-nightlife-coordination-app
|
||||
|
||||
# --description--
|
||||
|
||||
Build a full stack JavaScript app that is functionally similar to this: <https://yoyo44.herokuapp.com/>. Use a site builder of your choice to complete the project.
|
||||
Costruisci un'app JavaScript full-stack che sia funzionalmente simile a questa: [herokuapp.com/](https://yoyo44.herokuapp.com/). Usare un costruttore di siti di tua scelta per completare il progetto.
|
||||
|
||||
Here are the specific user stories you should implement for this project:
|
||||
Ecco le specifiche user story da implementare per questo progetto:
|
||||
|
||||
**User Story:** As an unauthenticated user, you can view all bars in my area.
|
||||
**User Story:** Come utente non autenticato, posso vedere tutti i bar nella mia zona.
|
||||
|
||||
**User Story:** As an authenticated user, you can add myself to a bar to indicate you am going there tonight.
|
||||
**User Story:** Come utente autenticato, posso aggiungermi a un bar per indicarti dove vado questa sera.
|
||||
|
||||
**User Story:** As an authenticated user, you can remove myself from a bar if you no longer want to go there.
|
||||
**User Story:** Come utente autenticato, puoi rimuovermi da un bar se non vuoi più andare là.
|
||||
|
||||
**User Story:** As an unauthenticated user, when you login you should not have to search again.
|
||||
**User Story:** Come utente non autenticato, quando fai login non devi effettuare di nuovo la ricerca.
|
||||
|
||||
**Hint:** Try using the [Yelp API](https://www.yelp.com/developers/documentation/v3) to find venues in the cities your users search for. If you use Yelp's API, be sure to mention so in your app.
|
||||
**Suggerimento:** Prova a usare [l'API di Yelp](https://www.yelp.com/developers/documentation/v3) per trovare locali nelle città cercate dai tuoi utenti. Se usi l'API di Yelp, assicurati di menzionarla nella tua app.
|
||||
|
||||
When you are done, make sure a working demo of your project is hosted somewhere public. Then submit the URL to it in the `Solution Link` field. Optionally, also submit a link to your project's source code in the `GitHub Link` field.
|
||||
Quando hai finito, assicurati che una demo funzionante del tuo progetto sia ospitata in qualche percorso pubblico. Quindi invia l'URL nel campo `Solution Link`. Facoltativamente, invia anche un link al codice sorgente del tuo progetto nel campo `GitHub Link`.
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c442eedfaeb5bd1c
|
||||
title: Build a Tic Tac Toe Game
|
||||
title: Costruisci un gioco Tic Tac Toe
|
||||
challengeType: 3
|
||||
forumTopicId: 302358
|
||||
dashedName: build-a-tic-tac-toe-game
|
||||
@ -8,19 +8,19 @@ dashedName: build-a-tic-tac-toe-game
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [CodePen.io](https://codepen.io) app that is functionally similar to this: <https://codepen.io/freeCodeCamp/full/KzXQgy/>.
|
||||
**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: [https://codepen.io/freeCodeCamp/full/KzXQgy](https://codepen.io/freeCodeCamp/full/KzXQgy/).
|
||||
|
||||
Fulfill the below [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can play a game of Tic Tac Toe with the computer.
|
||||
**User Story:** Posso giocare a Tris con il computer.
|
||||
|
||||
**User Story:** My game will reset as soon as it's over so I can play again.
|
||||
**User Story:** Il gioco si resetterà come finisce così posso giocare di nuovo.
|
||||
|
||||
**User Story:** I can choose whether I want to play as X or O.
|
||||
**User Story:** Posso scegliere se voglio giocare come X o come O.
|
||||
|
||||
When you are finished, include a link to your project on CodePen and click the "I've completed this challenge" button.
|
||||
Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul forum [freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c443eddfaeb5bdef
|
||||
title: Build a Voting App
|
||||
title: Costruisci un'app per le votazioni
|
||||
challengeType: 4
|
||||
forumTopicId: 302359
|
||||
dashedName: build-a-voting-app
|
||||
@ -8,27 +8,27 @@ dashedName: build-a-voting-app
|
||||
|
||||
# --description--
|
||||
|
||||
Build a full stack JavaScript app that is functionally similar to this: <https://voting-app.freecodecamp.rocks/>. Use a site builder of your choice to complete the project.
|
||||
Costruisci un'app JavaScript full-stack che sia funzionalmente simile a questa: <https://voting-app.freecodecamp.rocks/>. Usare un costruttore di siti di tua scelta per completare il progetto.
|
||||
|
||||
Here are the specific user stories you should implement for this project:
|
||||
Ecco le specifiche user story da implementare per questo progetto:
|
||||
|
||||
**User Story:** As an authenticated user, you can keep my polls and come back later to access them.
|
||||
**User Story:** Come utente autenticato, puoi mantenere i miei sondaggi e tornare più tardi per accedervi.
|
||||
|
||||
**User Story:** As an authenticated user, you can share my polls with my friends.
|
||||
**User Story:** Come utente autenticato, puoi condividere i miei sondaggi con i miei amici.
|
||||
|
||||
**User Story:** As an authenticated user, you can see the aggregate results of my polls.
|
||||
**User Story:** Come utente autenticato, puoi vedere i risultati aggregati dei miei sondaggi.
|
||||
|
||||
**User Story:** As an authenticated user, you can delete polls that I decide I don't want anymore.
|
||||
**User Story:** Come utente autenticato, puoi eliminare sondaggi che ho deciso di non volere più.
|
||||
|
||||
**User Story:** As an authenticated user, you can create a poll with any number of possible items.
|
||||
**User Story:** Come utente autenticato, puoi creare un sondaggio con un qualsiasi numero di opzioni.
|
||||
|
||||
**User Story:** As an unauthenticated or authenticated user, you can see and vote on everyone's polls.
|
||||
**User Story:** Come utente non autenticato o come utente autenticato, puoi vedere e votare sui sondaggi di chiunque.
|
||||
|
||||
**User Story:** As an unauthenticated or authenticated user, you can see the results of polls in chart form. (This could be implemented using Chart.js or Google Charts.)
|
||||
**User Story:** Come utente non autenticato o come utente autenticato, puoi vedere i risultati dei sondaggi in forma di grafico. (Questo potrebbe essere implementato utilizzando Chart.js o Google Charts.)
|
||||
|
||||
**User Story:** As an authenticated user, if you don't like the options on a poll, you can create a new option.
|
||||
**User Story:** Come utente autenticato, se non ti piacciono le opzioni su un sondaggio, puoi creare una nuova opzione.
|
||||
|
||||
When you are done, make sure a working demo of your project is hosted somewhere public. Then submit the URL to it in the `Solution Link` field. Optionally, also submit a link to your project's source code in the `GitHub Link` field.
|
||||
Quando hai finito, assicurati che una demo funzionante del tuo progetto sia ospitata in qualche percorso pubblico. Quindi invia l'URL nel campo `Solution Link`. Facoltativamente, invia anche un link al codice sorgente del tuo progetto nel campo `GitHub Link`.
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c442eddfaeb5bd19
|
||||
title: Build a Wikipedia Viewer
|
||||
title: Costruisci un visualizzatore di Wikipedia
|
||||
challengeType: 3
|
||||
forumTopicId: 302360
|
||||
dashedName: build-a-wikipedia-viewer
|
||||
@ -8,23 +8,23 @@ dashedName: build-a-wikipedia-viewer
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [CodePen.io](https://codepen.io) app that is functionally similar to this: <https://codepen.io/freeCodeCamp/full/wGqEga/>.
|
||||
**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: [https://codepen.io/freeCodeCamp/full/wGqEga](https://codepen.io/freeCodeCamp/full/wGqEga/).
|
||||
|
||||
Fulfill the below [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can search Wikipedia entries in a search box and see the resulting Wikipedia entries.
|
||||
**User Story:** Posso cercare articoli di Wikipedia usando una barra di ricerca, e vedere gli articoli trovati.
|
||||
|
||||
**User Story:** I can click a button to see a random Wikipedia entry.
|
||||
**User Story:** Posso premere un bottone per vedere un articolo casuale di Wikipedia.
|
||||
|
||||
Hint #1: Here's a URL you can use to get a random Wikipedia article: `https://en.wikipedia.org/wiki/Special:Random`.
|
||||
Suggerimento #1: Ecco un URL che puoi usare per ottere un articolo di WIkipedia a caso: `https://en.wikipedia.org/wiki/Special:Random`.
|
||||
|
||||
Hint #2: Here's an entry on using Wikipedia's API: `https://www.mediawiki.org/wiki/API:Main_page`.
|
||||
Suggerimento #2: Ecco la documentazione su come usare l'API di Wikipedia: `https://www.mediawiki.org/wiki/API:Main_page`.
|
||||
|
||||
Hint #3: Use this [link](https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&titles=Main%20Page&prop=revisions&rvprop=content&format=jsonfm) to experiment with Wikipedia's API.
|
||||
Suggerimento #3: Usa questo [link](https://en.wikipedia.org/wiki/Special:ApiSandbox#action=query&titles=Main%20Page&prop=revisions&rvprop=content&format=jsonfm) per sperimentare con l'API di Wikipedia.
|
||||
|
||||
When you are finished, include a link to your project on CodePen and click the "I've completed this challenge" button.
|
||||
Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul forum [freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c443eddfaeb5bd0f
|
||||
title: Manage a Book Trading Club
|
||||
title: Gestisci un Club di scambio del libro
|
||||
challengeType: 4
|
||||
forumTopicId: 302364
|
||||
dashedName: manage-a-book-trading-club
|
||||
@ -8,21 +8,21 @@ dashedName: manage-a-book-trading-club
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [Replit](https://replit.com/) app that is functionally similar to this: <https://manage-a-book-trading-club.freecodecamp.rocks/>.
|
||||
**Obiettivo:** Costruisci un'app [Replit](https://replit.com/) funzionalmente simile a questa: [https://p2phttps://manage-a-book-trading-club.freecodecamp.rocks/](https://manage-a-book-trading-club.freecodecamp.rocks/).
|
||||
|
||||
Fulfill the below [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can view all books posted by every user.
|
||||
**User Story:** Posso vedere tutti i libri postati da ogni utente.
|
||||
|
||||
**User Story:** I can add a new book.
|
||||
**User Story:** Posso aggiungere un nuovo libro.
|
||||
|
||||
**User Story:** I can update my settings to store my full name, city, and state.
|
||||
**User Story:** Posso aggiornare le mie impostazioni per aggiungere il mio nome, la mia città e il mio stato.
|
||||
|
||||
**User Story:** I can propose a trade and wait for the other user to accept the trade.
|
||||
**User Story:** Posso proporre uno scambio e aspettare che l'altro utente accetti lo scambio.
|
||||
|
||||
Once you've finished implementing these user stories, enter the URL to your live app and, optionally, your GitHub repository. Then click the "I've completed this challenge" button.
|
||||
Una volta terminata l'implementazione di queste user story, scrivi l'URL della tua app live e, opzionalmente, il tuo repository GitHub. Quindi clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul forum [freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7198d8c242eddfaeb5bd13
|
||||
title: Show National Contiguity with a Force Directed Graph
|
||||
title: Mostra la Contiguità Nazionale con un Grafico diretto della Forza
|
||||
challengeType: 3
|
||||
forumTopicId: 302367
|
||||
dashedName: show-national-contiguity-with-a-force-directed-graph
|
||||
@ -8,21 +8,21 @@ dashedName: show-national-contiguity-with-a-force-directed-graph
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [CodePen.io](https://codepen.io) app that is functionally similar to this: <https://codepen.io/freeCodeCamp/full/xVopBo>.
|
||||
**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: <https://codepen.io/freeCodeCamp/full/xVopBo>.
|
||||
|
||||
Fulfill the following [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can see a Force-directed Graph that shows which countries share borders.
|
||||
**User Story:** Posso vedere un Grafico diretto dalla Forza che mostra quali Paesi hanno confini in comune.
|
||||
|
||||
**User Story:** I can see each country's flag on its node.
|
||||
**User Story:** Posso vedere la bandiera di ogni paese sul suo nodo.
|
||||
|
||||
**Hint:** Here's a dataset you can use to build this: <https://raw.githubusercontent.com/DealPete/forceDirected/master/countries.json>
|
||||
**Suggerimento:** Ecco un dataset che puoi usare per costruirlo: <https://raw.githubusercontent.com/DealPete/forceDirected/master/countries.json>
|
||||
|
||||
**Hint:** You can create a spritesheet of national flags at <https://www.flag-sprites.com>.
|
||||
**Suggerimento:** Puoi creare uno sprite delle bandiere nazionali usando <https://www.flag-sprites.com>.
|
||||
|
||||
When you are finished, include a link to your project on CodePen and click the "I've completed this challenge" button.
|
||||
Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul [forum di freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
@ -1,6 +1,6 @@
|
||||
---
|
||||
id: bd7158d8c442eddfaeb5bd10
|
||||
title: Show the Local Weather
|
||||
title: Mostra il Meteo locale
|
||||
challengeType: 3
|
||||
forumTopicId: 302368
|
||||
dashedName: show-the-local-weather
|
||||
@ -8,23 +8,23 @@ dashedName: show-the-local-weather
|
||||
|
||||
# --description--
|
||||
|
||||
**Objective:** Build a [CodePen.io](https://codepen.io) app that is functionally similar to this: <https://codepen.io/freeCodeCamp/full/bELRjV>.
|
||||
**Obiettivo:** Costruisci un'app [CodePen.io](https://codepen.io) funzionalmente simile a questa: <https://codepen.io/freeCodeCamp/full/bELRjV>.
|
||||
|
||||
**Rule #1:** Don't look at the example project's code. Figure it out for yourself.
|
||||
**Regola #1:** Non guardare il codice del progetto di esempio. Arrivaci per conto tuo.
|
||||
|
||||
**Rule #2:** Fulfill the below [user stories](https://en.wikipedia.org/wiki/User_story). Use whichever libraries or APIs you need. Give it your own personal style.
|
||||
**Regola #2:** Soddisfa le seguenti [user story](https://en.wikipedia.org/wiki/User_story). Utilizza le librerie o le API di cui hai bisogno. Usa il tuo stile personale.
|
||||
|
||||
**User Story:** I can see the weather in my current location.
|
||||
**User Story:** Posso vedere il meteo della mia posizione attuale.
|
||||
|
||||
**User Story:** I can see a different icon or background image (e.g. snowy mountain, hot desert) depending on the weather.
|
||||
**User Story:** Posso vedere un'icona o un'immagine di sfondo diversa (per esempio montagna innevata, deserto caldo) a seconda del tempo atmosferico.
|
||||
|
||||
**User Story:** I can push a button to toggle between Fahrenheit and Celsius.
|
||||
**User Story:** Posso premere un pulsante per passare da Fahrenheit a Celsius e viceversa.
|
||||
|
||||
**Note:** Many internet browsers now require an HTTP Secure (`https://`) connection to obtain a user's locale via HTML5 Geolocation. For this reason, we recommend using HTML5 Geolocation to get user location and then use the freeCodeCamp Weather API <https://weather-proxy.freecodecamp.rocks/> which uses an HTTP Secure connection for the weather. Also, be sure to connect to [CodePen.io](https://codepen.io) via `https://`.
|
||||
**Nota:** Molti browser Internet richiedono una connessione HTTP Secure (`https://`) per ottenere la posizione di un utente tramite Geolocalizzazione HTML5. Per questa ragione raccomandiamo l'uso della geolocalizzazione HTML5 per ottenere la posizione dell'utente, e poi di usare l'API meteo di freeCodeCamp (freeCodeCamp Weather API) <https://weather-proxy.freecodecamp.rocks/> la quale usa una connessione HTTP Secure per il meteo. Assicurati anche di connetterti a [CodePen.io](https://codepen.io) via `https://`.
|
||||
|
||||
When you are finished, include a link to your project on CodePen and click the "I've completed this challenge" button.
|
||||
Quando hai finito, includi un link al tuo progetto su CodePen e clicca sul pulsante "Ho completato questa sfida".
|
||||
|
||||
You can get feedback on your project by sharing it on the [freeCodeCamp forum](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
Puoi ottenere un feedback sul tuo progetto condividendolo sul forum [freeCodeCamp](https://forum.freecodecamp.org/c/project-feedback/409).
|
||||
|
||||
# --solutions--
|
||||
|
||||
|
Reference in New Issue
Block a user