macrofish

hecko2

May 7th, 2013
95
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.81 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. #define PI 3.14159
  5. #define MAX 50
  6.  
  7.  
  8. int main()
  9. {
  10.     double f=0;
  11.     double Xc=0;
  12.     double kondenzatory[MAX];//pole kondenzazatoru pro max 50 kondenzazatoru
  13.     double kapacitance[MAX];//pole impedanci/admitanci ...nejak to  pojmenuj jestli sem to pojmenoval spatne xD
  14.     char x;
  15.     int i;
  16.     int pocet=0;
  17.     printf("chcete pocitat impedanci nebo admitanci? (seriove zapojeni/paralelni zapojeni) 's'/'p'\n");
  18.     scanf("%c",&x);
  19.     fflush(stdin);
  20.  
  21.     if ((x=='p')^(x=='s'))                  // ^ = XOR  (exclusive or) vysledek je true kdyz je PRAVE jedna podminka pravda..dalo by se normalne i OR ale timhle udelas mozna vetsi dojem :D
  22.     {
  23.  
  24.         printf("kolik kondenzatoru chcete pocitat?\n");
  25.         scanf("%d",&pocet);
  26.         fflush(stdin);
  27.         printf("zadejte frekvenci\n");
  28.         scanf("%lf",&f);
  29.         printf("zadavejte hodnoty jednotlivych kapacit:\n");
  30.         for(i =0; i <pocet;i++)
  31.         {
  32.             printf("C%d: ",i);
  33.             scanf("%lf",&kondenzatory[i]);
  34.         }
  35.  
  36.         for(i=0;i<pocet; i++)                           //vypocteme jednotlive admitance
  37.         {
  38.             kapacitance[i]=2*PI*f*kondenzatory[i];
  39.         }
  40.    
  41.  
  42.         if (x=='s')                                     // v pripade ze jde o seriove tak z nich udelame prevracenou hodnotu a mame impedance
  43.         {
  44.             for(i=0;i<pocet;i++)
  45.             {
  46.                 kapacitance[i]=(1/kapacitance[i]);
  47.             }
  48.         }
  49.     }
  50.     else
  51.     {
  52.         printf("spatna volba\n");
  53.     }
  54.  
  55.  
  56.     for(i = 0; i < pocet; i++)                  //sectem admitance/impedance
  57.     {
  58.         Xc+=kapacitance[i];
  59.     }
  60.  
  61.     if (x=='p')
  62.     {
  63.     printf("celkova admitance je: %lf\n",Xc);       //a vypisem bud se slovem admitance
  64.     }
  65.     if(x=='s')
  66.     {
  67.     printf("celkova impedance je: %lf\n",Xc);       //nebo impedance..jiank sou ty prinf uplne stejne
  68.     }
  69.  
  70.     Xc=1/Xc;
  71.  
  72.     if (x=='s')
  73.     {
  74.         printf("pro kontrolu, celkova admitance by byla: %lf\n",Xc);
  75.     }
  76.  
  77.  
  78.     if (x=='p')
  79.     {
  80.         printf("pro kontrolu, celkova impedance by byla: %lf\n",Xc);
  81.     }
  82.  
  83.     return 0;
  84. }
Advertisement
Add Comment
Please, Sign In to add comment