在简单程序中帮助创建方法所需的帮助 [英] Help needed creating methods within a simple program

查看:44
本文介绍了在简单程序中帮助创建方法所需的帮助的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要在简单程序中创建方法的帮助.

我基本上创建了一个成绩报告表,在其中输入5个成绩会返回平均分数.我也有一个组合框,您必须在其中选择一个专业.我使用了if语句来检索字母等级,并使用开关来确定进入专业所需的等级.

显示的基本格式为:

I need help creating a method within a simple program.

I basically created a grade report sheet where I input 5 grades it returns the average score. I also have a combobox in which you have to select a major. I used an if statement to retrieve the letter grade and use a switch to determine the grade you need to get into a major.

The basic format I was shown was:

public string DetermineLetterGrade
            (double courseAverage)


然后显然是字母的返回


and then obviously a return of lettergrade

private void btnCalculateGrade_Click_1(object sender, RoutedEventArgs e)
        {
            string studentName;
            int homework1;
            int homework2;
            int quiz1;
            int quiz2;
            int finalExam;
            string letterGrade = "Incomplete";
            string major = "unknown";
            double homeworkContribution;
            double quizContribution;
            double finalExamContribution;
            double courseAverage;

            const double homeworkWeight = 0.25;
            const double quizWeight = .35;
            const double finalExamWeight = .40;

           

            studentName = (tbStudentName.Text);
            homework1 = Convert.ToInt32(tbHomework1.Text);
            homework2 = Convert.ToInt32(tbHomework2.Text);
            quiz1 = Convert.ToInt32(tbQuiz1.Text);
            quiz2 = Convert.ToInt32(tbQuiz2.Text);
            finalExam = Convert.ToInt32(tbFinal.Text);
            major = Convert.ToString(cbDepartment.SelectionBoxItem);
            homeworkContribution = (homework1 + homework2) / 2 * homeworkWeight;
            quizContribution = (quiz1 + quiz2) / 2 * quizWeight;
            finalExamContribution = (finalExam) * finalExamWeight;
            courseAverage = homeworkContribution + quizContribution + finalExamContribution;


   


            if (courseAverage >= 90)
            {
                letterGrade = "A";
            }
            else if (courseAverage > 80)
            {
                letterGrade = "B";
            }
            else if (courseAverage > 70)
            {
                letterGrade = "C";
            }
            else if (courseAverage > 60)
            {
                letterGrade = "D";
            }
            else
            {
                letterGrade = "F";
            }




    string businessCollegeRequirement = "unknown";
            switch (major)
            {
                case "Accounting":
                case "MIS":
                    businessCollegeRequirement = "need at least an B";
                    break;
                case "Economics":
                case "Finance":
                case "Marketing":
                    businessCollegeRequirement = "Need at least a C";
                    break;
                case "Management":
                    businessCollegeRequirement = "Need at least a D";
                    break;

            }

            lblResult.Content = studentName + "'s" + "Course Average:" + courseAverage;
            lblResult.Content += "\nletterGrade:" + letterGrade;
            lblResult.Content += "\nRequirement: " + businessCollegeRequirement;
            lblResult.Content += "\nMajor: " + major;


        }
    }//end class
}//end namespace


if (courseAverage >= 90)
           {
               letterGrade = "A";
           }
           else if (courseAverage > 80)
           {
               letterGrade = "B";
           }
           else if (courseAverage > 70)
           {
               letterGrade = "C";
           }
           else if (courseAverage > 60)
           {
               letterGrade = "D";
           }
           else
           {
               letterGrade = "F";
           }

推荐答案

到目前为止,我不喜欢任何答案,一点也不喜欢.数据应与代码分开;代码不应包含任何立即数(硬编码).应该是这样的:

I don''t like any of the Answers so far, not at all. Data should be separated from the code; code should not contain any immediate constants (hard-coded). It should be something like that:

//data associated with symbols:
enum Grade { F = -1, D = 60, C = 70, B = 80, A = 90, }

//...

//code, no numeric literals:
static Grade GetGrade(double age) {
    for (Grade grade = Grade.A; grade > Grade.F; grade--)
        if (age > (int)grade)
            return grade;
    return Grade.F;
} //GetGrade



—SA



—SA


然后,您的问题是什么,您可以轻松获得评分,让您的问题变得很清楚..

Then what is your problem , you can get the grade easily, make your problem clear..

<pre lang="cs">private String GetGrade(int courseAverage)<br />
        {<br />
            string letterGrade = "";<br />
            if (courseAverage >= 90)<br />
                letterGrade = "A";<br />
            else if (courseAverage > 80)<br />
                letterGrade = "B";<br />
            else if (courseAverage > 70)<br />
                letterGrade = "C";<br />
            else if (courseAverage > 60)<br />
                letterGrade = "D";<br />
            else<br />
                letterGrade = "F";<br />
            return letterGrade;<br />
        }</pre><br />


const double homeworkWeight = 0.25;
        const double quizWeight = .35;
        const double finalExamWeight = .40;

        private String CalculateGrade(string studentName, int homework1, int homework2, int quiz1, int quiz2, int finalExam)
        {
            string letterGrade = "Incomplete";

            double homeworkContribution = 0;
            double quizContribution = 0;
            double finalExamContribution = 0;

            homeworkContribution = (homework1 + homework2) / 2 * homeworkWeight;
            quizContribution = (quiz1 + quiz2) / 2 * quizWeight;
            finalExamContribution = (finalExam) * finalExamWeight;
            double courseAverage = homeworkContribution + quizContribution + finalExamContribution;

            if (courseAverage >= 90)
                letterGrade = "A";
            else if (courseAverage > 80)
                letterGrade = "B";
            else if (courseAverage > 70)
                letterGrade = "C";
            else if (courseAverage > 60)
                letterGrade = "D";
            else
                letterGrade = "F";

            return studentName + "'s" + "\nCourse Average : " + courseAverage + "\nletterGrade : " + letterGrade;

        }


这篇关于在简单程序中帮助创建方法所需的帮助的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆