From d756acce79a8fbac549251dae329650f99ba5533 Mon Sep 17 00:00:00 2001 From: dev-sala Date: Wed, 5 Mar 2014 16:06:23 +0100 Subject: [Brainfuck/it-it] started the translation\n\nStarted the english-italian translation of Brainfuck document. --- it-it/brainfuck-it.html.markdown | 92 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 it-it/brainfuck-it.html.markdown (limited to 'it-it/brainfuck-it.html.markdown') diff --git a/it-it/brainfuck-it.html.markdown b/it-it/brainfuck-it.html.markdown new file mode 100644 index 00000000..9b882b2f --- /dev/null +++ b/it-it/brainfuck-it.html.markdown @@ -0,0 +1,92 @@ +--- + +language: brainfuck +contributors: + - ["Prajit Ramachandran", "http://prajitr.github.io/"] + - ["Mathias Bynens", "http://mathiasbynens.be/"] +translators: + - ["Ivan Sala", "http://slavni.github.io/"] +lang: it-it + +--- + +Brainfuck è un linguaggio di programmazione estremamente minimale, +ma è ingrado di rappresentare completamente una macchina di turnig, +e sfrutta solo 8 caratteri. +[Per saperne di più](http://it.wikipedia.org/wiki/Brainfuck) + +``` + +Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) viene ignorato. +Branfuck è caratterizzato da un array (vettore) di 30,000 celle inizializzare a zero, e un puntatore che punta alla cella corrente. + +Vi sono solo otto comando: ++ : Incrementa il valore della cella attuale di uno. +- : Decrementa il valore della cella attuale di uno. +> : Sposta il puntatore sulla cella seguente (prossima a destra). +< : Sposta il puntatore sulla cella precendete (precedente a sinistra). +. : Stampa il valore in ASCII della cella corrente. (es: 65 = 'A') +, : Legge un singolo carattere come input per la cella corrente. +[ : Se il valore della cella corrente è zero, conclude il ciclo + andando alla sua corrispondente ]. + Altrimenti, passa alla prossima istruzione. +] : Se il valore della cella corrente è zero, passa alla prossima istruzione. + Altrimenti torna indetro fino alla [ corrispondente. + +[ e ] creano un loop (while). Ovviamente dovranno essere bilanciati. +Per ogni [ dovrà corrispondere una ] + +Alcuni semplici esempi di programmi scritti in Brainfuck: + +++++++ [ > ++++++++++ < - ] > +++++ . + +Questo programma stampa in output la lettera 'A'. Priam incrementa +la cella #1 fino a 6, Quindi la cella #1 viene usata per crare un ciclo. +Poi, entra in un loop ([) e si sposta alla cella #2. +Incrementa la cella #2 10 volte, e torna alla cella #1, e la decrementa. +Questo avviene 6 volte (servono che la cella #1 venga decrementata 6 volte +per raggiungere lo 0. Quindi passa alla corrispondente ] e prosegue). + +A questo punto, siamo sulla cella #1, che ha valore 0, +la cella #2 ha valore 60 (6*10). Ci spostiamo sulla cella #2, incrementiamo +per 5 volte, e otteniamo il valore 65, quindi stampaimo il valore della cella +#2 (.). +65 è 'A' in ASCII, quindi alla fine viene stampata 'A'. + + +, [ > + < - ] > . + +This program reads a character from the user input and copies the character into +cell #1. Then we start a loop. Move to cell #2, increment the value at cell #2, +move back to cell #1, and decrement the value at cell #1. This continues on +until cell #1 is 0, and cell #2 holds cell #1's old value. Because we're on +cell #1 at the end of the loop, move to cell #2, and then print out the value +in ASCII. + +Also keep in mind that the spaces are purely for readability purposes. You +could just as easily write it as: + +,[>+<-]>. + +Try and figure out what this program does: + +,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> + +This program takes two numbers for input, and multiplies them. + +The gist is it first reads in two inputs. Then it starts the outer loop, +conditioned on cell #1. Then it moves to cell #2, and starts the inner +loop conditioned on cell #2, incrementing cell #3. However, there comes a +problem: At the end of the inner loop, cell #2 is zero. In that case, +inner loop won't work anymore since next time. To solve this problem, +we also increment cell #4, and then recopy cell #4 into cell #2. +Then cell #3 is the result. +``` + +E questo è brainfuck...Non è difficele, vero? +Per divertimento adesso puoi scrivere i tuoi programmi in brainfuck, +oppure puoi scrivere un interprete brainfuck in un altro linguaggio. +L'interprete è abbastanza semplice da implementare, ma se sei veramente +masochista prova ad implementare un interprete brainfuck in... +brainfuck. + -- cgit v1.2.3 From 0bea9954748c01f5e039ec940630ff3447148655 Mon Sep 17 00:00:00 2001 From: dev-sala Date: Wed, 5 Mar 2014 16:12:13 +0100 Subject: [Brainfuck/it-it] some fixes\n\nWrong translator name. Italian corrections --- it-it/brainfuck-it.html.markdown | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'it-it/brainfuck-it.html.markdown') diff --git a/it-it/brainfuck-it.html.markdown b/it-it/brainfuck-it.html.markdown index 9b882b2f..2705fb4c 100644 --- a/it-it/brainfuck-it.html.markdown +++ b/it-it/brainfuck-it.html.markdown @@ -5,7 +5,7 @@ contributors: - ["Prajit Ramachandran", "http://prajitr.github.io/"] - ["Mathias Bynens", "http://mathiasbynens.be/"] translators: - - ["Ivan Sala", "http://slavni.github.io/"] + - ["Ivan Sala", "http://slavni96.github.io/"] lang: it-it --- -- cgit v1.2.3 From 64e6da392320d0706520f4edf9008f8a775c8a78 Mon Sep 17 00:00:00 2001 From: dev-sala Date: Tue, 11 Mar 2014 15:37:10 +0100 Subject: Complited translation finishied translating brainfuck form english to italian --- it-it/brainfuck-it.html.markdown | 50 ++++++++++++++++++++++++---------------- 1 file changed, 30 insertions(+), 20 deletions(-) (limited to 'it-it/brainfuck-it.html.markdown') diff --git a/it-it/brainfuck-it.html.markdown b/it-it/brainfuck-it.html.markdown index 2705fb4c..9316c35e 100644 --- a/it-it/brainfuck-it.html.markdown +++ b/it-it/brainfuck-it.html.markdown @@ -17,8 +17,10 @@ e sfrutta solo 8 caratteri. ``` -Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) viene ignorato. -Branfuck è caratterizzato da un array (vettore) di 30,000 celle inizializzare a zero, e un puntatore che punta alla cella corrente. +Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) +viene ignorato. +Branfuck è caratterizzato da un array (vettore) di 30,000 celle +inizializzare a zero, e un puntatore che punta alla cella corrente. Vi sono solo otto comando: + : Incrementa il valore della cella attuale di uno. @@ -56,31 +58,39 @@ per 5 volte, e otteniamo il valore 65, quindi stampaimo il valore della cella , [ > + < - ] > . -This program reads a character from the user input and copies the character into -cell #1. Then we start a loop. Move to cell #2, increment the value at cell #2, -move back to cell #1, and decrement the value at cell #1. This continues on -until cell #1 is 0, and cell #2 holds cell #1's old value. Because we're on -cell #1 at the end of the loop, move to cell #2, and then print out the value -in ASCII. +Questo programma legge un carattere come input dall'utente, +quindi salva il carattere dentro la cella #1. +In seguito, incominca a ciclare. +Si sposta alla cella #², e increementa il valore della cella (#2). +Quindi torna alla cella #1, e decrementa il valore della cella (#1). +Questo continua fino a quando la cella #²1 diventa 0, e quindi la cella #2 +avrà il valore iniziale della cella #1. +Infine, visto che ci troviamo sulla cella #1 alla fine del ciclo, si sposta +sulla cella #2 e stampa il valore in ASCII. -Also keep in mind that the spaces are purely for readability purposes. You -could just as easily write it as: +Gli spazi nel codice sovrastante, sono presenti solo a scopo di ottenere +una maggiore leggibilità, si poteva anche scrivere senza: ,[>+<-]>. -Try and figure out what this program does: +Proviamo, adesso, a capire cosa fa invece questo programma: ,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> -This program takes two numbers for input, and multiplies them. - -The gist is it first reads in two inputs. Then it starts the outer loop, -conditioned on cell #1. Then it moves to cell #2, and starts the inner -loop conditioned on cell #2, incrementing cell #3. However, there comes a -problem: At the end of the inner loop, cell #2 is zero. In that case, -inner loop won't work anymore since next time. To solve this problem, -we also increment cell #4, and then recopy cell #4 into cell #2. -Then cell #3 is the result. +Prende due numeri in input e quindi li moltiplica. + +Prima prende in input i due numeri (,>,<), quindi inizia un cilclo +basandosi sulla cella #1. +Quindi si sposta sulla cella #2, e inizia un altro ciclo condizionato +dal valore della cella #2, incrementando la cella #3. +Arrivati a questo punto abbiamo un problema: alla fine del ciclo interno +la cella #2 ha valore 0. In questo caso, quando il ciclo esterno rifarà +partire il ciclo interno, non funzionerà più perchè la cella #2 ha valore 0. +Per ovviare a questo problema, oltre alla cella 3, incrementiamo anche la cella +#4, e alla fine di ogni ciclo interno copiala il valore della cella #4 +nella cella #2, in modo che il ciclo interno +possa essere eseguito una altra volta. +Alla fine la cella #3 contiene il risultato. ``` E questo è brainfuck...Non è difficele, vero? -- cgit v1.2.3 From 92aa655d76f05ead8b4c9130f575740c1233e8ab Mon Sep 17 00:00:00 2001 From: dev-sala Date: Tue, 11 Mar 2014 15:40:05 +0100 Subject: Revert "Complited translation" This reverts commit 64e6da392320d0706520f4edf9008f8a775c8a78. --- it-it/brainfuck-it.html.markdown | 50 ++++++++++++++++------------------------ 1 file changed, 20 insertions(+), 30 deletions(-) (limited to 'it-it/brainfuck-it.html.markdown') diff --git a/it-it/brainfuck-it.html.markdown b/it-it/brainfuck-it.html.markdown index 9316c35e..2705fb4c 100644 --- a/it-it/brainfuck-it.html.markdown +++ b/it-it/brainfuck-it.html.markdown @@ -17,10 +17,8 @@ e sfrutta solo 8 caratteri. ``` -Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) -viene ignorato. -Branfuck è caratterizzato da un array (vettore) di 30,000 celle -inizializzare a zero, e un puntatore che punta alla cella corrente. +Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) viene ignorato. +Branfuck è caratterizzato da un array (vettore) di 30,000 celle inizializzare a zero, e un puntatore che punta alla cella corrente. Vi sono solo otto comando: + : Incrementa il valore della cella attuale di uno. @@ -58,39 +56,31 @@ per 5 volte, e otteniamo il valore 65, quindi stampaimo il valore della cella , [ > + < - ] > . -Questo programma legge un carattere come input dall'utente, -quindi salva il carattere dentro la cella #1. -In seguito, incominca a ciclare. -Si sposta alla cella #², e increementa il valore della cella (#2). -Quindi torna alla cella #1, e decrementa il valore della cella (#1). -Questo continua fino a quando la cella #²1 diventa 0, e quindi la cella #2 -avrà il valore iniziale della cella #1. -Infine, visto che ci troviamo sulla cella #1 alla fine del ciclo, si sposta -sulla cella #2 e stampa il valore in ASCII. +This program reads a character from the user input and copies the character into +cell #1. Then we start a loop. Move to cell #2, increment the value at cell #2, +move back to cell #1, and decrement the value at cell #1. This continues on +until cell #1 is 0, and cell #2 holds cell #1's old value. Because we're on +cell #1 at the end of the loop, move to cell #2, and then print out the value +in ASCII. -Gli spazi nel codice sovrastante, sono presenti solo a scopo di ottenere -una maggiore leggibilità, si poteva anche scrivere senza: +Also keep in mind that the spaces are purely for readability purposes. You +could just as easily write it as: ,[>+<-]>. -Proviamo, adesso, a capire cosa fa invece questo programma: +Try and figure out what this program does: ,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> -Prende due numeri in input e quindi li moltiplica. - -Prima prende in input i due numeri (,>,<), quindi inizia un cilclo -basandosi sulla cella #1. -Quindi si sposta sulla cella #2, e inizia un altro ciclo condizionato -dal valore della cella #2, incrementando la cella #3. -Arrivati a questo punto abbiamo un problema: alla fine del ciclo interno -la cella #2 ha valore 0. In questo caso, quando il ciclo esterno rifarà -partire il ciclo interno, non funzionerà più perchè la cella #2 ha valore 0. -Per ovviare a questo problema, oltre alla cella 3, incrementiamo anche la cella -#4, e alla fine di ogni ciclo interno copiala il valore della cella #4 -nella cella #2, in modo che il ciclo interno -possa essere eseguito una altra volta. -Alla fine la cella #3 contiene il risultato. +This program takes two numbers for input, and multiplies them. + +The gist is it first reads in two inputs. Then it starts the outer loop, +conditioned on cell #1. Then it moves to cell #2, and starts the inner +loop conditioned on cell #2, incrementing cell #3. However, there comes a +problem: At the end of the inner loop, cell #2 is zero. In that case, +inner loop won't work anymore since next time. To solve this problem, +we also increment cell #4, and then recopy cell #4 into cell #2. +Then cell #3 is the result. ``` E questo è brainfuck...Non è difficele, vero? -- cgit v1.2.3 From a679cc8281627bfce9337774fb076bcd402007e5 Mon Sep 17 00:00:00 2001 From: dev-sala Date: Tue, 11 Mar 2014 15:44:47 +0100 Subject: Complited translation finished translating brainfuck from english to italian --- it-it/brainfuck-it.html.markdown | 51 +++++++++++++++++++++++----------------- 1 file changed, 30 insertions(+), 21 deletions(-) (limited to 'it-it/brainfuck-it.html.markdown') diff --git a/it-it/brainfuck-it.html.markdown b/it-it/brainfuck-it.html.markdown index 2705fb4c..4999d7e6 100644 --- a/it-it/brainfuck-it.html.markdown +++ b/it-it/brainfuck-it.html.markdown @@ -17,8 +17,10 @@ e sfrutta solo 8 caratteri. ``` -Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) viene ignorato. -Branfuck è caratterizzato da un array (vettore) di 30,000 celle inizializzare a zero, e un puntatore che punta alla cella corrente. +Qualsiasi carattere che non sia "><+-.,[]" (escludendo gli apici) +viene ignorato. +Branfuck è caratterizzato da un array (vettore) di 30,000 celle +inizializzare a zero, e un puntatore che punta alla cella corrente. Vi sono solo otto comando: + : Incrementa il valore della cella attuale di uno. @@ -56,31 +58,39 @@ per 5 volte, e otteniamo il valore 65, quindi stampaimo il valore della cella , [ > + < - ] > . -This program reads a character from the user input and copies the character into -cell #1. Then we start a loop. Move to cell #2, increment the value at cell #2, -move back to cell #1, and decrement the value at cell #1. This continues on -until cell #1 is 0, and cell #2 holds cell #1's old value. Because we're on -cell #1 at the end of the loop, move to cell #2, and then print out the value -in ASCII. +Questo programma legge un carattere come input dall'utente, +quindi salva il carattere dentro la cella #1. +In seguito, incominca a ciclare. +Si sposta alla cella #², e increementa il valore della cella (#2). +Quindi torna alla cella #1, e decrementa il valore della cella (#1). +Questo continua fino a quando la cella #²1 diventa 0, e quindi la cella #2 +avrà il valore iniziale della cella #1. +Infine, visto che ci troviamo sulla cella #1 alla fine del ciclo, si sposta +sulla cella #2 e stampa il valore in ASCII. -Also keep in mind that the spaces are purely for readability purposes. You -could just as easily write it as: +Gli spazi nel codice sovrastante, sono presenti solo a scopo di ottenere +una maggiore leggibilità, si poteva anche scrivere senza: ,[>+<-]>. -Try and figure out what this program does: +Proviamo, adesso, a capire cosa fa invece questo programma: ,>,< [ > [ >+ >+ << -] >> [- << + >>] <<< -] >> -This program takes two numbers for input, and multiplies them. - -The gist is it first reads in two inputs. Then it starts the outer loop, -conditioned on cell #1. Then it moves to cell #2, and starts the inner -loop conditioned on cell #2, incrementing cell #3. However, there comes a -problem: At the end of the inner loop, cell #2 is zero. In that case, -inner loop won't work anymore since next time. To solve this problem, -we also increment cell #4, and then recopy cell #4 into cell #2. -Then cell #3 is the result. +Prende due numeri in input e quindi li moltiplica. + +Prima prende in input i due numeri (,>,<), quindi inizia un cilclo +basandosi sulla cella #1. +Quindi si sposta sulla cella #2, e inizia un altro ciclo condizionato +dal valore della cella #2, incrementando la cella #3. +Arrivati a questo punto abbiamo un problema: alla fine del ciclo interno +la cella #2 ha valore 0. In questo caso, quando il ciclo esterno rifarà +partire il ciclo interno, non funzionerà più perchè la cella #2 ha valore 0. +Per ovviare a questo problema, oltre alla cella 3, incrementiamo anche la cella +#4, e alla fine di ogni ciclo interno copiala il valore della cella #4 +nella cella #2, in modo che il ciclo interno +possa essere eseguito una altra volta. +Alla fine la cella #3 contiene il risultato. ``` E questo è brainfuck...Non è difficele, vero? @@ -89,4 +99,3 @@ oppure puoi scrivere un interprete brainfuck in un altro linguaggio. L'interprete è abbastanza semplice da implementare, ma se sei veramente masochista prova ad implementare un interprete brainfuck in... brainfuck. - -- cgit v1.2.3