-1

背景:
これは 13 時間前に更新されたものです。私はこのプログラミング分野に慣れていないので、手短に言います.C#を教えています.

そして、テキストボックスへのユーザーの入力からの整数をbutton1_Clickから計算してフォームに表示する方法を学ぼうとしています. はい、これはクラスの課題ですが、すべてではありませんが、一部はうまく扱えると思います。それが私があなたたちに目を向けている理由です。

問題:
Microsoft Visual Studio 2010 を C# 言語、Windows フォーム アプリケーションで使用しています。ユーザーが 10 個の整数値を入力できるようにする GUI を作成する必要があります。この値は、button_Click オブジェクトから呼び出される配列に格納されます。これらの値には、ユーザーが入力した最高値と最低値が表示されます。唯一のことは、配列が Click() メソッドの上で宣言されなければならないということです。

これは私がこれまでに思いついたものです:

namespace SmallAndLargeGUI
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        public void inputText_TextChanged(object sender, EventArgs e)
        {
            this.Text = inputText.Text;
        }

        public void submitButton_Click(object sender, EventArgs e)
        {
            int userValue; 
            if(int.TryParse(inputText.Text, out userValue)) 
        { 

        } 
        else 
        {
            MessageBox.Show("Please enter a valid integer into the text box.");
        } 


            int x;
            x = Convert.x.ToString();
            int squaredResults = squared(x);
            int cubedResults = cubed(x); squared(x);
            squaredLabel.Text = x.ToString() + " squared is " + squaredResults.ToString();
            cubedLabel.Text = x.ToString() + " cubed is " + cubedResults.ToString();
        }
        public static int squared(int x)
        {
            x = x * x;
            return x;
        }
        public static int cubed(int x)
        {
            x = x * squared(x);
            return x;    
        }
    }
}

行 38 に次のエラー メッセージが表示されるため、このプログラムを実行できません: 'System.Convert' には 'x' の定義が含まれていません。 Click() メソッド。皆さん、私に何か助けてください。これは昨日が期限でした。

4

2 に答える 2

0

これはおそらく宿題なので、解決策全体を提供するのではなく、ヒントを提供するだけです。

私にとってのタスクは、10個の整数を受け入れて、それらの最小値と最大値を表示する方法のようです。このため、配列を維持する必要はありません (もちろん、配列を維持すること自体が問題の一部ではない場合のみ)。現在の最小値と現在の最大値を追跡するだけです。

入力を受け取るたびに、それを現在の最小値と最大値と比較し、それに応じて更新します。例えば

if(num < curr_min) curr_min = num;
于 2012-06-28T05:57:02.420 に答える
0

これは宿題のように見えるので、もう少し試してみてください。できることは次のとおりです。文字列を解析し(コンマ区切りの数字のリストだとします)、各値をキャストしintて配列に入力します。.Max()/メソッドを呼び出すか.Min()、配列の値をループして最大 / 最小値を取得できます。ここに少しのコードがあります:

int n = 10;
int[] numbers = (from sn in System.Text.RegularExpressions.Regex.Split(inputText.Text, @"\s*,\s*") select int.Parse(sn)).ToArray();
int max = numbers.Max();
int min = numbers.Min();
//int max = numbers[0];
//int min = numbers[0];
//for(int i = 1; i < n; i++)
//{
//    if(max < numbers[i])
//    {
//        max = numbers[i];
//    }
//    if(min > numbers[i])
//    {
//        min = numbers[i];
//    }
//}
于 2012-06-28T02:03:22.590 に答える