Как сделать ‘while’ количество циклов между числами?

#c#

#c#

Вопрос:

У меня есть программа, в которой есть два текстовых поля для ввода. Они являются variableOne и variableTwo. Я не могу определить выражение, которое мне нужно поместить в цикл for, чтобы показать эти числа и числа между ними. Например, если я помещаю 1 и 11, мне нужно 2-10 между ними. Это то, что у меня есть до сих пор.. Я знаю, что у меня пока нет выражений else.

 namespace loops
{
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
        }

        private void whileButton_Click(object sender, EventArgs e)
        {
            double variableOne = 0;
            double variableTwo = 0;
            int i = 0;


            if (double.TryParse(variableOneText.Text, out variableOne))
            {
                if(double.TryParse(variableTwoText.Text, out variableTwo))
                {
                    while(i<= (variableOne) amp;amp; (variableTwo))
                    {
                        i  ;
                    }
                    outputLabel.Text = i.ToString();

                }

            }
        }
    }
}
  

Комментарии:

1. Покажите нам, что вы пробовали.

2. Мне трудно понять ваш вопрос

3. Мы можем помочь вам с кодом, но никто не напишет его за вас, покажите, что у вас есть до сих пор

4. Хорошо, итак, я должен ввести первое число, например, я ввожу 1, затем я должен ввести второе число, которое говорит 10. Я не могу понять, какое выражение вставить в операции.. это то, что у меня есть до сих пор.. (Я знаю, что у меня нет другого для моей попытки, разбирайте либо)

5. private void whileButton_Click(отправитель объекта, EventArgs e) { double variableOne = 0; double variableTwo = 0; int i = 0; если (double. Попробуйте проанализировать (variableOneText.Text, out variableOne)) { if(double. Попробуйте проанализировать (variableTwoText.Text, out variableTwo)) { while(i<= (variableOne) amp;amp; (variableTwo)) { i ; } outputLabel. Text = i.toString();

Ответ №1:

Все еще не ясно, чего вы хотите достичь.

Я делаю предположение здесь:

ВВОД: два рациональных числа. ВЫВОД: все натуральные числа между ними.

например, В 8.1, 14.9 -> OUT 9, 10, 11, 12, 13

вот код

 StringBuilder output = new StringBuilder();
double variableOne = 8.1;
double variableTwo = 14.9;

double start = 0;
double end = 0;

bool isShowingInitialVariable = true;


//if (double.TryParse(variableOneText.Text, out variableOne))
//{
//    if (double.TryParse(variableTwoText.Text, out variableTwo))
//    {


//take allways the smaller number to start and the greater for end
start = Math.Min(variableOne, variableTwo); 
end = Math.Max(variableOne, variableTwo);

//build your output
output.AppendLine(string.Format("first variable {0}, second variable {1}", variableOne, variableTwo));
output.AppendLine(string.Format("min", start));
output.AppendLine(string.Format("max", end));
output.AppendLine(string.Format("difference {0}", end - start));


//all the natural numbers in between.
for (int i = (int)Math.Ceiling(start); i < Math.Floor(end); i  )
{
    output.AppendLine(i.ToString());
}

Console.WriteLine(output.ToString());
//        outputLabel.Text = output.ToString();

//    }

//}