|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jun 2005
Messaggi: 711
|
Piccolo Help sui tipi di dati in C++
Avrei bisogno di un piccolo aiuto sui tipi di dati
ho appena finito un programmino per calcolare il tempo di download di un file ma non so che tipo di dato usare per la conversione da gb a kb superati i 2 gb mi da una cosa del tipo 2.3593e+006kb che mi sembra che e proprio dopo il limite del tipo long ma non esiste un tipo per cifre piu grandi? non mi da problemi a livello di calcoli ma e l'unico difetto nel mio bel programmino. Per favore aiutatemi
__________________
Ho concluso affari positivamente con Schiac,Sam_88, Toretto, Bobosassa Vendo qui Contatto MSN/MAIL : [email protected] Sito web http://www.visioweb.it |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Mar 2006
Città: Bergamo
Messaggi: 2499
|
unsigned int arrivi a 4gb...anche con unsigned long int
|
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
non mi ricordo se è ANSI ma esiste il long long
Se lo devi "printare" usi "%lld"
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jun 2005
Messaggi: 711
|
Non ho risolto
Avevo gia provato con unsigned, long e tutti i tipi conosciuti ora mi sorge il dubbio che il problema non sia quello xke ho notato che non arriva nemmeno ad un gigabyte quindi vi riporto di seguito il listato completo onde evitare sbagli:
#include <cstdlib> #include <iostream> using namespace std; int main() { float n; float a; float b; char byte, g, m; float d, z; unsigned long c; int secondi; int minuti, ore, giorni; system("COLOR a"); cout<<"\n************ <<<<Programma per il calcolo del tempo di download>>>> ************\n"; cout<<"\n ************** Autore: trediman e-mail: [email protected] **************\n"; cout<<"\n ********************* Data creazione: 17 novembre 2006 *********************\n"; cout<<"\n ****************** Data Ultima Modifica: 1 dicembre 2006 *****************\n"; cout<<"\n ********************* Categoria: Utility per il p2p ********************\n"; cout<<"\n ** Commenti: Calcola il tempo di dwnld di un file o di una sua parte**\n\n"; cout<<"\n <<<INIZIO PROGRAMMA>>>\n"; cout<<"\n Inserisci dimensione file: "; cin>>d ; cout<<"\n Inserisci byte, esempi: g per gb, m per mb: "; cin>> byte; cout<<"\n Inserisci percentuale di download scaricata: "; cin>>z; c= 100-z; cout<<"\n La percentuale da scaricare ancora e': "<<c<<"% cioe': "; n= d/100*c; if(byte=='m') { b=n*1024; cout<<b<<"kb"<<endl; } else if(byte=='g') { b=n*1048576; cout<<b<<"kb"<<endl; }; cout<<"\n Inserisci velocita' download in kb/s: "; cin>>a; secondi=b/a; cout<<"\n Per scaricare ci vogliono "<<secondi<<"s "<<endl; minuti=secondi/60; secondi=secondi%60; cout<<"\n oppure "<<minuti<<"m "<<secondi<<"s"<<endl; ore=minuti/60; minuti=minuti%60; cout<<"\n oppure "<<ore<<"h "<<minuti<<"m "<<secondi<<"s"<<endl; giorni=ore/24; ore=ore%24; cout<<"\n oppure "<<giorni<<"d "<<ore<<"h "<<minuti<<"m e "<<secondi<<"s \n"<<endl; system("PAUSE"); return EXIT_SUCCESS; } Ecco per favore aiutatemi sono sciocchezze come qste che fanno impazzire una persona
__________________
Ho concluso affari positivamente con Schiac,Sam_88, Toretto, Bobosassa Vendo qui Contatto MSN/MAIL : [email protected] Sito web http://www.visioweb.it |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: Jun 2005
Messaggi: 711
|
Up
Up
__________________
Ho concluso affari positivamente con Schiac,Sam_88, Toretto, Bobosassa Vendo qui Contatto MSN/MAIL : [email protected] Sito web http://www.visioweb.it |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: May 2006
Città: Wursteland
Messaggi: 1749
|
scusa potrei essere più preciso se fossi al lavoro perchè quì non ho neanche un compilatore installato sul portatile però così al volo ti posso consigliare di usare unsigned double anzichè float.
I float sono sconsigliati perchè imprecisi nelle condizioni e comunque i double sono ... doppi
__________________
Nintendo WIII 4d Turbo Intercooler - Sestium X 666 99,312 GHz - 6.984 Ram Σ(9999) MHz - HDD SATA 97e^(10) bytes 93³ rpm - ATI biberon X900z ∞Mb - Win Eight SP (1 > yours) 16 Valve |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: Jun 2005
Messaggi: 711
|
il problema non si risolve
anke cambiando b c n a in double o long double il problema non si risolve unsigned double mi da errore come lo risolvo inizio a pensare che il problema stia da qlke altra parte ho postato il codice per qsto dovreste controllarlo tutto per vedere se c'e qlke errore per favore sto sclerando
__________________
Ho concluso affari positivamente con Schiac,Sam_88, Toretto, Bobosassa Vendo qui Contatto MSN/MAIL : [email protected] Sito web http://www.visioweb.it |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: Jun 2005
Messaggi: 711
|
Ci SOno Riuscito !!!!!
Grazie a tutti anke se ci ero gia arrivato prima di postare il primo msg solo che avevo sbagliato lettera
dovevo mettere long long double b mentre l'avevo fatto con la c cmq questo e l'unico dato che mi legge fino a 100 gb convertiti in kb grazie lo stesso alla prossima Ah ho ancora qll'altro esercizio ora lo uppo
__________________
Ho concluso affari positivamente con Schiac,Sam_88, Toretto, Bobosassa Vendo qui Contatto MSN/MAIL : [email protected] Sito web http://www.visioweb.it |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:49.



















