将属性声明为类、字段和素数
本文关键字:字段 属性 声明 | 更新日期: 2023-09-27 18:37:17
我是 C# 课程的新手,我正在在线学习 C#,我在下一个练习中遇到了问题:
编写一个类 TestForNumbers,它有两个属性 SetNumber 和 SetField,它们允许向类添加一个整数和一个数字字段。
我的问题,如何设置类的属性?让他们允许吗?
因此,这些值保存在临时变量 tmpNumber 和 tmpField 中。
如何将数字字段保存在一个变量中?
然后该类还有一个方法 NumberOfRelativelyPrime - 它没有参数并返回一个整数,该整数显示字段中相对素数的数字数量,数字后跟 SetNumber 类的属性。
除了类之外,从类 TestForNumbers 创建一个对象,并为 number=3 和 field={2,3,4,6,8,10,13} 添加测试值。然后调用方法 NumberOfRelativelyPrime 以及调用要添加到变量 Relative Prime 中的类的结果。
笔记:如果两个数的最大公约数是 1,则它们相对素数。示例数字为:2 和 3、5 和 7、4 和 11。
指示:如果我们在类 TestForNumbers 中获取对象的 SetNumber 和 SetField 的属性,然后是它们的值 3 和 {2,3,4,6,8,10,13},那么方法 NumberOfRelativelyPrime 应该返回值 5,因为数字 3 与字段 {2,3,4,6,8,10,13} 的元素相对素数。GCD(3,3)=3,大于 1。GCD(3,6) = 3,大于 1,这就是为什么元素 3 和 6 与数字 3 不是相对素数的原因。
"代码的优化并不重要,只要练习返回正确的值就足够了。"(通过练习本身)
是的,我没有做太多事情,因为我很坚持下去......我的代码在下面,当我获得新信息并学习一些事情时,它会更新。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Collections;
namespace ConsoleApplication1
{
class TestForNumbers
{
public string SetNumber
{
get;
set
{
//int tmpNumber = SetNumber();
}
}
public int NumberOfRelativelyPrime
{
}
public string SetField
{
get;
set;
}
}
class Program
{
static void Main(string[] args)
{
}
}
}
也许术语是不被理解的。这是一个小型示例类,用于演示字段和属性之间的差异,以及如何设置属性。看看这个,看看它是否有助于你改革你的问题。
class TestForNumbers
{
private string _ThisIsAField; // a plain old variable at the class level is a field.
public string ThisIsAnAutomaticProperty { get; set; } //this is a typing shortcut, you dont need a backing field.
private string _ThisIsAPropertyBackingField; //another field, but this value is exposed via the property
public string ThisIsAProperty
{
get { return _ThisIsAPropertyBackingField; }
set { _ThisIsAPropertyBackingField = value; } //omit this line if you dont want callers to set the value.
}
}
class Program
{
static void Main()
{
var tfn = new TestForNumbers();
tfn.ThisIsAProperty = "new Value";
tfn.ThisIsAnAutomaticProperty = "Another new value";
//tfn._ThisIsAField = "Doesnt Work";
}
}