一个错误,求解答

lzj314145738 2010-08-23 11:41:04
要求用定义方法来判断一个数是不是一个素数,以前会编的,好久没编了,今天编出了问题,解决不了,求解答。下面是我编的。请帮忙改改。

public class maint
{
public static void Main()
{
int x;
Console.WriteLine("请输入一个正整数");
x = int.Parse(Console.ReadLine());
if (isprime)

Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
}
public class isprime
{
public bool prime(int num)
{
bool isprime = true;
for (int i = 2; i < num; i++)
{
if (num % i == 0)
return false;
else
return true;
}
}
}
...全文
123 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
wuyq11 2010-08-23
  • 打赏
  • 举报
回复
int k=Console.ReadLine();
int flag = 1;
for (int i = 1; i <= k; i++)
{
for (int j = 2; j <= Math.Sqrt(i); j++)
{
if (i % j == 0)
{
flag = 0;
break;
}
}
if (flag == 1) Console.WriteLine("{0} ", i);
flag = 1 ;
}
}
public bool IsPrimeNumber(long value)
{
if (value == 2)
{
return true;
}

for (long i = 2; i <= Math.Ceiling(Math.Sqrt(value)); i++)
{
if ((value % i) == 0)
{
return false;
}
}

return true;
}


无涯大者 2010-08-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 wuyazhe 的回复:]

C# code
using System;
using System.Collections.Generic;
using System.Text;

namespace P52_1
{
class Program
{
static void Main(string[] args)
{
Cal a = new Cal();……
[/Quote]


This is it~~
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复
if (new isprime.prime(x))

Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
错误,错误
“shi.isprime.prime(int)”是“方法”,但此处被当做“类型”来使用 C:\Users\acer\Desktop\shi\shi\Program.cs 14 29 shi
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复
if (new isprime.prime(x))
bool isprime = true;
for (int i = 2; i < num; i++)
{
if (num % i == 0)
{
return false;
break;
}
}
return true;
错误,错误。错误 1
“shi.isprime.prime(int)”是“方法”,但此处被当做“类型”来使用 C:\Users\acer\Desktop\shi\shi\Program.cs 14 29 shi
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复
错误 1 “shi.isprime.prime(int)”是“方法”,但此处被当做“类型”来使用
rwm53你的有错误,跟我之前一样错误,还是不能运行,继续求解
Peter200694013 2010-08-23
  • 打赏
  • 举报
回复
判断

ublic bool prime(int num)
{
for (int i = 2; i <= (int)Math.Sqrt(num); i++)
{
if (num % i == 0)
return false;
}
return true;
}



求小于N的素数

public List<Int32> GetPrimersLessThan(Int32 n)
{
Int32 pre = 5;
Int32 cur = 5;
Boolean flag = true; // true +2 false +4
Boolean isPrimer;
List<Int32> list = new List<Int32>();
list.Add(2);
list.Add(3);
list.Add(5);
while (true)
{
isPrimer = true;

if (flag)
{
cur = pre + 2;
}
else
{
cur = pre + 4;
}

if (cur >= n)
break;

for (Int32 i = 0; i < list.Count; i++)
{
if (cur % list[i] == 0)
{
isPrimer = false;
break;
}
}
if (isPrimer)
{
list.Add(cur);
}
pre = cur;

}

return list;
}

rwm5366745 2010-08-23
  • 打赏
  • 举报
回复
public class maint
{
public static void Main()
{
int x;
Console.WriteLine("请输入一个正整数");
x = int.Parse(Console.ReadLine());
if (new isprime().prime(x))
Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
}
public class isprime
{
public bool prime(int num)
{

for (int i = 2; i < num; i++)
{
if (num % i == 0)
{
return false;
break;
}
}
return true;

}
}
rwm5366745 2010-08-23
  • 打赏
  • 举报
回复
public class maint
{
public static void Main()
{
int x;
Console.WriteLine("请输入一个正整数");
x = int.Parse(Console.ReadLine());
if (new isprime.prime(x))

Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
}
public class isprime
{
public bool prime(int num)
{
bool isprime = true;
for (int i = 2; i < num; i++)
{
if (num % i == 0)
{
return false;
break;
}
}
return true;


}
}
兔子-顾问 2010-08-23
  • 打赏
  • 举报
回复
using System;
using System.Collections.Generic;
using System.Text;

namespace P52_1
{
class Program
{
static void Main(string[] args)
{
Cal a = new Cal();
a.sushu();
}
}
class Cal
{
private int c=0;
string s;

public int C
{
get
{
return c;
}
set
{
if (value <= 0)
{
Console.WriteLine("请输入正数!");
return;
}
c = value;
}
}
public void sushu()
{
Console.WriteLine("请输入一个正数:");
do
{
s = Console.ReadLine();
try
{
C = Int32.Parse(s);
}
catch (Exception e)
{
Console.WriteLine("请输入数字!");
}
} while (c <= 0);

for (int i = 2; i < C; i++)
{
if (C % i == 0)
{
Console.WriteLine("您输入的正数{0}不是素数,第一个整除的数是{1}", C, i);
return;
}
}
Console.WriteLine("您输入的正数{0}是素数。", C);

}
}
}



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/cybcha/archive/2007/11/29/1907017.aspx
dancingbit 2010-08-23
  • 打赏
  • 举报
回复

public bool prime(int num)
{
for (int i = 2; i < num/2; i++)
{
if (num % i == 0)
return false;
}
return true;
}
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复
谢谢2楼跟15楼了
rwm5366745 2010-08-23
  • 打赏
  • 举报
回复
试试 我在5楼的回复
chenchenyangll 2010-08-23
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 sloves1988 的回复:]

if (isprime(x))
改为:
isprime LZ = new isprime();
if(LZ.prime(x))
[/Quote]

LS是在吐槽LZ吗。。。
sloves1988 2010-08-23
  • 打赏
  • 举报
回复
if (isprime(x))
改为:
isprime LZ = new isprime();
if(LZ.prime(x))
chenchenyangll 2010-08-23
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lzj314145738 的回复:]

if (new isprime.prime(x))

Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
错误,错误
“shi.isprime.prime(int)”…… // 你这里isprime后面要加括号 (new isprime()).prime(x)表示一个新的isprime类对象并调用prime方法
[/Quote]
chenchenyangll 2010-08-23
  • 打赏
  • 举报
回复
    class Program
{
static void Main(string[] args)
{

int x;
Console.WriteLine("请输入一个正整数");
x = int.Parse(Console.ReadLine());
if (new isprime().prime(x))

Console.WriteLine("是素数");
else
Console.WriteLine("不是素数");
}
}

public class isprime
{
public bool prime(int num)
{
for(int i = 2; i <= (int)Math.Sqrt(num); i++)
{
if (num % i == 0)
return false;
}
return true;
}
}


测试通过
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复
就这么简单,问题,怎么就没人能给我解答出来咧
lzj314145738 2010-08-23
  • 打赏
  • 举报
回复

public class maint
{
public static void Main()
{
int x;
Console.WriteLine("请输入一个正整数");
x = int.Parse(Console.ReadLine());

if(prime(x))错误指向此处
Console.WriteLine("不是素数");
else
Console.WriteLine("是素数");
}
}
public class isprime
{
public bool prime(int num)
{

for (int i = 2; i < num; i++)
{
if (num % i == 0)
{
return false;
break;
}
}
return true;
}
}
}
这是我的程序,错误是编译错误,错误代码如下:
错误 1当前上下文中不存在名称“prime”
sloves1988 2010-08-23
  • 打赏
  • 举报
回复
你把函数prime写在另一个类isprime中,所以调用的时候要先找到类,再调用函数。
if (isprime)
改为:
isprime LZ = new isprime();
if(LZ.prime)

还有,LZ你是报什么错误呢?算法错误,还是调用错误?你把错误贴出来会比较好分析一点。

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧