Salve, ho implementato in un file.h una serie di funzioni con un relativo commento che poi ho spostato nella cartella include del compilatore DevC++:
codice:
/*LISTA FUNZIONI PRESENTI NELLA LIBRERIA "funzioni.h" */
// Massimo comune divisore (MCD) fra due numeri (m,n) con m>n.
int MCD (int m,int n)
{
int r;
if (m>n)
{
do
{
r=m%n;
if (r==0)
{
return n;
}
m=n;
n=r;
}
while (r!=0);
}
}
//Ordinamento di un vettore precedentemente caricato, inserire nei parametri attuali (Nome e dimensione del vettore)
int ordinamento(int v[],int d)
{
int i,j,s=0;
for(i = 0 ; i < d-1 ; i++)
{
for(j = i+1 ; j < d ; j++)
{
if(v[i]>v[j])
{
s = v[i];
v[i] = v[j];
v[j] = s;
}
}
}
return v[d];
}
//Caricamento di un vettore, specificare nei parametri attuali (nome e dimensione del vettore).
int caricamento(int v[],int d)
{
int i;
for(i=0;i<d;i++)
{
cout<<"Scrivi il numero "<<i+1<<":";
cin>>v[i];
}
return v[d];
}
//Controllo se un numero è primo, specificare nei parametri attuali(il numero); restituisce: True (se il numero è primo), False (se non lo è).
bool np (int n)
{
int i,r=0;
bool primo = true;
for (i=2;i<=n/2;i++)
{
r=n%i;
if(r==0)
{
primo=false;
break;
}
}
return primo;
}
//Funzione media, specificare nella lista dei parametri attuali(il numero degli elementi).
double media(int n)
{
int i,b,c=0,r;
for(i=0;i<n;i++)
{
cout<<"Inserisci il numero: ";
cin>>b;
c+=b;
}
r=c/n;
return r;
}
//Ricerca di un valore all' interno di un vettore, specificare nei parametri attuali(il nome del vettore e la dimensione).
void controllo_valore(int v[],int d)
{
int i,n;
cout<<"Quale numero stai cercando all interno del vettore? ";
cin>>n;
for(i=0;i<d;i++)
{
if(v[i]==n)
{
cout<<"Il numero "<<n<<" e' presente nel vettore."<<endl;
break;
}
if(i==d-1)
cout<<"Il numero "<<n<<" e' presente nel vettore."<<endl;
}
}
//Funzione che indica la frequenza con cui si ripete un dato, specificare nei parametri(nome e dimensione del vettore).
void frequenza_dato(int v[],int d)
{
int j,n,i=0;
cout<<"Quale dato stai cercando? ";
cin>>n;
for(j=0;j<d;j++)
{
if(v[j]==n)
i++;
}
if(i==0)
cout<<"Il dato non e' presente."<<endl;
else
cout<<"Il dato si ripete: "<<i<<" volta/e."<<endl;
}
Ma quando richiamo la mia libreria con questa istruzione: #include <funzioni.h>, all'interno di un mio programma con altre librerie mi da una serie di errori legati all' I/O dei dati:
codice:
//Esempio di codice:
#include <iostream>
#include <funzioni.h>
using namespace std;
int main()
{
system("PAUSE");
return 0;
}
codice:
//Errori durante la compilazione:
2 C:\Users\Utente\Desktop\abaca.cpp In file included from C:\Users\Utente\Desktop\abaca.cpp
C:\Dev-Cpp\include\funzioni.h In function `int caricamento(int*, int)':
54 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
55 C:\Dev-Cpp\include\funzioni.h `cin' undeclared (first use this function)
C:\Dev-Cpp\include\funzioni.h In function `double media(int)':
89 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function)
90 C:\Dev-Cpp\include\funzioni.h `cin' undeclared (first use this function)
C:\Dev-Cpp\include\funzioni.h In function `void controllo_valore(int*, int)':
104 C:\Dev-Cpp\include\funzioni.h `cout' undeclared (first use this function)
ecc...
Se volete altre informazioni scrivetemelo. Grazie per il vostro aiuto.