Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di autior
    Registrato dal
    May 2010
    Messaggi
    17

    [C] Consigli sulla creazione di un algoritmo..

    Salve a tutti!

    Vorrei creare una funzione che, dato un intero A, trovi un numero intero X, che moltiplicato per A restituisca il suo "contrario" (ad esempio: X è 123, se moltiplicandolo con A si ottiene 321 allora la funzione deve ritornare X, altrimenti si incrementa X che diventa 124.. ovviamente si inserisce un limite alle moltiplicazioni!).

    La cosa che non so come realizzare è proprio la verifica del "contrario".. cioè con che formula puoi calcolarti il "contrario" di un int per effettuare il confronto? Anche pensando agli operatori bitwise non mi viene niente in mente... voi avete qualche idea?

  2. #2
    ti basta separare le cifre di un numero:

    considera 123 , se vuoi prendere solo 3 dovrai fare 123 % 10...
    se invece fai 123/10 ti prenderà dodici come risultato


    ma ti serve l'algoritmo?

  3. #3
    Utente di HTML.it L'avatar di autior
    Registrato dal
    May 2010
    Messaggi
    17
    Originariamente inviato da fusionalfa
    ti basta separare le cifre di un numero:

    considera 123 , se vuoi prendere solo 3 dovrai fare 123 % 10...
    se invece fai 123/10 ti prenderà dodici come risultato


    ma ti serve l'algoritmo?
    Mi basta una buona spiegazione.

    Comunque avevo dimenticato il mod.. E' si, così credo si possa fare. Cioè io penso che si potrebbero estrarre tutti i numeri dell'X tramite il %, inserirli in un array, moltiplicarli per le varie potenze di 10, addizionarli fra di loro e confrontare il risultato con il prodotto di A * X. Se ti trovi ritorna X, altrimenti incrementa X e ripeti il ciclo. Può andare così?

    Non so perchè, ma sembra un tantinello complicato.. :master:

  4. #4
    Originariamente inviato da autior
    Mi basta una buona spiegazione.

    Comunque avevo dimenticato il mod.. E' si, così credo si possa fare. Cioè io penso che si potrebbero estrarre tutti i numeri dell'X tramite il %, inserirli in un array, moltiplicarli per le varie potenze di 10, addizionarli fra di loro e confrontare il risultato con il prodotto di A * X. Se ti trovi ritorna X, altrimenti incrementa X e ripeti il ciclo. Può andare così?

    Non so perchè, ma sembra un tantinello complicato.. :master:

    si ti conviene fare cosi,prendi il numero e con la regola del modulo metti una cifra per volta in un array cosi puoi invertire i numeri. buona fortuna

    qualsiasi problema siamo qua..

  5. #5
    Utente di HTML.it L'avatar di autior
    Registrato dal
    May 2010
    Messaggi
    17
    Finalmente l'ho finito, funziona perfettamente! Grazie per le tue dritte fusion, senza non sarei andato molto lonano.

    Potete chiudere.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2020 vBulletin Solutions, Inc. All rights reserved.