C dilinde Direnç Hesaplama programı
#include #include
#include
int main (void)
{
char ad[13][13]={"siyah","kahverengi","kirmizi","turuncu","sari","yesil","mavi","mor","gri","beyaz","altin","gumus","renksiz"};
float tablo[7][13]={
1,2,3,4,5,6,7,8,9,10,11,12,13,
0.0,1,2,3,4,5,6,7,8,9,0,0,0,
0.0,1,2,3,4,5,6,7,8,9,0,0,0,
0,1,2,3,4,5,6,7,8,9,0,0,0,
1,10,100,1000,10000,100000,1000000,10000000,0,0,0.1,0.01,0,
0,1,2,0,0,0.5,0.25,0.10,0.05,0,5,10,20,
0,100,50,15,25,0,0,0,0,0,0,0,0};
int band;
bool r1=0;
while(! r1)
{
printf(" Lutfen hesaplama yapmak istediginiz \ndirencin kac bandli oldugunu giriniz...");
scanf("%d", &band);
if ( 3< band && band<7 code="">7>
{
printf("\n %i bandli bir direnc icin islem yapacagiz", band);
r1=1;
break;
}
else
{
printf("\n Girdiginiz deger 4,5,6'dan farkli oldugundan hesaplanmamistir.");
r1=0;
}
r1=0;
}
printf("\n Sirasiyla bandlarin renglerini asagida yazilan kisaltmalara gore giriniz...");
puts ("\n \n ----------- Kisaltmalar ------------ \n " );
puts(" Siyah --> 1 , Kahverengi --> 2");
puts(" Kirmizi --> 3 , Turuncu --> 4");
puts(" Sari --> 5 , Yesil --> 6");
puts(" Mavi --> 7 , Mor --> 8");
puts(" Gri --> 9 , Beyaz --> 10");
puts(" Altin --> 11 , Gumus --> 12");
puts(" Renksiz --> 13 ");
int i=0,a=0,giris;
bool r2=1;
float degerler[]={},DirencDegeri, toleransi;
float k1, k2,k3, carpan, tolerans, sicaklik;
char kcts[][19]={"1.katsayi","2.katsayi","3.katsayi","Carpan D.","Tolerans ","Sicaklik katsayi"};
while(r2)
{
while(i!=band)
{
i++;
printf("\n\n Lutfen %i.rengi giriniz...", i);
scanf("%d", &giris);
if ( 0
{
if(band==4 && i==3)a=1;
printf(" %i.renk %s, bu rengin %s degeri %1.2f .",i, ad[giris-1],kcts[i-1+a], tablo[i+a][giris-1]);
degerler[i-1]=tablo[i+a][giris-1];
}
else
{
i--;
printf("Hatali bir deger girdiniz... yeniden deneyin. ");
r2=1;
}
r2=0;
}
}
k1=degerler[0];
k2=degerler[1];
k3=degerler[2];
carpan=degerler[3-a];
tolerans=degerler[4-a];
sicaklik=degerler[5-a];
switch(band)
{
case 4:
{
DirencDegeri = (k1*10+k2*1)*carpan;
toleransi = (DirencDegeri*tolerans)/100;
printf("\n\n\tDirenciniz %1.3f ohm olup \n\tToleransi +- %%%f 'dir",DirencDegeri,toleransi );
break;
}
default:
{
DirencDegeri = (k1*100+k2*10+k3)*carpan;
toleransi = (DirencDegeri*tolerans)/100;
printf("\n\n\tDirenciniz %1.3f ohm olup \n\tToleransi +- %%%f 'dir",DirencDegeri,toleransi );
if(band==6) printf("\n\tAyrica sicaklik katsayisi ise %f ppm 'dir",sicaklik);
break;
}
}
system ("pause");
return 0;}
Comments
Post a Comment