Direnç Hesaplayıcı
#include <stdio.h>#include <stdlib.h>#include<string.h>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 ){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<giris && giris<14) { 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;}
Hiç yorum yok:
Yorum Gönder