Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto
Amazon porta i colori sul suo Kindle da scrittura più grande: schermo Colorsoft a 11 pollici, processore quad-core, penna premium più reattiva e strumenti IA per le note, sono le note salienti. Il salto di prezzo rispetto al modello in bianco e nero si fa sentire, anche se la percezione è quella di trovarsi di fronte a un prodotto di fascia altissima, per veri appassionati
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint
Abbiamo intervistato Sumit Dhawan, CEO di Proofpoint, per capire come stia cambiando il mondo della sicurezza con l'avvento dell'intelligenza artificiale e con il ritmo sempre più serrato a cui vengono trovate vulnerabilità nel software. Un problema significativo, che richiederà del tempo per essere risolto (o quantomeno arginato)
L'Europa conta nella tecnologia e può essere autonoma. Cosa si è detto al Nextcloud Summit 2026
L'Europa conta nella tecnologia e può essere autonoma. Cosa si è detto al Nextcloud Summit 2026
La parola d'ordine al Nextcloud Summit 2026, che si è tenuto a Monaco, è stata "sovranità". Non come è spesso usato questo termine in politica ma, al contrario, come capacità positiva di decidere il proprio destino tecnologico, con modalità collaborative e aperte. L'Europa dice già molto nel mondo open source, che viene visto come mezzo per ottenere la tanto agognata autonomia digitale
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 16-10-2003, 21:08   #1
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
[C] Funzioni ricorsive

mi sto grattando la testa con queste funzioni ricorsive.. è 2 gg che cerco di fare questa funzione..ve la spiego.
Dato un reddito inziale ed un reddito finale devo calcolare in quanti anni riesco a raggiungere il reddito finale con l'interesse del 3.5% ed una tassazione del 12.5%.
Iterativamente non ci sono problemi,ma chi sa aiutarmi con la ricorsiva?
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 16-10-2003, 23:07   #2
maxithron
Senior Member
 
L'Avatar di maxithron
 
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2817
Ti va bene un link esplicativo oppure non è sufficiente?:

http://www.in-f-or.it/informatica/c/cap55.html

E poi potresti dire con quale metodo?(ricerca,fibonacci,dicotomica..)
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n;
Utilizzando atomi trivalenti drogheremo il silicio di tipo p;
Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo
maxithron è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 06:04   #3
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
io a scuola ho fatto la ricorsiva solo con il fattoriale,la ricerca e fibonacci,ma x questa esercitazione nn sa da che parte cominciare..
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 07:55   #4
lombardp
Senior Member
 
L'Avatar di lombardp
 
Iscritto dal: Jun 2002
Città: Firenze
Messaggi: 630
Dovresti spiegare quali sono le regole per l'applicazione dell'interesse e della tassazione.

E poi non penso sia il "reddito finale" quanto il "capitale finale", mi sbaglio?

In tal caso

potresti provare con:

Codice:
int quantocimetto(int reddito,int parziale, int finale, int step)
{
   parziale = parziale * 1.035 + reddito * 0.875;
   printf("\n%i",parziale);
   step++;
   if (parziale<finale) step = nuovoanno(reddito,parziale,finale,step);
   return step;
}
Da usare così:

Codice:
anniperarrivarci = quantocimetto(mio_reddito,0,capitale_finale,0);
__________________
---> Lombardp
CSS Certified Expert (Master Level) at Experts-Exchange
Proud user of LITHIUM forum : CPU technology
Webmaster of SEVEN-SEGMENTS : Elettronica per modellismo

Ultima modifica di lombardp : 17-10-2003 alle 08:07.
lombardp è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 08:20   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
IMHO:

capitale_iniziale += capitale_iniziale * 0.035 * 0.875;

Almeno di solito la tassa statale del 12,5% è sugli interessi maturati
Codice:
int quantocimetto(int iniziale, int finale)
{
   if (iniziale < finale) //solo per controllo di errori nei parametri
     return 0;

   iniziale += iniziale * 0.035 * 0.875;
   printf("\n%i", iniziale);
   if (iniziale > finale)
      return 1;

   return 1 + quantocimetto(iniziale, finale);
}

Ultima modifica di cionci : 17-10-2003 alle 08:25.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 13:08   #6
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
vi scrivo tutto il testo dell'esercitazione ok?

Una banca offre ai propri clienti la seguente formula per la gestione del capitale:
- l'interessa annuo è costante e corrisponde al 3.5%
- ogni guadagno è sottoposto ad una tassazione del 12,5%

Costruire 2 funzioni ricorsive in grado di rispondere alle seguenti domande del potenziale cliente :

1.investendo un determinato capitale inziale, quanti anni occorreranno affinchè il capitale risulti raddoppiato o comunque corrispondente ad una cifra finale diversamente specificata?

2. partendo da un capitale inziale specificato,quale sarà il valore disponibile dopo un certo numero di anni?

Dopo aver implementato le suddette specifiche, realizzare un codice in grado di visualizzare graficamente l'andamento dell'investimento e predisporre il programma per la possibilità di ricevere i dai d'ingresso da un file di testo specificato dall'utente e ridirezionare il risultato dell'elaborazione su un ulteriore file specificato.
Modellare la realtà proposta in modo accurato e fornire una dettagliata documentazione della soluzione proposta.
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 13:09   #7
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
Quote:
Originariamente inviato da cionci

printf("\n%i", iniziale);

[/code]
cosa vuol dire quel %i?
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 13:19   #8
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
ho provato entrambi i codici,il primo funziona il secondo mi da sempre risultato zero,x quella condizione posta subito all'inizio..
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:20   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sì...scusa... iniziale > finale
Codice:
int quantocimetto(int iniziale, int finale)
{
   if (iniziale >= finale)
     return 0;

   iniziale += iniziale * 0.035 * 0.875;
   printf("\n%i", iniziale);

   return 1 + quantocimetto(iniziale, finale);
}
Va bene anche così...l'altro controllo era superfluo...

Ultima modifica di cionci : 17-10-2003 alle 14:23.
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:22   #10
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
peggio ancora..così ho due condizioni uguali..
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:24   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da leomagic
peggio ancora..così ho due condizioni uguali..
Il fatto di due condizioni uguali serviva per risparmiarte una ricorsione, ma ora ho aggiornato...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:27   #12
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
ho provato e sembra funzionare,così scritta xò mi da errore nel cacolo degli interessi,ma nn sarebbe opportuno usare un conto parziale come nella prima funzione?
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:31   #13
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
Quote:
Originariamente inviato da cionci
Sì...scusa... iniziale > finale
[code]int quantocimetto(int iniziale, int finale)
{
iniziale += iniziale * 0.035 * 0.875;
cosa è quel += ?
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:43   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Perchè usare un conteggio parziale ? Probabilmente è un problema legato agli interi ed agli arrotondamenti...

Non vedo perchè si debbano usare due variabili quando il totale degli interessi...

Fammi vedere come tu lo calcoli senza ricorsione...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:44   #15
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da leomagic
cosa è quel += ?
Equivale a "interessi = interessi + quello che segue"...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 14:47   #16
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
in flash funziona così
Codice:
calcolaAnni = function (capitaleIniziale, capitaleParziale) {
 anni++;
 if (capitaleParziale<(capitaleIniziale*2)) {
  capitaleParziale = capitaleParziale*1.035;
  // -----------------------------------| occhio a questo numero
  calcolaAnni(capitaleIniziale, capitaleParziale);
 } else {
  _root.risultato = "con un capitale Iniziale di "+capitaleIniziale+" il capitale raddoppia in anni "+anni+" circa "+capitaleParziale;
  anni = 0;
 }
};
ponendo che il finale sia il doppio di quello inziale e gli anni sono circa sempre 22,se lo fai a mano ti torna pressocche quegli anni..
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 15:03   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Sì ma i tuoi numeri cosa sono float...double...interi ?
E' un questione di arrotondamenti...

Guarda questo... Ecco cosa succede usando i double:
Codice:
int quantocimetto(double iniziale, double finale)
{
   if (iniziale >= finale)
     return 0;

   iniziale += iniziale * 0.035 * 0.875;
   printf("\n%f", iniziale);
   
   return 1 + quantocimetto(iniziale, finale);
}
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 15:14   #18
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Il fatto è che se fai un calcolo preciso sugli interi...devi fare diversi arrotondamenti...

Supponendo che negli interi ci stiano i centesimi di Euro credo che un conto molto vicino a quello che avviene realmente sia:

Codice:
int round(double num)
{
   if((num-(int)num) < 0.5)
      return (int)num;
   return (int)num + 1;
}

int quantocimetto(int iniziale, int finale)
{
   if (iniziale >= finale)
     return 0;

   iniziale += round((double)round((double)iniziale * 0.035) * 0.875);
   printf("\n%f", iniziale);
   
   return 1 + quantocimetto(iniziale, finale);
}
Non sono sicuro sull'arrotondamento perchè non so se lo fanno veramente...o usano qualche arrotondamento particolare...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 15:35   #19
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
la seconda nn ho capito esattamente cosa esegue,cmq la prima che mi hai scritto ha funzionato finalmente,grazie x l'aiuto..che fatica che è stata!
ora ha da venire il peggio..
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
Old 17-10-2003, 16:24   #20
leomagic
Senior Member
 
L'Avatar di leomagic
 
Iscritto dal: Mar 2002
Città: Empoli (firenze)
Messaggi: 1521
per la seconda opzione devo fare il verso contrario,dati gli anni sapere a quanto ammonta il reddito ocn gil interessi,devo fare la stessa funzione solo che la condizione x cui deve uscire dalla ricorsione è diversa vero?x capirci..

Codice:
int cap_finale(double iniziale,int anni)
{
  	if (iniziale = 6);
   	return 0;
   iniziale = iniziale + iniziale * 0.035 * 0.875;
   printf("\n%f", iniziale);
   return 1 + cap_finale(iniziale,anni);
}
devo cambiare solo quell'if all'inzio(che adesso è messo a caso)?
__________________
Imac 20" + iphone 4 16gb + MacBook Pro 13"

Concluso affari con: bottoni,skino,semmy83,alex_
leomagic è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
L'IA cambia tutte le regole della sicurezza tra vulnerabilità e sorveglianza. Intervista al CEO di Proofpoint L'IA cambia tutte le regole della sicurezza tra ...
L'Europa conta nella tecnologia e può essere autonoma. Cosa si è detto al Nextcloud Summit 2026 L'Europa conta nella tecnologia e può ess...
Dreame X60 Pro Ultra Complete: i bracci si estendono sempre di più Dreame X60 Pro Ultra Complete: i bracci si esten...
TCL 65C8L, la recensione del SQD-Mini LED da 4400 nit misurati TCL 65C8L, la recensione del SQD-Mini LED da 440...
Rocket Lab acquisisce Iridium: nasce un ...
Una ventola nascosta e un design fuori d...
Display e fotocamera insieme: a Zurigo n...
Lenovo Idea Tab Plus, il tablet per stud...
Un ingegnere di AMD ha riprodotto in cas...
SanDisk Optimus cresce con nuovi SSD cer...
Loongson contro Intel e AMD: dalla Cina ...
Australia, quasi tutti gli under-16 aggi...
Oltre 1.300 miliardi di dollari per la p...
Un nuovo studio mette in dubbio la natur...
Crisi Volkswagen, torna l'ipotesi cessio...
Il CERN spegne il Large Hadron Collider:...
Stranger Than Heaven avrà una storia mol...
Il futuro prezzo di PS6 preoccupa i gioc...
AMD Ryzen 10000 sempre più vicini...
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: 22:04.


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