#include<iostream>
#include <time.h>
#include <sys/timeb.h>
using namespace std;
bool IsPrime(unsigned long long n);
unsigned long long pow2(unsigned n);
unsigned long long Mersenne(unsigned n);
unsigned long long Sqrt (unsigned long long n);
bool LucasLehmer (unsigned long long n);
double TIME (void);
//------------------------------------------------------------
int main()
{
for (unsigned long long n = 1; n < 10; n++)
{
if (IsPrime(n))
cout <<" IsPrime "<< endl;
}
return 0;
}
//------------------------------------------------------------
bool IsPrime(unsigned long long n)
{
if (n<= 2 || n%2==0)
return n==2
for (unsigned long long i=3; i<n; i+=2)
{
if (n%i==0)
return false;
else
return true;
}
};
//------------------------------------------------------------
unsigned long long pow2(unsigned n)
{
unsigned long long ret= 1;
return ret<< n;
}
//------------------------------------------------------------
unsigned long long Mersenne(unsigned n)
{
return n-1;
}
//------------------------------------------------------------
unsigned long long sqrt (unsigned long long n)
{
return sqrt(n);
}
//------------------------------------------------------------
bool LucasLehmer (unsigned long long n)
{
if (n=2)
return true;
unsigned long long s=4;
const unsigned long long mp=Mersenne(n);
for (unsigned long long i=3; i=n; i=++);
}
//------------------------------------------------------------
unsigned long long Mersenne(unsigned n)
{
return n-1;
}
//------------------------------------------------------------
unsigned long long sqrt (unsigned long long n)
{
return sqrt(n);
}
//------------------------------------------------------------
bool LucasLehmer (unsigned long long n)
{
if (n=2)
return true;
unsigned long long s=4;
const unsigned long long mp=Mersenne(n);
for (unsigned long long i=3; i=n; i=++);
}
//------------------------------------------------------------
double TIME (void)
{
struct timeb t;
ftime(&t);
return (((1000.0 * t.time) + t.millitm));
}
я получаю эти сообщения об ошибках, когда я скомпилировать код:Im пытаясь найти Мерсенна номера
error: expected initializer before ‘if’
if (n<= 2 || n%2==0) return n==2)
error: ‘i’ does not name a type
for (unsigned long long i=3; i<n; i+=2)
^
error: ‘i’ does not name a type
for (unsigned long long i=3; i<n; i+=2)
^
error: expected primary-expression before ‘)’ token
for (unsigned long long i=3; i=n; i=++);
^
Я только начал принимать этот класс, и это мое первое задание, любая помощь будет принята с благодарностью ,
* Я использую GNU GCC компилятор
Downvotes? Пошли, они только что отправили свою первую попытку! –
IsPrime не имеет начального '{' (и соответствующего конца). –
@ DanielEarwicker: Я не знал, что Stack Overflow был местом для «первых попыток». –