user1692696
user1692696

Reputation: 103

How to take user input in the same line?

I'm bigener in C# programming So, I was just wondering about how to take user input in the same line? this is my code and also I want to print the output in the same line

using System;

namespace Wa2
{
  class BodyMassCalculation
  {
    public static void Main (string[] args)
    {
       Console.WriteLine ("BMI Calculator\n");

       double weight;
       Console.WriteLine ("Enter your weight in kilograms: ");
       weight = Convert.ToInt16(Console.ReadLine());

       double height;
       Console.WriteLine ("Enter your height in centimetres: ");
       height = Convert.ToInt16(Console.ReadLine());

       double meter;
       meter = height / 100;

       Double BMI;
       BMI = (weight) / (meter*meter);
       Console.WriteLine ("Your BMI is " , BMI);
       Console.WriteLine(BMI.ToString("00.00"));
    }
  }
}

Upvotes: 10

Views: 40175

Answers (4)

Karim Safan
Karim Safan

Reputation: 1

If you mean to take the input value on the same line or (different values on the same line) you can use the split() Method.

string[] inp = Console.ReadLine().Split(' ');
int a = int.Parse(inp[0]);
char c = char.Parse(inp[1]);
int b = int.Parse(inp[2]);
Console.WriteLine(a + b);

if you want to input different values use these spaces to avoid exception errors.

Upvotes: 0

paulsm4
paulsm4

Reputation: 121799

I think you're asking if it's possible to read both height and weight at the same time:

// C equivalent
printf ("Enter height (cm) and weight (kg): ");
scanf ("%d %d\n", &h, &w);

Yes, there are several alternatives.

Arguably the easiest is use Console.ReadLine() (like you're doing) and parse the string.

You can also try multiple "Console.Read()" (one for each argument).

Upvotes: 0

Mister Bee
Mister Bee

Reputation: 79

Use Console.Write() instead of Console.WriteLine().

I think that's what you mean anyway, the question isn't very clear.

Upvotes: 2

matthewr
matthewr

Reputation: 4739

Try this:

Console.Write("Enter your input here: ");
string userinput = Console.ReadLine();

Just change Console.WriteLine to Console.Write.

Upvotes: 18

Related Questions