このプログラムはクラス用です。2 つの機能を使用する必要があります。これらは、リストされた 3 つのエラーです。
- エラー C2601: 'isPrime': ローカル関数の定義が不正です
- エラー C2601: 'reverse': ローカル関数の定義が不正です
- エラー C1075: e の左中かっこ '{' の前にファイルの終わりが見つかりました。
その他のヘルプやヒントも大歓迎です。ありがとう!
/*
* 2/07/2013
* Computer Science II
* Homework #1
*/
//Purpose: Display first 'n' (user chosen) number if emirps to the console, five per line.
//Note: An "emirp" is a prime number that is also prime when reversed.
#include <iostream>
using namespace std;
int isPrime(int value); //Prototyle for "prime number function"
int reverse (int value2); //Prototype for "emirp function"
int main()
{
//Ask the user for a positive number
enter code here`enter code here`cout << "Please enter a positive number: ";
int n;
cin >> n;
//Reject negative value input
if ( n < 1)
{
cout << "INVALID NUMBER \n";
}
else
//Calculate all emirps up to 'n'.
for (int test = 0; test < n; test++)
{
int number = 2;
if (isPrime(number))
{
cout << "\n" << reverse(number) << "\t\t\t";
}
}
return 0;
}
int isPrime(int value)
{
//If value is prime, the remainder (count) will be zero twice--for 1 and itself.
int divisor = 1;
int count = 0;
int prime = 0;
if (value % divisor == 0)
{
count++;
++divisor;
}
if (count = 2)
{
int prime = value; //store prime value in new variable
}
return prime;
}
int reverse(int value2)
{
//reverse the number
value2*=10;
value2 = value2 %10;
value2/=10;
//same procedure as prime function
int divisor2 = 1;
int count2 = 0;
int emirp = 0;
if (value2 % divisor2 == 0)
{
{
count2++;
++divisor2;
}
if (count2 = 2)
{
int emirp = value2;
}
}
return emirp;
}