KONU : C Sharp Uygulamalar - C Sharp ( C# ) konsolda girilen direnç renklerine göre direcin değerini hesaplayan program. Bu program ile 4 ve 5 renk kodlaması olan dirençlerin değeri hesapnabilir. 4 renkli olanları hesaplamak için 3. renk değerini renksiz olarak giriniz.
UYGULAMAYI İNDİR
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace C_Sharp_Konsol_Direnc_Deger_Hesaplama
{
class Direnc_Deger_Hesaplama
{
static void Main(string[] args)
{
// konsolda okunan değeri saklamak için string tipinde bir değiken tanımlayalım
string deger;
do
{
//işlemimizi kullanıcı çıkmak isteyene kadar devam ettirelim
//bunu için do while kullanıyorum
//konsol ekranının biçimlendirelim, yazı rangini ayarlayalım
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine("---------------------------");
Console.WriteLine("Çıkmak için çıkış yazınız");
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine("Direnç değerini öğrenmek istediğiniz direncin renklerini sıra ile alt alta giriniz \n<=");
Console.WriteLine("Kat sayı 1, Kat sayı 2, Kat sayı 3, Çarpan, Tolerans \n<=");
Console.ForegroundColor = ConsoleColor.DarkGray;
int girilecekRenkSayisi = 5; //5 renk için
//girilen rankleri liste şeklinde tutmak için rankler değişkenini tanımlıyorum
List< string > renkler = new List< string >();
//konsol ekranına girilen rankleri teker teker okuyup renkler değişkenine atıyorum
Direnc direnc = new Direnc();
//Konsol ekranından kullanıcı 5 renk girmesini bekliyeceğiz
//Gireceği ill üç renk katsayıları belirleyecek 4. değer çarpan olacak
// 5 renk ile de tolerans değerini girmesini bekliyeceğiz
for (int i = 0; i < girilecekRenkSayisi; i++)
{
switch (i)
{
case 0:
direnc.KatSayi1 = Direnc.getKatsayi(Console.ReadLine());
break;
case 1:
direnc.KatSayi2 = Direnc.getKatsayi(Console.ReadLine());
break;
case 2:
direnc.KatSayi3 = Direnc.getKatsayi(Console.ReadLine());
break;
case 3:
direnc.Carpan = Direnc.getCarpan(Console.ReadLine());
break;
case 4:
direnc.Tolerans = Direnc.getTolerans(Console.ReadLine());
break;
default:
break;
}
}
//konsol ekranında yazı rengini beyaz yapıyorum
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("\n\nDirenç Değeri = " + direnc + "\n\n");
//Bundan sonra kullanıcıya hangi işlemi yapmak istediğini soruyorum
Console.WriteLine("Çıkmak için ->1, devam için ->0 ...\n=");
deger = Console.ReadLine();
} while (deger == "0"); Console.Clear();
//kullanıcı programdan çıktığında konsol ekranına bunları yazdırıyorum
Console.WriteLine("PROGRAMDAN ÇIKTINIZ....!!!");
Console.WriteLine("");
Console.WriteLine("");
Console.ReadKey();
}
}
public class Direnc
{
public enum enumKatSayı:int
{
Siyah=0, Kahverengi, Kırmızı, Turuncu, Sarı, Yeşil, Mavi, Mor, Gri, Beyaz, Altın=0, Gümüş=0, Renksiz=0
}
public enum enumCarpan:int
{
Siyah = 0, Kahverengi, Kırmızı, Turuncu, Sarı, Yeşil, Mavi, Mor, Gri = 0, Beyaz = 0, Altın = 0, Gümüş = 0, Renksiz = 0
}
public int KatSayi1
{
get;
set;
}
public int KatSayi2
{
get;
set;
}
public int KatSayi3
{
get;
set;
}
public double Carpan
{
get;
set;
}
public string Tolerans
{
get;
set;
}
public int Deger
{
get
{
try
{
return Convert.ToInt32((KatSayi1 * 100 + KatSayi2*10 + KatSayi3) * Math.Pow(10.0, Carpan));
}
catch (Exception)
{
return -1;
}
}
}
public override string ToString()
{
return Deger.ToString() + " Ohm " + Tolerans ;
}
public static int getKatsayi(string renk)
{
enumKatSayı value = 0;
switch (renk.ToLower())
{
case "siyah":
value = enumKatSayı.Siyah;
break;
case "kahverengi":
value = enumKatSayı.Kahverengi;
break;
case "kırmızı":
value = enumKatSayı.Kırmızı;
break;
case "turuncu":
value = enumKatSayı.Turuncu;
break;
case "sarı":
value = enumKatSayı.Sarı;
break;
case "yeşil":
value = enumKatSayı.Yeşil;
break;
case "mavi":
value = enumKatSayı.Mavi;
break;
case "mor":
value = enumKatSayı.Mor;
break;
case "gri":
value = enumKatSayı.Gri;
break;
case "beyaz":
value = enumKatSayı.Beyaz;
break;
default:
value = 0;
break;
}
return Convert.ToInt32(value);
}
public static double getCarpan(string renk)
{
enumCarpan value = 0;
switch (renk)
{
case "siyah":
value = enumCarpan.Siyah;
break;
case "kahverengi":
value = enumCarpan.Kahverengi;
break;
case "kırmızı":
value = enumCarpan.Kırmızı;
break;
case "turuncu":
value = enumCarpan.Turuncu;
break;
case "sarı":
value = enumCarpan.Sarı;
break;
case "yeşil":
value = enumCarpan.Yeşil;
break;
case "mavi":
value = enumCarpan.Mavi;
break;
case "mor":
value = enumCarpan.Mor;
break;
default:
value = 0;
break;
}
return Convert.ToDouble(value);
}
public static string getTolerans(string renk)
{
string value = "";
switch (renk)
{
case "kahverengi":
value = "± %1";
break;
case "kırmızı":
value = "± %2";
break;
case "yeşil":
value = "± %0.5";
break;
case "mavi":
value = "± %0.25";
break;
case "mor":
value = "± %0.10";
break;
case "gri":
value = "± %0.05";
break;
case "altın":
value = "± %5";
break;
case "gümüş":
value = "± %10";
break;
case "renksiz":
value = "± %20";
break;
default:
value = "";
break;
}
return value;
}
}
}

Hiç yorum yok :
Yorum Gönder