I giochi matematici di guidox

Discussioni non riguardanti gamemaker, che abbiano un minimo di serietà (niente immagini/video comici e trollate varie)
Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

I giochi matematici di guidox

Messaggio da guidox »

Non avete nulla da fare, volete divertirvi facendo quattro calcoli e ragionando su qualche problema? Bene questo topic fa per voi!
Ogni settimane(+ o -) posterò un nuovo enigma/esercizio/passatempo matematico con cui potrete passare qualche minuto ;)

L'enigma di oggi mi è venuto in mente oggi al mare, stavo con un mio amico e un mazzo di carte ad annoiarmi, allora ci siamo messi a fare castelli di carte, ovviamente io sono finito con il cellulare a trovare una funzione che trovasse il numero di carte che ci voglio per fare una torre a X piani, provateci anche voi!

Per castello di carta intendo questo:
Immagine
ecc...

Per chi non capisse, una torre di 1 piano ha 2 carte, una di 2 piani ne ha 7, una di 3 piani ne ha 15, ecc...

Non è una gara, se volete scrivere la soluzione mettetela sotto spoiler, anche se questo è fin troppo facile, per la prossima volta ne trovo uno più cattivo! Più interessante sarebbe sapere come ci siete arrivati, così da confrontare le diverse strade a cui si può arrivare alla soluzione ;)

PS: Se ho un mazzo di carte da briscola(40 carte) quanti piani posso fare?
Ultima modifica di guidox il 03/08/2013, 9:57, modificato 1 volta in totale.
Immagine

Immagine

Avatar utente
jumoonp
GMI VIP
Messaggi: 3292
Iscritto il: 13/01/2008, 20:59
Contatta:

Re: I giochi matematici di guidox

Messaggio da jumoonp »

guidox ha scritto:Se ho sbagliato sezione ditemelo...

Non avete nulla da fare, volete divertirvi facendo quattro calcoli e ragionando su qualche problema? Bene questo topic fa per voi!
Ogni settimane(+ o -) posterò un nuovo enigma/esercizio/passatempo matematico con cui potrete passare qualche minuto ;)

L'enigma di oggi mi è venuto in mente oggi al mare, stavo con un mio amico e un mazzo di carte ad annoiarmi, allora ci siamo messi a fare castelli di carte, ovviamente io sono finito con il cellulare a trovare una funzione che trovasse il numero di carte che ci voglio per fare una torre a X piani, provateci anche voi!

Per castello di carta intendo questo:
Immagine
ecc...

Per chi non capisse, una torre di 1 piano ha 2 carte, una di 2 piani ne ha 7, una di 3 piani ne ha 15, ecc...

Non è una gara, se volete scrivere la soluzione mettetela sotto spoiler, anche se questo è fin troppo facile, per la prossima volta ne trovo uno più cattivo! Più interessante sarebbe sapere come ci siete arrivati, così da confrontare le diverse strade a cui si può arrivare alla soluzione ;)

PS: Se ho un mazzo di carte da briscola(40 carte) quanti piani posso fare?
5 piani con 40 carte, ciccio...
impegnati un pò di più con i quesiti....come ci sono arrivato? ho contato con i diti....
ma anche no, basta moltiplicare 3 per il numero dei piani e aggiungere 2 da sommare con le carte precedenti

esempio: 3 x 3 piani=9 +2=11 +(15 carte dei 3 piani)=26

4 piani=26 carte
----------------------------------

3 x 4 piani=12+2=14+(26 carte dei 4 piani)=40
5 piani=40 carte
Spoiler
Gabriele Dell'Otto e Lee bermejo

Immagine

Avatar utente
aironenero
GMI Guru
Messaggi: 2612
Iscritto il: 02/05/2012, 14:56
Specialità: Unity 3D
Uso: GM:Studio 1.4 Pro
Località: Ispica
Contatta:

Re: I giochi matematici di guidox

Messaggio da aironenero »

jumoonp ha scritto:
guidox ha scritto:Se ho sbagliato sezione ditemelo...

Non avete nulla da fare, volete divertirvi facendo quattro calcoli e ragionando su qualche problema? Bene questo topic fa per voi!
Ogni settimane(+ o -) posterò un nuovo enigma/esercizio/passatempo matematico con cui potrete passare qualche minuto ;)

L'enigma di oggi mi è venuto in mente oggi al mare, stavo con un mio amico e un mazzo di carte ad annoiarmi, allora ci siamo messi a fare castelli di carte, ovviamente io sono finito con il cellulare a trovare una funzione che trovasse il numero di carte che ci voglio per fare una torre a X piani, provateci anche voi!

Per castello di carta intendo questo:
Immagine
ecc...

Per chi non capisse, una torre di 1 piano ha 2 carte, una di 2 piani ne ha 7, una di 3 piani ne ha 15, ecc...

Non è una gara, se volete scrivere la soluzione mettetela sotto spoiler, anche se questo è fin troppo facile, per la prossima volta ne trovo uno più cattivo! Più interessante sarebbe sapere come ci siete arrivati, così da confrontare le diverse strade a cui si può arrivare alla soluzione ;)

PS: Se ho un mazzo di carte da briscola(40 carte) quanti piani posso fare?
5 piani con 40 carte, ciccio...
impegnati un pò di più con i quesiti....come ci sono arrivato? ho contato con i diti....
ma anche no, basta moltiplicare 3 per il numero dei piani e aggiungere 2 da sommare con le carte precedenti

esempio: 3 x 3 piani=9 +2=11 +(15 carte dei 3 piani)=26

4 piani=26 carte
----------------------------------

3 x 4 piani=12+2=14+(26 carte dei 4 piani)=40
5 piani=40 carte
jum non ho capito perche 3x3? pervche moltiplicare il numero dei piani per 3?
Unity Developer
Immagine
Immagine

Avatar utente
jumoonp
GMI VIP
Messaggi: 3292
Iscritto il: 13/01/2008, 20:59
Contatta:

Re: I giochi matematici di guidox

Messaggio da jumoonp »

aironenero ha scritto: jum non ho capito perche 3x3? pervche moltiplicare il numero dei piani per 3?

Se devi aggiungere un piano, devi anche allargare la base del "colosseo" di un arcata, che è composta di tre carte
Spoiler
Gabriele Dell'Otto e Lee bermejo

Immagine

Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

Re: I giochi matematici di guidox

Messaggio da guidox »

Quello era il ps... io vi stavo chiedendo la funzione che dato il numero di piani ti restituisce il numero di carte...
Immagine

Immagine

Jak
Admin
Messaggi: 12355
Iscritto il: 19/08/2009, 16:20
Specialità: Programmazione 3D
Uso: GM:Studio 2
Contatta:

Re: I giochi matematici di guidox

Messaggio da Jak »

Bè, jum ha dato comunque la soluzione.
In codice viene fuori:
Spoiler

Codice: Seleziona tutto

//get_cards(numero piani)
var tot;
tot = 0;

for (i = 0; i < argument0; i += 1)
{
    tot += (3 * i) + 2;
}

return tot;
Time to feel, time to believe
Dare to see what may come of our future
Lift your head, broaden your gaze
Speak your mind and your thoughts they will follow you

Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

Re: I giochi matematici di guidox

Messaggio da guidox »

Ma no ragazzi dai! Senza for! Basta una semplice funzione matematica :P
Immagine

Immagine

Nix
GMI Advanced
Messaggi: 2437
Iscritto il: 26/12/2008, 18:14
Uso: GM:Studio 2
Contatta:

Re: I giochi matematici di guidox

Messaggio da Nix »

Con x > 0: x - 1 + 2x + f(x - 1)
Con x <= 0: 0

(x è il piano, f è la funzione stessa)

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: I giochi matematici di guidox

Messaggio da Sla »

più che funzione è una successione
eppure mi sembra tutto giusto...

Avatar utente
Tizzio
GMI Honor
Messaggi: 5836
Iscritto il: 29/06/2010, 23:43
Specialità: programmazione
Contatta:

Re: I giochi matematici di guidox

Messaggio da Tizzio »

guidox ha scritto:Ma no ragazzi dai! Senza for! Basta una semplice funzione matematica :P
la ricorsione è il male nella programmazione

Nix
GMI Advanced
Messaggi: 2437
Iscritto il: 26/12/2008, 18:14
Uso: GM:Studio 2
Contatta:

Re: I giochi matematici di guidox

Messaggio da Nix »

Tizzio ha scritto:
guidox ha scritto:Ma no ragazzi dai! Senza for! Basta una semplice funzione matematica :P
la ricorsione è il male nella programmazione
Perché.

Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

Re: I giochi matematici di guidox

Messaggio da guidox »

Forse non mi faccio capire... La soluzione per me è questa:
Spoiler
numero_di_carte = piani(3*piani+1)/2

Io ci sono arrivato così:

Prendiamo la formula:
n(n+1)/2;
che serve per calcolare la somma di tutti i numeri da 1 a n.

Per calcolare le carte messe in orizzontale basta fare quindi:
(n-1)((n-1)+1)/2;
n(n-1)/2;

Per calcolare le carte messe in verticale(o meglio obblique):
n(n+1)/2*2;
n(n+1);

Sommo le due funzioni:
n(n-1)/2+n(n+1);
n(3n+1)/2;

Quindi!
numero_di_carte = piani(3*piani+1)/2
Immagine

Immagine

Avatar utente
Tizzio
GMI Honor
Messaggi: 5836
Iscritto il: 29/06/2010, 23:43
Specialità: programmazione
Contatta:

Re: I giochi matematici di guidox

Messaggio da Tizzio »

Nix ha scritto:
Tizzio ha scritto: la ricorsione è il male nella programmazione
Perché.
Tutte le volte che l'ho utilizzata, ho riscontrato dei rallentamenti rispetto ad usare dei cicli abbinati a queue o stack.

Esempi:
-Algoritmo flood fill
-A* pathfinding

Se guardi gli algoritmi ufficiali, non utilizzano ricorsione

Nix
GMI Advanced
Messaggi: 2437
Iscritto il: 26/12/2008, 18:14
Uso: GM:Studio 2
Contatta:

Re: I giochi matematici di guidox

Messaggio da Nix »

Tizzio ha scritto:
Nix ha scritto: Perché.
Tutte le volte che l'ho utilizzata, ho riscontrato dei rallentamenti rispetto ad usare dei cicli abbinati a queue o stack.

Esempi:
-Algoritmo flood fill
-A* pathfinding

Se guardi gli algoritmi ufficiali, non utilizzano ricorsione
Dipende da come viene implementata. Quando la funzione si autochiama alla fine, questa chiamata può essere ottimizzata in modo da avere prestazioni equivalenti a quelle dei loop (tail recursion). Tutto ciò che si può fare tramite loop (for, while, etc.) si può fare anche con la ricorsione ottimizzata. Se hai riscontrato rallentamenti, sarà GM o il tuo compilatore che fa schifo e non ottimizza niente.

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: I giochi matematici di guidox

Messaggio da Sla »

La funzione richiesta è 2+ 5( (n^2+n)/2 )

con n appartenente a N = numero di piani - 1 .
edit: fanculo, avete già postato.
edit2: guidox la tua soluzione è sbagliata. Funziona bene per i primi 2 piani, ma per il terzo restituisce 15 mentre ne servono 17
edit3: niente ho sbagliato io, mi immaginavo il castello di carte con più /\ per piano.
eppure mi sembra tutto giusto...

Avatar utente
jumoonp
GMI VIP
Messaggi: 3292
Iscritto il: 13/01/2008, 20:59
Contatta:

Re: I giochi matematici di guidox

Messaggio da jumoonp »

eh, se non ci fosse jumoonp a risolvere le cose qui....
Spoiler
Gabriele Dell'Otto e Lee bermejo

Immagine

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: I giochi matematici di guidox

Messaggio da Sla »

Visto che a guidox interessava il ragionamento...
Spoiler
un altro modo per arrivarci è considerare la quantità di carte che servono per costruire l' i-esimo piano, contato partendo dall'alto e considerando questa suddivisione
Immagine.
Le carte in orizzontale del piano i-esimo equivalgono a i, quelle in obliquo a 2i, pertanto complessivamente 3i.
Per costruire un castello con N piani sommiamo N volte 3i. Sottraiamo anche N perché l'ultimo piano non ha carte orizzontali (togliamo N carte orizzontali dal conto)
Immagine
eppure mi sembra tutto giusto...

Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

Re: I giochi matematici di guidox

Messaggio da guidox »

Sla ha scritto:Visto che a guidox interessava il ragionamento...
Spoiler
un altro modo per arrivarci è considerare la quantità di carte che servono per costruire l' i-esimo piano, contato partendo dall'alto e considerando questa suddivisione
Immagine.
Le carte in orizzontale del piano i-esimo equivalgono a i, quelle in obliquo a 2i, pertanto complessivamente 3i.
Per costruire un castello con N piani sommiamo N volte 3i. Sottraiamo anche N perché l'ultimo piano non ha carte orizzontali (togliamo N carte orizzontali dal conto)
Immagine
Peccato che io non sappia nulla di sommatorie e giù di lì. :3
Ho appena finito il 3 liceo scientifico, sapete dirmi quando affronterò questi argomenti?
Immagine

Immagine

Avatar utente
Sla
GMI VIP
Messaggi: 3618
Iscritto il: 21/07/2008, 10:11
Specialità: Titanismo
Località: (gm) Italia
Contatta:

Re: I giochi matematici di guidox

Messaggio da Sla »

guidox ha scritto:
Sla ha scritto:Visto che a guidox interessava il ragionamento...
Spoiler
un altro modo per arrivarci è considerare la quantità di carte che servono per costruire l' i-esimo piano, contato partendo dall'alto e considerando questa suddivisione
Immagine.
Le carte in orizzontale del piano i-esimo equivalgono a i, quelle in obliquo a 2i, pertanto complessivamente 3i.
Per costruire un castello con N piani sommiamo N volte 3i. Sottraiamo anche N perché l'ultimo piano non ha carte orizzontali (togliamo N carte orizzontali dal conto)
Immagine
Peccato che io non sappia nulla di sommatorie e giù di lì. :3
Ho appena finito il 3 liceo scientifico, sapete dirmi quando affronterò questi argomenti?
Si che lo sai, sommatoria per i che va da uno a 100 di f(i) è come:
somma = 0;
for(i=0;i<100;i+=1)
somma += f(i);
eppure mi sembra tutto giusto...

Avatar utente
guidox
GMI Honor
Messaggi: 5765
Iscritto il: 26/07/2009, 17:23
Specialità: programmazione
Uso: GM:Studio 1.4 Android
Località: Marche
Contatta:

Re: I giochi matematici di guidox

Messaggio da guidox »

Ma come arrivi dalla sommatoria a quella espressione?
EDIT: Ah capito, sisisi ci sono, figo :3
Alla fine è quello che ho fatto io, ma io non avevo pensato a considerare la carta sotto e toglierla dopo ;)
Immagine

Immagine

Rispondi

Chi c’è in linea

Visitano il forum: Nessuno e 20 ospiti