Две переменные внутри цикла TryParse - PullRequest
0 голосов
/ 09 июня 2018

Я новичок в программировании и пытаюсь создать цикл, в котором условие while основано на переменных, однако я не знаю правильный синтаксис для него.Это то, что я пытаюсь сделать, даже если это не разрешено ... Я думаю.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApp3
{
    class Program
    {
        static void Main(string[] args)
        {
            float totalArea, areaUnbuilt;

            while (!float.TryParse(Console.ReadLine(), out totalArea, out areaUnbuilt)) 
            {
                Console.Clear();
                Console.WriteLine("Insert total area in square meters:");
                float.TryParse(Console.ReadLine(), out totalArea);
                Console.WriteLine("Insira are not built in square meters:");
                float.TryParse(Console.ReadLine(), out areaUnbuilt);

            }
        }
    }
}

1 Ответ

0 голосов
/ 09 июня 2018

Вы не можете использовать TryParse для возврата двух значений.Вместо этого измените код на цикл do.. while

bool isArea = true;
bool isUnbuilt = true;
do
{
    Console.Clear();
    Console.WriteLine("Insert total area in square meters:");
    isArea = float.TryParse(Console.ReadLine(), out totalArea);
    Console.WriteLine("Insert area not built in square meters:");
    isUnbuilt = float.TryParse(Console.ReadLine(), out areaUnbuilt);
} while( !isArea || !isUnbuilt);
...