Questo sito si serve dei cookie per fornire servizi. Utilizzando questo sito acconsenti all'utilizzo dei cookie - Maggiori Informazioni - Acconsento
Atik
Coelum Astronomia
L'ultimo numero uscito
Leggi Coelum
Ora è gratis!
AstroShop
Lo Shop di Astronomia
Photo-Coelum
Inserisci le tue foto
DVD Hawaiian Starlight
Skypoint

Vai indietro   Coelestis - Il Forum Italiano di Astronomia > Il Mondo dell'Astronomo dilettante > Rudi Mathematici
Registrazione Regolamento FAQ Lista utenti Calendario Cerca Messaggi odierni Segna come letti

Rispondi
 
Strumenti della discussione Modalità  di visualizzazione
Vecchio 23-08-15, 12:40   #2011
aspesi
Utente Super
 
L'avatar di aspesi
 
Data di registrazione: Nov 2009
Ubicazione: Terra dei Walser
Messaggi: 7,997
Predefinito Re: Qualche quiz

Ho trovato in rete questo quiz (che non sono riuscito a risolvere):

Trovare quattro terne pitagoriche tali che i triangoli rettangoli da esse generati abbiano la stessa area, la minima possibile.

(Ho trovato tre terne con la stessa area dei tre triangoli rettangoli (840 e molti multipli):
15 - 112 - 113
24 - 70 - 74
40 - 42 - 58)
C'è forse una strada che con pochi tentativi riesca a risolvere il quiz senza la forza bruta?

aspesi non in linea   Rispondi citando
Vecchio 23-08-15, 14:37   #2012
astromauh
Utente Super
 
L'avatar di astromauh
 
Data di registrazione: Sep 2007
Messaggi: 4,861
Predefinito Re: Qualche quiz

Lo spirito guida mi ha suggerito questa soluzione :

111 6160 6161 341880
231 2960 2969 341880
280 2442 2458 341880
518 1320 1418 341880


__________________
www.Astrionline.it
Astromauh <a href=http://www.trekportal.it/coelestis/images/icons/icon10.gif target=_blank>http://www.trekportal.it/coelestis/i...ons/icon10.gif</a>
astromauh non in linea   Rispondi citando
Vecchio 23-08-15, 15:19   #2013
Erasmus
Utente Super
 
L'avatar di Erasmus
 
Data di registrazione: Feb 2008
Ubicazione: Unione Europea
Messaggi: 7,180
Predefinito Re: Qualche quiz

Quote:
astromauh Visualizza il messaggio

111 6160 6161 341880
231 2960 2969 341880
280 2442 2458 341880
518 1320 1418 341880
Sputa il rospo: da dove hai copiato?
–––
__________________
Erasmus
«NO a nuovi trattati intergovernativi!»
«SI' alla "Costituzione Europea" federale, democratica e trasparente!»
Erasmus non in linea   Rispondi citando
Vecchio 23-08-15, 15:28   #2014
Erasmus
Utente Super
 
L'avatar di Erasmus
 
Data di registrazione: Feb 2008
Ubicazione: Unione Europea
Messaggi: 7,180
Predefinito Re: Qualche quiz

Quote:
astromauh Visualizza il messaggio
Codice:

 a         b        √(a^2 + b^2)       a·b/2
––––––––––––––––––––––––––––––––––
111    6160            6161            341880
231    2960            2969            341880
280    2442            2458            341880
518    1320            1418            341880
Sputa il rospo: da dove hai copiato?
[Però: Potendo programmare ordinatamente i tentativi ... e aspettare che termini il calcolo, è facile trovare la soluzione. Insomma: ancora "forza bruta".]
–––
__________________
Erasmus
«NO a nuovi trattati intergovernativi!»
«SI' alla "Costituzione Europea" federale, democratica e trasparente!»
Erasmus non in linea   Rispondi citando
Vecchio 23-08-15, 15:36   #2015
astromauh
Utente Super
 
L'avatar di astromauh
 
Data di registrazione: Sep 2007
Messaggi: 4,861
Predefinito Re: Qualche quiz

Quote:
Erasmus Visualizza il messaggio
Sputa il rospo: da dove hai copiato?
–––
Non ho copiato!

Però ho usato la forza bruta.

Secondo me, in questo caso, non si può fare a meno della forza bruta.

Che mi pare indispensabile già per la semplice costruzione delle terne pitagoriche, perché per sapere se la radice quadrata della somma di due quadrati è un numero intero oppure no, bisogna verificarlo, non mi pare che sia una cosa che si possa stabilire a priori.
__________________
www.Astrionline.it
Astromauh <a href=http://www.trekportal.it/coelestis/images/icons/icon10.gif target=_blank>http://www.trekportal.it/coelestis/i...ons/icon10.gif</a>
astromauh non in linea   Rispondi citando
Vecchio 23-08-15, 16:13   #2016
astromauh
Utente Super
 
L'avatar di astromauh
 
Data di registrazione: Sep 2007
Messaggi: 4,861
Predefinito Re: Qualche quiz

Quote:
for x = 1 to 13000
for y = x to 13000

z = sqrt(x^2 + y^2)

if z = int(z) then
A = x * y / 2
n(a) = n(a) + 1
if n(a) = 4 then Response.write(x &"&nbsp;" & y &"&nbsp;" & z &"&nbsp;" & A &"<br>")
end if

next
next
Questo è il codice che ho usato.

Prova tutte le coppie di cateti x e y, dove x è il cateto minore da 1 a 13.000.
Se l'ipotenusa è un numero intero allora calcola l'area e memorizza quante volte è stata trovata questa specifica area. Quando un area è stata trovata per 4 volte scrive i lati del triangolo e l'area.

Ottenuta quindi l'area la riga che inizia con

if n(a) = 4 then

viene sostituita con il valore dell'area trovata

if A = 4341880 then

Per cui il programma scrive i valori delle quattro terne pitagoriche.

Un'altra soluzione dove (però) l'area dei triangoli non è la minima possibile, è la seguente:

222 12320 12322 1367520
462 5920 5938 1367520
560 4884 4916 1367520
1036 2640 2836 1367520

__________________
www.Astrionline.it
Astromauh <a href=http://www.trekportal.it/coelestis/images/icons/icon10.gif target=_blank>http://www.trekportal.it/coelestis/i...ons/icon10.gif</a>
astromauh non in linea   Rispondi citando
Vecchio 23-08-15, 16:32   #2017
aspesi
Utente Super
 
L'avatar di aspesi
 
Data di registrazione: Nov 2009
Ubicazione: Terra dei Walser
Messaggi: 7,997
Predefinito Re: Qualche quiz

Quote:
astromauh Visualizza il messaggio
Questo è il codice che ho usato.

Prova tutte le coppie di cateti x e y, dove x è il cateto minore da 1 a 13.000.


Se l'ipotenusa è un numero intero allora calcola l'area e memorizza quante volte è stata trovata.


Per cui il programma scrive i valori delle quattro terne pitagoriche.

Un'altra soluzione dove (però) l'area dei triangoli non è la minima possibile, è la seguente:

222 12320 12322 1367520
462 5920 5938 1367520
560 4884 4916 1367520
1036 2640 2836 1367520

Bravo!

Scusa, però, il tuo algoritmo, pur efficace, mi pare un po' ... "stupido".
Si può certamente velocizzare con le formule che generano le terne pitagoriche.

...

La seconda soluzione è .... semplicemente la prima terna moltiplicata per 2 (e di conseguenza l'area moltiplicata per 4)

Pensavo che Erasmus avesse qualche idea "analitica"...

aspesi non in linea   Rispondi citando
Vecchio 23-08-15, 16:55   #2018
astromauh
Utente Super
 
L'avatar di astromauh
 
Data di registrazione: Sep 2007
Messaggi: 4,861
Predefinito Re: Qualche quiz

Quote:
aspesi Visualizza il messaggio

Scusa, però, il tuo algoritmo, pur efficace, mi pare un po' ... "stupido".
Non mi offendo, credo che l'uso della forza bruta implichi una certa "stupidità".

Quote:

Si può certamente velocizzare con le formule che generano le terne pitagoriche.
Ma quali sono queste formule che generano le terne pitagoriche?


Quote:

La seconda soluzione è .... semplicemente la prima terna moltiplicata per 2 (e di conseguenza l'area moltiplicata per 4)
Non me ne ero accorto!


Quote:

Pensavo che Erasmus avesse qualche idea "analitica"...
Vediamo...

__________________
www.Astrionline.it
Astromauh <a href=http://www.trekportal.it/coelestis/images/icons/icon10.gif target=_blank>http://www.trekportal.it/coelestis/i...ons/icon10.gif</a>
astromauh non in linea   Rispondi citando
Vecchio 23-08-15, 17:23   #2019
aspesi
Utente Super
 
L'avatar di aspesi
 
Data di registrazione: Nov 2009
Ubicazione: Terra dei Walser
Messaggi: 7,997
Predefinito Re: Qualche quiz

Quote:
astromauh Visualizza il messaggio
Ma quali sono queste formule che generano le terne pitagoriche?

Esiste una formula capace di generare tutte le terne pitagoriche primitive; tali formule sono citate da Euclide (Ευκλείδης) nei suoi Elementi (τα Στοιχεία):

a = m^2-n^2
b= 2mn
c = m^2+n^2

Le formule di Euclide generano una terna pitagorica primitiva se e solo se m e n sono coprimi ed uno di loro è pari e l'altro dispari (se sia n che m sono dispari a, b e c sono pari, e quindi quella terna pitagorica non può essere primitiva).
Tutte le terne primitive si possono ottenere in questo modo da un'unica coppia di numeri coprimi m > n, mentre le restanti (non primitive) si possono ottenere moltiplicando i termini di una terna primitiva per un opportuno fattore.
Le formule così modificate sono quindi in grado di generare tutte le terne possibili, anche se in modo non univoco:

a = k*(m^2 - n^2)
b = k*(2mn)
c = k*(m^2 + n^2)


https://it.wikipedia.org/wiki/Terna_pitagorica

aspesi non in linea   Rispondi citando
Vecchio 23-08-15, 19:26   #2020
Mizarino
Utente Super
 
L'avatar di Mizarino
 
Data di registrazione: May 2004
Messaggi: 9,724
Predefinito Re: Qualche quiz

Quote:
aspesi Visualizza il messaggio
Scusa, però, il tuo algoritmo, pur efficace, mi pare un po' ... "stupido".
Si può certamente velocizzare con le formule che generano le terne pitagoriche.
La "stupidità" di un metodo è relativa a chi lo crea e alla natura della soluzione cercata.
Se si tratta di una soluzione "una tantum" e il tempo impiegato a trovarla è minore del tempo che si impiegherebbe, studiando, a trovare un metodo migliore, allora il metodo "stupido" è di fatto il più intelligente...
Mizarino non in linea   Rispondi citando
Rispondi


Links Sponsorizzati
Geoptik

Strumenti della discussione
Modalità  di visualizzazione

Regole di scrittura
Tu non puoi inserire i messaggi
Tu non puoi rispondere ai messaggi
Tu non puoi inviare gli allegati
Tu non puoi modificare i tuoi messaggi

codice vB è Attivo
smilies è Attivo
[IMG] il codice è Attivo
Il codice HTML è Disattivato


Tutti gli orari sono GMT. Attualmente sono le 00:58.


Powered by vBulletin versione 3.6.7
Copyright ©: 2000 - 2022, Jelsoft Enterprises Ltd.
Traduzione italiana a cura di: vBulletinItalia.it