Trasposizione di una cifra

Il forum di Base5, dove è possibile postare problemi, quiz, indovinelli, rompicapo, enigmi e quant'altro riguardi la matematica ricreativa e oltre.

Moderatori: Gianfranco, Bruno

Rispondi
panurgo
Livello 9
Livello 9
Messaggi: 1381
Iscritto il: sab nov 19, 2005 3:45 pm
Località: Padova

Trasposizione di una cifra

Messaggio da panurgo »

Trovare il più piccolo intero positivo tale che quando la sua ultima cifra viene spostata all’inizio del numero (per esempio, $1234$ diventa $4123$) il numero risultante è maggiore e un multiplo intero del numero originale. I numeri vanno scritti in notazione decimale standard senza zeri iniziali.

(Ma non scrivete for n = 1 to 100000000000000000 ecc.)
il panurgo

Principio di Relatività: {\bb m} \not \right {\bb M} \ \Longleftrightarrow \ {\bb M} \not \right {\bb m}
"Se la montagna non va a Maometto, Maometto NON va alla montagna"

Pasquale
Livello 11
Livello 11
Messaggi: 2628
Iscritto il: mer mag 25, 2005 2:14 am

Re: Trasposizione di una cifra

Messaggio da Pasquale »

Partendo da:

Numero iniziale = $10*N+x$
Numero finale = $x*10^y + N$ (con y pari al numero di cifre di N)
k = rapporto fra valori finale e iniziale

dopo un tentativo fallito con le citate incognite, non ho provato il solito for n= 1 to 1000000000000000000....,
ma per curiosità mi sono limitato ad un for n= 2 to 10257, imponendo un k intero. :? :(

Mi è scappato fuori un Nx con multiplo xN, ove N < 10257 e k=4
_________________

\text {     }ciao Immagine ciao
E' la somma che fa il totale (Totò)

panurgo
Livello 9
Livello 9
Messaggi: 1381
Iscritto il: sab nov 19, 2005 3:45 pm
Località: Padova

Re: Trasposizione di una cifra

Messaggio da panurgo »

panurgo ha scritto:
mar dic 15, 2020 5:44 pm
(Ma non scrivete for n = 1 to 100000000000000000 ecc.)
La mia non era la richiesta di non utilizzare la forza bruta ma la richiesta di non limitarsi a mostrare tale uso.

Mi spiego. La domanda “trovare il primo numero intero positivo che gode della proprietà X” trova facile risposta (in linea di pricipio) considerando i numeri in ordine crescente e verificando per ciascuno se gode della proprietà in questione: il primo che troviamo è quello che cerchiamo.

Con l’uso di un computer l’intervallo di numeri che possiamo considerare in pratica aumenta enormemente mentre i problemi di questo tipo che si trovano in Matematica Ricreativa sono tagliati per l’uso dell’intelligenza e di carta e penna.

Ovviamente, visto che il tempo è tiranno per tutti e che anche l’intelligenza ogni tanto è stanca, anch’io affronto questi problemi con il fatidico “for i”: l’importante mi sembra non fermarsi lì e cercare di capire come si può rispondere alla domanda in questione senza troppi conti e verifiche.

Ecco il mio programmino in R (è abbastanza simile a uno pseudocodice per poter essere compreso: spiego cosa fanno i comandi specifici)

Codice: Seleziona tutto

nMax <- 1e9
n <- 11
while (n < nMax) {

# ---------------------------------------------------------------------------- #
# -  Metto in un array le cifre di n mediante successive divisioni per 10;   - #
# -  uso q per le divisioni perché n mi serve: per praticità, nell’array le  - #
# -  cifre sono inserite al contrario                                        - #
# ---------------------------------------------------------------------------- #

  s <- numeric(9)
  k <- 1
  s[k] <- n %% 10                                   # -  %% : operatore Mod  - #
  q <- n %/% 10             # -  %/% : operatore della divisione tra interi  - #
  while (q > 0) {
    k <- k + 1
    s[k] <- q %% 10
    q <- q %/% 10
  }

# ---------------------------------------------------------------------------- #
# -  Sposto la cifra delle unità di n dopo la cifra più significativa        - #
# ---------------------------------------------------------------------------- #

  s <- c(s[2:k],s[1])    # -  c() : operatore di concatenazione degli array  - #    

# ---------------------------------------------------------------------------- #
# -  Calcolo il valore di m: parto con la cifra più significativa (di m)     - #
# ---------------------------------------------------------------------------- #

  m <- s[k]

# ---------------------------------------------------------------------------- #
# -  Moltiplico iterativamente per 10 e aggiungo la cifra successiva         - #
# ---------------------------------------------------------------------------- #

  for (i in ((k-1):1)) m <- 10*m + s[i]

# ---------------------------------------------------------------------------- #
# -  Verifico che n sia divisore di m e che il quoziente sia maggiore di 1   - #
# ---------------------------------------------------------------------------- #

  if ((m %% n == 0) & (m %/% n > 1)) print(c(n,m,m/n))

# ---------------------------------------------------------------------------- #
# -  Prossimo valore di n
# ---------------------------------------------------------------------------- #

  n <- n + 1
}
Fatto girare,il programmino fornisce rapidamente questo output

[1] 102564 410256 4
[1] 128205 512820 4
[1] 142857 714285 5
[1] 153846 615384 4
[1] 179487 717948 4
[1] 205128 820512 4
[1] 230769 923076 4


poi continua per un altro paio d’ore senza dare segno di vita: tra $10$ e $10^9$ ci sono solo sette numeri, tutti di sei cifre, che godono della proprietà voluta.

Ohé, dico! Numeri di sei cifre: carta e penna? :shock:

E poi, solo sette? Ci sono solo questi o ce ne sono altri maggiori di $10^9$?

La proprietà goduta comporta la trasposizione dell’ultima cifra e lo slittamento verso destra delle altre, una sorta di rotazione: abbiamo noi visto qualcosa di simile nei numeri che usiamo ogni giorno?

Meditate... :wink:
il panurgo

Principio di Relatività: {\bb m} \not \right {\bb M} \ \Longleftrightarrow \ {\bb M} \not \right {\bb m}
"Se la montagna non va a Maometto, Maometto NON va alla montagna"

Bruno
Livello 9
Livello 9
Messaggi: 1529
Iscritto il: lun nov 21, 2005 6:07 pm
Località: Bologna

Re: Trasposizione di una cifra

Messaggio da Bruno »

panurgo ha scritto:
sab dic 19, 2020 2:47 pm
E poi, solo sette? Ci sono solo questi o ce ne sono altri maggiori di $10^9$?

Sicuramente ce ne sono altri, Guido, come ci ha illustrato il grande Martin Gardner quasi mezzo secolo fa sulle pagine di "Scientific American", con un bellissimo algoritmo adatto proprio a carta e penna.
Ecco un esempio, inventato lì per lì, con un moltiplicatore diverso da quelli sopra visti: 631578947368421052 = 315789473684210526×2 :wink:

Se riesco a trovare uno scampolo di tempo, provo a occuparmi di questa tua proposta.
Invisibile un vento
l'ha apena sfioragia
sospension d'un momento;
e la bola iridessente gera 'ndagia.
(Biagio Marin)

Pasquale
Livello 11
Livello 11
Messaggi: 2628
Iscritto il: mer mag 25, 2005 2:14 am

Re: Trasposizione di una cifra

Messaggio da Pasquale »

Ogni giorno.......il contachilometri della macchina?
_________________

\text {     }ciao Immagine ciao
E' la somma che fa il totale (Totò)

panurgo
Livello 9
Livello 9
Messaggi: 1381
Iscritto il: sab nov 19, 2005 3:45 pm
Località: Padova

Re: Trasposizione di una cifra

Messaggio da panurgo »

Dipende dall'età della macchina... :wink:
il panurgo

Principio di Relatività: {\bb m} \not \right {\bb M} \ \Longleftrightarrow \ {\bb M} \not \right {\bb m}
"Se la montagna non va a Maometto, Maometto NON va alla montagna"

panurgo
Livello 9
Livello 9
Messaggi: 1381
Iscritto il: sab nov 19, 2005 3:45 pm
Località: Padova

Re: Trasposizione di una cifra

Messaggio da panurgo »

Bruno ha scritto:
dom dic 20, 2020 8:55 pm
Sicuramente ce ne sono altri
Ne sono certo, per esempio

$\begin{array}{rC}
\mathtt{1525423728813559322033898305084745762711864406779661016949} & \times \\
\mathtt{6} & = \\
\hline
\mathtt{9152542372881355932203389830508474576271186440677966101694} &
\end{array}$

Era una domanda retorica :roll:
il panurgo

Principio di Relatività: {\bb m} \not \right {\bb M} \ \Longleftrightarrow \ {\bb M} \not \right {\bb m}
"Se la montagna non va a Maometto, Maometto NON va alla montagna"

Bruno
Livello 9
Livello 9
Messaggi: 1529
Iscritto il: lun nov 21, 2005 6:07 pm
Località: Bologna

Re: Trasposizione di una cifra

Messaggio da Bruno »

panurgo ha scritto:
lun dic 21, 2020 11:17 am
Era una domanda retorica :roll:

Era una domanda. A cui è stata data una risposta :D
Invisibile un vento
l'ha apena sfioragia
sospension d'un momento;
e la bola iridessente gera 'ndagia.
(Biagio Marin)

Rispondi