Csharp/CSharp Tutorial/Data Type/double Calculation

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Calculate the radius of a circle given its area using Math function

<source lang="csharp">using System;

class MainClass {

 public static void Main() {    
   Double r; 
   Double area; 

   area = 10.0; 

   r = Math.Sqrt(area / 3.1416); 

   Console.WriteLine("Radius is " + r); 
 }    

}</source>

Radius is 1.78412203012729

Compute the area of a circle with "double"

<source lang="csharp">using System;

class Circle {

 public static void Main() {   
   double radius; 
   double area; 

   radius = 10.0; 
   area = radius * radius * 3.1416; 

   Console.WriteLine("Area is " + area); 
 }   

}</source>

Area is 314.16

Do calculation with double value

<source lang="csharp">using System; using System.Collections.Generic; using System.Text; class Program {

   static void Main(string[] args) {
       double firstNumber, secondNumber;
       string userName;
       userName = "AAA";
       firstNumber = Convert.ToDouble("1.1");
       Console.WriteLine("Now give me another number:");
       secondNumber = Convert.ToDouble(1.2);
       Console.WriteLine("The sum of {0} and {1} is {2}.", firstNumber,
                   secondNumber, firstNumber + secondNumber);
       Console.WriteLine("The result of subtracting {0} from {1} is {2}.",
                   secondNumber, firstNumber, firstNumber - secondNumber);
       Console.WriteLine("The product of {0} and {1} is {2}.", firstNumber,
                   secondNumber, firstNumber * secondNumber);
       Console.WriteLine("The result of dividing {0} by {1} is {2}.",
                   firstNumber, secondNumber, firstNumber / secondNumber);
       Console.WriteLine("The remainder after dividing {0} by {1} is {2}.",
                   firstNumber, secondNumber, firstNumber % secondNumber);
   }

}</source>

double base Fahrenheit and Celsius (Centigrade) Scales

<source lang="csharp">using System; public class MainClass {

   public static void Main(string[] args) {
       double dFahr = 123.123;
       double dCelsius;
       dCelsius = (dFahr - 32.0) * (5.0 / 9.0);
       Console.WriteLine("Temperature in degrees Celsius = " + dCelsius);
   }

}</source>

doubles and arithmetic operators

<source lang="csharp">class MainClass {

 public static void Main()
 {
 
   System.Console.WriteLine("10d / 3d = " + 10d / 3d);
   System.Console.WriteLine("10.0 / 3.0 = " + 10.0 / 3.0);
   double doubleValue1 = 10;
   double doubleValue2 = 3;
   System.Console.WriteLine("doubleValue1 / doubleValue2 = " + doubleValue1 / doubleValue2);
 }

}</source>

10d / 3d = 3.33333333333333
10.0 / 3.0 = 3.33333333333333
doubleValue1 / doubleValue2 = 3.33333333333333

Implement the Pythagorean Theorem

<source lang="csharp">using System; class MainClass {

 public static void Main() {     
   double s1 = 3.0; 
   double s2 = 4.0; 
   double hypot; 

   hypot = Math.Sqrt(s1*s1 + s2*s2); 
 
   Console.WriteLine("Hypotenuse is " + hypot); 
 }     

}</source>

Hypotenuse is 5

Use the while statement to implement Newton"s method for finding the square root

<source lang="csharp">using System; public class MainClass {

  public static void Main( ) {
   double epsilon   = 1.0e-9;
   double guess    = 11.0;
   double value = 2;
     double result = ((value / guess) + guess) / 2;
     Console.WriteLine( "Guess Value  = {0}", guess  );
     Console.WriteLine( "Result Value = {0}", result );
     while( Math.Abs(result - guess) > epsilon ) {
         guess = result;
       result = ((value / guess) + guess) / 2;
         Console.WriteLine( "Guess Value  = {0}", guess  );
         Console.WriteLine( "Result Value = {0}", result );
   }
   Console.WriteLine("The approx sqrt of {0} is {1}", value, result );
   }

}</source>

Guess Value  = 11
Result Value = 5.59090909090909
Guess Value  = 5.59090909090909
Result Value = 2.97431633407243
Guess Value  = 2.97431633407243
Result Value = 1.82336988350512
Guess Value  = 1.82336988350512
Result Value = 1.46012001740362
Guess Value  = 1.46012001740362
Result Value = 1.41493521627426
Guess Value  = 1.41493521627426
Result Value = 1.41421374640426
Guess Value  = 1.41421374640426
Result Value = 1.41421356237311
Guess Value  = 1.41421356237311
Result Value = 1.41421356237309
The approx sqrt of 2 is 1.41421356237309