Csharp/C Sharp/Data Types/decimal

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

Compute the initial investment needed to attain a known future value given

<source lang="csharp"> /* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852

  • /

/* Compute the initial investment needed to attain

  a known future value given annual rate of return 
  and the time period in years. */ 
 

using System;

public class IntialInvestment {

 public static void Main() {     
   decimal InitInvest; // initial investment 
   decimal FutVal;     // future value 

   double NumYears;    // number of years  
   double IntRate;     // annual rate of return as a decimal 
 
   string str;  

   Console.Write("Enter future value: "); 
   str = Console.ReadLine(); 
   try {  
     FutVal = Decimal.Parse(str);  
   } catch(FormatException exc) {  
     Console.WriteLine(exc.Message);  
     return;  
   }  

   Console.Write("Enter interest rate (such as 0.085): "); 
   str = Console.ReadLine(); 
   try {  
     IntRate = Double.Parse(str);  
   } catch(FormatException exc) {  
     Console.WriteLine(exc.Message);  
     return;  
   }  

   Console.Write("Enter number of years: "); 
   str = Console.ReadLine(); 
   try {  
     NumYears = Double.Parse(str);  
   } catch(FormatException exc) {  
     Console.WriteLine(exc.Message);  
     return;  
   }  

   InitInvest = FutVal / (decimal) Math.Pow(IntRate+1.0, NumYears);  
 
   Console.WriteLine("Initial investment required: {0:C}", 
                     InitInvest);  
 }     

}


      </source>


Compute the regular payments for a loan

<source lang="csharp"> /* C# A Beginner"s Guide By Schildt Publisher: Osborne McGraw-Hill ISBN: 0072133295

  • /
/* 
  Project 2-3 

  Compute the regular payments for a loan. 

  Call this file RegPay.cs 
  • /

using System;

public class RegPay {

 public static void Main() {    
   decimal Principal;    // original principal 
   decimal IntRate;      // interest rate as a decimal, such as 0.075 
   decimal PayPerYear;   // number of payments per year 
   decimal NumYears;     // number of years 
   decimal Payment;      // the regular payment 
   decimal numer, denom; // temporary work variables 
   double b, e;          // base and exponent for call to Pow() 

   Principal = 10000.00m; 
   IntRate = 0.075m; 
   PayPerYear = 12.0m; 
   NumYears = 5.0m; 

   numer = IntRate * Principal / PayPerYear; 
 
   e = (double) -(PayPerYear * NumYears); 
   b = (double) (IntRate / PayPerYear) + 1; 

   denom = 1 - (decimal) Math.Pow(b, e); 
    
   Payment = numer / denom; 

   Console.WriteLine("Payment is {0:C}", Payment); 
 }    

}


      </source>


decimal property

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

   static void Main(string[] args) {
       Money cash1 = new Money();
       cash1.Amount = 40M;
       Console.WriteLine("cash1.ToString() returns: " + cash1.ToString());
       Console.ReadLine();
   }

} class Money {

   private decimal amount;
   public decimal Amount {
       get {
           return amount;
       }
       set {
           amount = value;
       }
   }
   public override string ToString() {
       return "$" + Amount.ToString();
   }

}

</source>


Manually create a decimal number

<source lang="csharp"> /* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852

  • /

// Manually create a decimal number.

using System;

public class CreateDec {

 public static void Main() {     
   decimal d = new decimal(12345, 0, 0, false, 2); 

   Console.WriteLine(d); 
 }     

}


      </source>


Use the decimal type to compute a discount.

<source lang="csharp"> /* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852

  • /

// Use the decimal type to compute a discount.

using System;

public class UseDecimal {

 public static void Main() {     
   decimal price;  
   decimal discount; 
   decimal discounted_price;  
 
   // compute discounted price 
   price = 19.95m;  
   discount = 0.15m; // discount rate is 15% 

   discounted_price = price - ( price * discount);  
 
   Console.WriteLine("Discounted price: $" + discounted_price);  
 }     

}

      </source>


Use the decimal type to compute the future value of an investment

<source lang="csharp"> /* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852

  • /

/*

  Use the decimal type to compute the future value 
  of an investment. 
  • /

using System;

public class FutVal {

 public static void Main() {      
   decimal amount;   
   decimal rate_of_return;  
   int years, i;   
  
   amount = 1000.0M; 
   rate_of_return = 0.07M; 
   years = 10; 

   Console.WriteLine("Original investment: $" + amount); 
   Console.WriteLine("Rate of return: " + rate_of_return); 
   Console.WriteLine("Over " + years + " years"); 

   for(i = 0; i < years; i++) 
     amount = amount + (amount * rate_of_return); 

   Console.WriteLine("Future value is $" + amount);  
 }      

}

      </source>


Using Decimals

<source lang="csharp"> /*

* C# Programmers Pocket Consultant
* Author: Gregory S. MacBeth
* Email: gmacbeth@comporium.net
* Create Date: June 27, 2003
* Last Modified Date:
* Version: 1
*/

using System; namespace Client.Chapter_1___Common_Type_System {

 public class UsingDecimals
 {
   static void Main(string[] args)
   {
     decimal MyDecimal = 3.50m;
   }
 }

}

      </source>