C# 向类、字段和素数声明属性

C# 向类、字段和素数声明属性,c#,class,object,field,primes,C#,Class,Object,Field,Primes,我刚上过C#课程,正在网上学习C#,下一个练习有个问题: 编写一个类TestForNumbers,它有两个属性SetNumber和SetField,它们允许向类中添加一个整数和一个数字字段 我的问题是,如何设置类的属性?让他们允许吗 因此,这些值保存在临时变量tmpNumber和tmpField中 如何将数字字段保存在一个变量中 然后,该类又有一个方法NumberOfRelativelyPrime,该方法没有参数,返回一个整数,该整数显示字段中的数字数量,这些数字与SetNumber类的属性后面

我刚上过C#课程,正在网上学习C#,下一个练习有个问题:

编写一个类TestForNumbers,它有两个属性SetNumber和SetField,它们允许向类中添加一个整数和一个数字字段

我的问题是,如何设置类的属性?让他们允许吗

因此,这些值保存在临时变量tmpNumber和tmpField中

如何将数字字段保存在一个变量中

然后,该类又有一个方法NumberOfRelativelyPrime,该方法没有参数,返回一个整数,该整数显示字段中的数字数量,这些数字与SetNumber类的属性后面的数字相对素数

除了类之外,从类TestForNumbers创建一个对象,并为number=3和field={2,3,4,6,8,10,13}添加测试值。然后调用方法NumberOfRelativelyPrime和调用要添加到变量RelativelyPrime中的类的结果

注: 如果两个数的最大公约数为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)=大于1的3。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";
        }
    }

你能把这简化成一个问题吗?这里面有十几个主题,你似乎在寻求帮助。我更新了代码。。我走对了吗?我想问以下问题。。如何创建多个数字的字段属性?如何从一个类中创建一个对象?你是在追求算法还是在要求与代码相关的东西?很不清楚你的问题到底是什么,关于类的属性呢?你如何设置它们?(SetNumber,SetField)ThisIsAProperty和ThisIsaAutomaticProperty是类的属性。静态void Main中的语句正在为它们设置值。非常好。。我尝试了一些代码,但我真的被对象和多个数字字段的创建所困扰。