Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <math.h>
- int read_e(int eReihe) {
- printf("Bitte geben Sie eine gueltige E-Reihe an: ");
- scanf("%d", &eReihe);
- while (eReihe != 6 && eReihe != 12 && eReihe != 24 && eReihe != 48 && eReihe != 96 && eReihe != 192) {
- printf("\nDie eingegebene E Reihe existiert nicht\nBitte geben Sie eine guelttige E-Reihe an: ");
- scanf("%d", &eReihe);
- }
- return eReihe;
- }
- int read_d(int Dekade) {
- printf("\nGeben Sie ein gueltigen Dekadenfaktor ein: ");
- scanf("%d", &Dekade);
- while (Dekade != 0 && Dekade != 1 && Dekade != 2) {
- printf("\nDer eingegebene Dekadenfaktor existiert nicht\nBitte geben Sie einen guelttigen Dekadenfaktor an: ");
- scanf("%d", &Dekade);
- }
- return Dekade;
- }
- double tolerance(int n) {
- double R;
- switch (n) {
- case 6:
- R = 20;
- break;
- case 12:
- R = 10;
- break;
- case 24:
- R = 5;
- break;
- case 48:
- R = 2;
- break;
- case 96:
- R = 1;
- break;
- case 192:
- R = 0.5;
- break;
- }
- return R;
- }
- double Berechnung() {
- int n, E, D, i, m;
- n = read_e(E);
- m = read_d(D);
- i = n - 1;
- double arr[i][3];
- double R = tolerance(n);
- printf("+-----------------------------------------------------------------------+\n");
- printf("|\t\t\t Widerstandsreihe E - %d \t\t\t|\n", n);
- printf("+-----------------------------------------------------------------------+\n");
- printf("|\t- %.0f%%\t\t|\t R \t|\t+ %.0f%%\t\t|\n", R, R);
- printf("+-----------------------------------------------------------------------+\n");
- for (i = 0; i < 24; i++) {
- arr[i][1] = (pow(pow(10.0, 1.0 / n), i)) * (pow(10.0, m));
- arr[i][2] = arr[i][1] + arr[i][1] * (R / 100);
- arr[i][0] = arr[i][1] - arr[i][1] * (R / 100);
- printf("|\t%.5f \t|\t%.5f \t|\t%.5f \t|\n", arr[i][0], arr[i][1], arr[i][2]);
- }
- printf("+-----------------------------------------------------------------------+\n");
- }
- int main(void) {
- char response;
- printf("\nGuetlgie E Reihen: E6, E12, E24, E48, E96, E192\n");
- printf("------------------------------------------------------------------\n");
- printf("Gueltige Dekanfaktoren: 0 fuer 1-10, 1 fuer 10-100, 2 fer 100-1000\n");
- printf("------------------------------------------------------------------\n");
- do {
- Berechnung();
- while (getchar() != '\n');
- printf("Erneute Berechnung? (j)/(n)\n");
- scanf("%ch", &response);
- } while (response == 'j');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement