C# Practice 12: Code Lesson | Sololearn: Learn to code for FREE!

-2

C# Practice 12: Code Lesson

In this practice i have to write code for solving the area of a circle. The problem is, there is a bug. The Input of the same variable is not the same as the output. Anyone had this problem too?

bug

10/18/2021 10:20:40 AM

Anton Lieske

16 Answers

New Answer

+4

Anton Lieske, console.Read() returns an integer. And there is a problem with it converting to double like that. It could be done using Parse. Or in this case it is easier to just use ReadLine instead: radius=Convert.ToDouble(Console.ReadLine());

+4

A͢J - S͟o͟l͟o͟H͟e͟l͟p͟e͟r͟, Oh, I didn't know that about read() returning character code))) Thanks :)

+3

Anton Lieske Aleksei Radchenkov Console.Read() returns as int and it reads only single character so when you enter 5 it considered as a character which print ASCII value. 53 is a ASCII value of 5 so Console.Write(Console.Read()) //print 53 when you enter 5 @Anton - This is not a bug.

+2

+2

Anton Lieske This program will print ASCII value of 0-9 digits https://code.sololearn.com/cZMu8YBbQu7H/?ref=app

+1

Anton Lieske Where is your code? And which language?

+1

Anton Lieske, mate he meant which programming language. And we can't help you unless you show us your code.

+1

Ah sorry.. i forget to tell that it is c#

+1

Anton Lieske I thought you were comparing input with test cases output. Now I understood you wanted to check your input is right or not.

+1

Ok i didnt know that the int value of the string "5" is "53". nice to know, if something like this happens again. I forget to convert and he gives numerical values back, so i didnt doubt my code. That was the problem. Now it works fine. 👌

+1

Thanks ✌️

0

Thats the code: const double pi = 3.14; double radius; double solution; radius=Console.Read(); Console.Write(radius); Input: 5 Output:53

0

Anton Lieske 1 - Convert radius input to double 2 - you don't have to print input, you have to print area of circle so use formula pi * r * r

0

I know how to solve it. But the problem is that Input isnt the same as output.

0

Please.. understand, that the output with a value of 53 doesnt makes sense when input was 5. There was no calculation in this code. So input has to be output.

0

Ok now it works: 3.14; double solution; double radius = Convert.ToDouble(Console.ReadLine()); solution = radius * radius * pi; Console.Write(solution);