Tuesday, June 24, 2014
Final Review (CSI-156)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace FinalReview
{
public class Stock
{
//Q. 6 (Private fields)
private int _numberOfShares;
private decimal _pricePerShare;
private string _companyName;
//Q. 7.a (Constructor)
public Stock(string companyName, int numberOfShares, decimal pricePerShare )
{
_companyName = companyName;
_numberOfShares = numberOfShares;
_pricePerShare = pricePerShare;
}
//Q. 7.b (Get Properties)
public int NumberOfShares
{ get { return _numberOfShares; } }
public decimal PricePerShare
{ get { return _pricePerShare; } }
public string CompanyName
{ get { return _companyName; } }
//Q. 8 (method to calculate invested Value)
public decimal CalculateInvestedValue()
{
return _numberOfShares * _pricePerShare;
}
//Q. 9 (method to Buy More Shares)
public decimal BuyMoreShares(int sharepurchase)
{
_numberOfShares += sharepurchase;
return sharepurchase * _pricePerShare;
}
//Q. 10 (method to sell shares)
public decimal SellShare(int shareSell)
{
_numberOfShares -= shareSell;
return shareSell * PricePerShare;
}
}
}
//===========================================
if(dishList.Count > 0)
{
using (StreamWriter sw = File.AppendText("dish.txt") )
{
foreach(string dishes in dishList)
{
sw.WriteLine(dishes);
}
}
MessageBox.Show("Your Input has sucessfully saved");
}
}
//Review Q.5
private void btnDisplayAllDishes_Click(object sender, EventArgs e)
{
if (File.Exists("dish.txt"))
{
using (StreamReader sr = File.OpenText("dish.txt"))
{
while (!sr.EndOfStream)
{
listBox1.Items.Add(sr.ReadLine());
}
}
}
}
//Review Q.2 //Initialize 2 dimensional arrays
private void InitializeTwoDimArr(int[,] arr)
{
int rows = arr.GetLength(0);
int col = arr.GetLength(1);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < col; j++)
{
arr[i, j] = rand.Next(-99, 100);
rtbFor2DimArr.AppendText(arr[i, j] + " ");
}
rtbFor2DimArr.AppendText("\n");
}
}
//Review Q.3 (Methods to display Count Of Odd Values)
private int NumberOfOddValues(int[,] arr)
{
int count = 0;
int rows = arr.GetLength(0);
int col = arr.GetLength(1);
for (int i = 0; i < rows; i++)
{
for (int j = 0; j < col; j++)
{
if(arr[i,j] % 2 != 0)
{
count++;
}
}
}
return count;
}
//Review Q. 4 //Display 2 dim arrays
private void btnDisplay2DimArrNCountOfOdd_Click(object sender, EventArgs e)
{
if (txtRow.Text != String.Empty && txtCol.Text != String.Empty)
{
int row, col;
if (int.TryParse(txtRow.Text, out row) && int.TryParse(txtCol.Text, out col))
{
int[,] Arr = new int[row, col];
InitializeTwoDimArr(Arr);
//Display2D_Array(array);
int oddCount = NumberOfOddValues(Arr);
rtbFor2DimArr.AppendText("\n\nNumber Of Odd Values: " + oddCount);
}
else
MessageBox.Show("Enter an integer for row and column");
}
}
//Review Q. 12 //Method to display stock
private void DisplayStock()
{
listView1.Items.Clear();
foreach(Stock item in stockList)
{
ListViewItem lvi = new ListViewItem(item.CompanyName);
lvi.SubItems.Add(item.NumberOfShares.ToString());
lvi.SubItems.Add(item.PricePerShare.ToString("c"));
lvi.SubItems.Add(item.CalculateInvestedValue().ToString("c"));
listView1.Items.Add(lvi);
}
}
//Review Q. 13 //Method to get stock by Company Name
private Stock GetStockByName(string companyName)
{
foreach (Stock item in stockList)
{
if (companyName == item.CompanyName)
{
return item;
}
}
return null;
}
private void btnBuyShare_Click(object sender, EventArgs e)
{
int shareAmountToBuy;
if (txtCompanyName.Text != String.Empty)
{
string CompanyName = txtCompanyName.Text;
if (int.TryParse(txtShareAmount.Text, out shareAmountToBuy))
{
Stock stock = GetStockByName(CompanyName);
if (stock != null)
{
stock.BuyMoreShares(shareAmountToBuy);
DisplayStock();
txtCompanyName.Clear();
txtShareAmount.Clear();
}
else
MessageBox.Show("No match company name found in database");
}
}
}
private void btnDisplayAllStocks_Click(object sender, EventArgs e)
{
DisplayStock();
}
private void btnGetStockByComName_Click(object sender, EventArgs e)
{
if (txtCompanyName.Text != String.Empty)
{
string companyName = txtCompanyName.Text;
Stock stock = GetStockByName(companyName);
if (stock != null)
{
listView1.Items.Clear();
ListViewItem lvi = new ListViewItem(stock.CompanyName);
lvi.SubItems.Add(stock.NumberOfShares.ToString());
lvi.SubItems.Add(stock.PricePerShare.ToString("c"));
lvi.SubItems.Add(stock.CalculateInvestedValue().ToString("c"));
listView1.Items.Add(lvi);
}
else
MessageBox.Show("Input not found");
}
}
private void btnGetTimeDiff_Click(object sender, EventArgs e)
{
TimeSpan ts;
//get user input
DateTime departureTime = dtDepartureTime.Value;
DateTime arrivalTime = dtArrivalTime.Value;
if (arrivalTime > departureTime)
ts = arrivalTime - departureTime;
else
ts = departureTime - arrivalTime;
richTextBox1.Text = "Total days: " + ts.Days;
}
//========================
private void btnSortByDistance_Click(object sender, EventArgs e)
{
rtbFor2DimArr.Clear();
var nearP = GetNearestPoint(pointList);
rtbFor2DimArr.Text = nearP.ToString();
}
private Point GetNearestPoint(List<Point> points)
{
Point pt = points.OrderBy(p => p.X * p.X + p.Y * p.Y).First();
return pt;
}
private void btnDrawSqrNCircleShape_Click(object sender, EventArgs e)
{
Point p = new Point(70, 30);
Brush myBrush = new SolidBrush(Color.Blue);
int x = p.X;
int y = p.Y;
Rectangle rect = new Rectangle(0, 0, 140, 140);
g.FillRectangle(myBrush, rect);
pictureBox1.Image = bmap;
//=================
g.FillEllipse(myBrush = new SolidBrush(Color.Yellow), rect);
pictureBox1.Image = bmap;
//====================
Rectangle rect2 = new Rectangle(22, 21, 98, 98);
g.FillRectangle(myBrush = new SolidBrush(Color.Green), rect2);
pictureBox1.Image = bmap;
}
}
}
Labels:
Review
Subscribe to:
Post Comments (Atom)

No comments:
Post a Comment