Newsgroup: it.comp.lang.c++
Titolo: NTL, Dev-C++ e grandi numeri

Ciao a tutti ho esigenza di utilizzare la libreria WinNTL fornita sotto 
licenza GPL per gli interi lunghi.
Utilizzo come ambiente di programmazione Dev-C++ 5
Ma non ho ben capito come utilizzarla. Ho provato anche a seguire gli 
esempi e le indicazioni fornite nella documentazione ufficiale, ma nel 
migliore dei casi il linker mi da qualche strano errore.
Qualcuno ha provato ad usare la NTL con Dev-C++?
Se si, potrebbe gentilmente postarmi le indicazioni precise su come 
utilizzarla? Vorrei, tanto per iniziare riuscire a compilare l'esempio 
ufficiale:
#include <NTL/ZZ.h>
//NTL_CLIENT
int main()
{
ZZ a;//, b, c;
// cin >a;
// cin >b;
// c = (a+1)*(b+1);
// cout << c << "\n";
return 0;
}
Devo passare qualche parametro particolare al linker? (ho provato anche 
a compilare la NTL come libreria statica e passarla al linker, ma il 
risultato è che il linker dice che alcuni oggetti sono referenziati 2 
volte, non so come uscirne perchè non ho altre idee al momento)
Grazie, Aspidus.

Ma non è solo per Microsoft Visual C++ on Windows?

 
No no è per tutti i compilatori.
Alla fine ci sono ruscito. Mi capita sempre di trovare da solo le 
risposte solo dopo che mi sono deciso a chiedere aiuto sul NG.
In Dev-C++ si può installare un apposito Devpak per la NTL e poi nelle 
opzioni di progetto bisogna inserire come parametro per il linker la 
libreria statica ntl.lib
Poi funziona tutto alla perfezione.
Ma a questo punto mi sorge un altro problema. Esiste all'interno della 
NTL una funzione che dato un intero lungo (ZZ) mi dica di quante cifre è 
composto? Questa cosa ancora non sono riuscito a risolverla.
Saluti, Aspidus.

 cifre è composto? Questa cosa ancora non sono riuscito a risolverla.
Cerca la prima potenza di 10 maggiore del numero.
-- 
Costantino Grana 

Grazie Aspidus, a breve provo pur io.
Se ho problemi ti scrivo qui =D

Che devpack bisogna installare???

trovato
http://www.fis.unipr.it/pub/materialedidattico/windid_cd1/win/devc++/devpak/


come si fa a fare questo passaggio?

mpstyle...@gmail.com
 ha scritto:

Ciao scusa il ritardo della risposta ma sono stato un po' lontano dal NG
devi andare nel menu
Progetto->Opzioni del progetto (Alt+P)
Nel Tab "Parametri"
alla voce "Linker" fai "Aggiungi libreria o oggetto"
e dalla cartella in cui è installato Dev-C++ sottocartella "lib"
selezioni il file "libntl.a"
Enjoy
Aspidus

Costantino Grana ha scritto:

Arguto!
Giusto, mi pare un buon workaround, altrimenti l'avrei calcolato 
matematicamente solo che serve la funzione logaritmo in base 10 (che 
ugualmente non trovo nella NTL) e più in generale per poter calcolare la 
lunghezza di un un numero espresso in qualsiasi base serve la funzione 
logaritmo in base X: dove X è proprio la base numerica del numero di cui 
voglio calcolare la lunghezza in cifre.
Se a qualcuno interessa la formula esatta me lo dica che la posto.
Ciao!
Grazie Costantino.
Aspidus.

 Aspidus
Ma questo per ogni progetto???
Mi sembra alquanto laborioso, pensavo bastasse fare un #include
<picopaco.h> ....
Che noce!
Ok grazie!
Guarderò in giro se c'è un alternativa più automatica.
Ciao

Guarda che è più complicato a dirsi che a farsi... è proprio questione 
di pochi secondi.
Includi la libreria statica tra i parametri per il linker e sei a posto.
Ovviamente nel sorgenteci vuole #include<NTL/ZZ.h> o altri a seconda di 
quello che ti serve.
Ciao!


Ma devo farlo per ogni progetto.
Io tra le altre cose non devo fare progetti, ma semplice programmini.
Don't worry. Cerco altre solution.