Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
DJI Romo 2: tante novità lo rendono un robot completo
DJI Romo 2: tante novità lo rendono un robot completo
Romo 2 è la seconda generazione di robot lavapavimenti di DJI, un modello che si caratterizza per la precisione nel sistema di navigazione e per il funzionamento particolarmente silenzioso. Con le modifiche introdotte in questa seconda versione, e un posizionamento di prezzo più allineato alla concorrenza, rappresenta una valida alternativa sul mercato delle soluzioni di pulizia domestica
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED
Il primo Sony con retroilluminazione True RGB alla prova del banco di misura e dei contenuti: luminanza enorme, colori accurati in HDR e un antiriflesso molto efficace. I limiti sono due sole HDMI 2.1 e il blooming fuori asse
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 07-01-2013, 17:29   #1
FrankViolence
Junior Member
 
Iscritto dal: Feb 2011
Messaggi: 4
[Scheme] Conversione binario-decimale (solo parte decimale)

Salve!

Mi sto spaccando la testa pensando a come risolvere questo problema posto dal professore nell'esame di programmazione dell'anno scorso (io ce l'ho il 21 gennaio e il fatto di non riuscire a risolvere questo mi mette una certa ansia!).

Vi posto il testo:

Un numero x compreso nell’intervallo [0, 1[ (cioè tale che 0 ≤ x < 1) può essere codificato, eventualmente in forma
approssimata, tramite una sequenza finita di cifre binarie, precisamente quelle che comparirebbero a destra del punto
che separa la parte intera dalla parte frazionaria nella rappresentazione in base 2. Definisci una procedura fract-part
che, data una stringa f di 0/1, restituisce il valore numerico x di f interpretata come parte frazionaria in base 2.

Esempi:
(fract-part "0") → 0 (fract-part "01") → 0.25 (fract-part "101") → 0.625
(fract-part "1") → 0.5 (fract-part "11") → 0.75 (fract-part "0101") → 0.3125


Voi come fareste? Avete qualche suggerimento?


Opzionale: ho provato a risolverlo in modo ricorsivo usando le liste (anche se l'input è una stringa, dovrei attuare la conversione da stringa a lista, ma quello lo implementerò dopo, ora mi interessa più che altro trovare il procedimento), però il risultato viene giusto solo se l'input è 0 o 1, altrimenti gli altri sono tutti sbagliati.
Avete idea di dove potrei aver sbagliato? Vi posto il codice:

(define fract-part
(lambda (bin)
(let ((n (length bin)))
(if (= n 0)
0
(+ (* (car bin) (/ 1 expt 2 (+ n 1))) (fract-part (cdr bin)))))))



Grazie mille per l'attenzione!
FrankViolence è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
Geely EX5, un mese al volante: il SUV elettrico cinese che ci ha sorpreso (quasi) senza riserve Geely EX5, un mese al volante: il SUV elettrico ...
Mova Z70 Ultra Roller Complete: motore potente, rullo di lavaggio e l'IA a guidare Mova Z70 Ultra Roller Complete: motore potente, ...
Dopo 23 anni di silenzio, Warcraft 3 spi...
Roblox sfida l'ecosistema gaming: app st...
OpenAI accusata di plagio dai migliori m...
Altro attacco hacker dell'IA: gli agenti...
Stiamo davvero perdendo il controllo del...
Microsoft perde un pilastro: Frank Shaw ...
Diablo V annunciato a sorpresa: il colpo...
Meno di 5 euro per il 5G: l'offerta Kena...
World of Warcraft: Forever è il Classic+...
La Serie A con DAZN e Amazon Prime con l...
Giochi Ubisoft su Steam senza Ubisoft Co...
Miami Beach ha autorizzato la maxi opera...
Apple regala un altro anno di funzioni s...
Alla fine è successo davvero: Vol...
Il meglio di Amazon del weekend in uno s...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:28.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v