|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Apr 2006
Città: Ilê-de-France
Messaggi: 319
|
[C++]Incremento di numero binario
Allora ho un problema praticamente devo leggere un numero binario come una stringa e poi tramite una funzione ricorsiva incrementarlo di 1, allora la lettura della stringa l'ho fatta ma non riesco a capire come impostare la funzione
![]() Ecco il codice: Codice:
#include<iostream.h> #include<stdio.h> void incr(char num[40]); int main() { char n[40]; cout<<"insersci un numero binario: "; gets(n); incr(n); cout<<"Numero incrementato: "; } void incr(char num[40]) { //Funzione ricorsiva } ![]()
__________________
There is no cloud, it's just someone else computer |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Aug 2005
Messaggi: 2755
|
La funzione dovrebbe agire più o meno in questo modo:
Passa come parametri l'array e l'indice del primo carattere. Il valore di ritorno deve essere il riporto dell'operazione. Puoi eseguire i calcoli partendo dalla cifra più significativa (fai attenzione all'overflow dell'ultimo bit) calcolandone il valore della cifra i-esima come valore precedente della cifra i-esima + riporto della cifra(i-1). Ovviamente la ricorsione termina quando ti trovi alla cifra meno significativa.
__________________
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2006
Città: Ilê-de-France
Messaggi: 319
|
ok grazie credo di aver capito
__________________
There is no cloud, it's just someone else computer |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Dec 2006
Messaggi: 198
|
Devi proprio farlo ricorsivo? Iterativo sarebbe molto meglio...
|
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2006
Città: Ilê-de-France
Messaggi: 319
|
si ma purtroppo la proff di info lo vuole ricorsivo
![]() ![]()
__________________
There is no cloud, it's just someone else computer |
![]() |
![]() |
![]() |
#6 |
Senior Member
Iscritto dal: Jun 2002
Città: Dublin
Messaggi: 5989
|
Se vi fa insistere con la ricorsione è solo per "esercizio logico".
![]()
__________________
C'ho certi cazzi Mafa' che manco tu che sei pratica li hai visti mai! |
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:45.