Visualisierungs Problem in C . möchte Kraft in einem Balkendiagramm darstellen.Brauche Hilfe!!!!!!
-
#include <stdio.h>
#include <stdlib.h>
#include <math.h>int main(void)
{float h1,h2,vd,hd,kl,t,kg,Fh,Fn,Fr,rk,Frr,bb;
printf("\n\tBERECHNUNG DER TRASSELAENGE\n");
printf("\t----------------------------\n\n"); /*Trasselänge für Berechnung*/
printf("\tGeben Sie die Hoehe des unteren Punktes ein: ");
scanf("%f",&h1);
printf("\tGeben Sie die Hoehe des oberen Punktes ein: ");
scanf("%f",&h2);
if(h1>h2){
vd = h1-h2;
}
else {
vd = h2-h1;
} /*Berechnung Vertikaldistanz*/
printf("\tGeben Sie die Horizontaldistanz ein: ");
scanf("%f",&hd);
t = hd*hd+vd*vd; /*Berechnung der Kabellänge*/
kl = sqrt(t);
printf("\n\tDie Kabellaenge ist: %.2f\n\n\n",kl);printf("\tBERECHNUNG DES KABELGEWICHTES\n");
printf("\t-------------------------------\n\n");
int Kabelwahl;
int XMKTY3x1x5016CU = 37;
int XMKTYT3x1x5016CU = 39;
int XMKTY3x1x9525CU = 55;
int XMKTYT3x1x9525CU = 58;
int XMKTY3x1x15035CU = 76;
int XMKTYT3x1x15035CU = 80;
int XMKTY3x1x24035CU = 106;
int XMKTYT3x1x24035CU = 113;
int XMKTYT3x1x9516ALCU = 33;
int XMKTYT3x1x15025ALCU = 44;
int XMKTYT3x1x24035ALCU = 60;
int *Verzeichnis; /*Zeiger*/do
{
printf("\tZUR AUSWAHL STEHENDE KABELTYPEN\n\n");
printf("\t- 1 - XMKT-Y 3x1x50/16 CU\n");
printf("\t- 2 - XMKT-Y-T 3x1x50/16 CU\n");
printf("\t- 3 - XMKT-Y 3x1x95/25 CU\n");
printf("\t- 4 - XMKT-Y-T 3x1x95/25 CU\n");
printf("\t- 5 - XMKT-Y 3x1x150/35 CU\n");
printf("\t- 6 - XMKT-Y-T 3x1x150/35 CU\n");
printf("\t- 7 - XMKT-Y 3x1x240/35 CU\n");
printf("\t- 8 - XMKT-Y-T 3x1x240/35 CU\n");
printf("\t- 9 - XMKT-Y-T 3x1x95/16 ALCU\n");
printf("\t-10 - XMKT-Y-T 3x1x150/25 ALCU\n");
printf("\t-11 - XMKT-Y-T 3x1x240/25 ALCU\n");
do
{
printf("\n\tWaehlen Sie Ihren gewuenschten Kabeltyp aus: ");
scanf("%d",&Kabelwahl);
}
while(Kabelwahl <1 || Kabelwahl >11);
printf("\n\tIhr gewuenschtes Kabel wiegt:",Kabelwahl);switch(Kabelwahl)
{
case 1: Verzeichnis =& XMKTY3x1x5016CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 2: Verzeichnis =& XMKTYT3x1x5016CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 3: Verzeichnis =& XMKTY3x1x9525CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 4: Verzeichnis =& XMKTYT3x1x9525CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 5: Verzeichnis =& XMKTY3x1x15035CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 6: Verzeichnis =& XMKTYT3x1x15035CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 7: Verzeichnis =& XMKTY3x1x24035CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 8: Verzeichnis =& XMKTYT3x1x24035CU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 9: Verzeichnis =& XMKTYT3x1x9516ALCU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 10: Verzeichnis =& XMKTYT3x1x15025ALCU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;
case 11: Verzeichnis =& XMKTYT3x1x24035ALCU;
printf(" %d",*Verzeichnis);
printf(" Newton pro Meter");
break;default: printf(" ! Achtung ! Eingabefehler,\n beachten Sie die Ziffern\n");
break;}
} while(Kabelwahl<1);kg = kl * *Verzeichnis/1000;
printf("\n\n\tDas Gesamtgewicht Ihres Kabels betraegt: %.1f Kilonewton\n\n",kg);printf("\n\n\tBERECHNUNG DER HANGABTRIEBSKRAFT");
printf("\n\t--------------------------------\n\n");
Fh = vd/kl *kg; /*sin*/
printf("\n\tDas Kabel hat eine Hangabtriebskraft von: %.1f Kilonewton\n",Fh);Fn = hd/kl *kg; /*cos,Normalkraft*/
printf("\n\n\tBERECHNUNG DER REIBUNGSKRAFT");
printf("\n\t--------------------------\n\n");
printf("\n\tDer Reibungskoeffizient ist zwischen 0.01 und 0.1 zu waehlen\n");
do
{
printf("\n\tGeben Sie den Reibungskoeffizienten ein:");
scanf("%f",&rk);
}
while(rk <0.009 || rk >0.11);
Fr = Fn*rk;
printf("\n\tDie Reibungskraft betraegt: %.1f Kilonewton\n\n",Fr);printf("\n\n\tBERECHNUNG DER RESULTIERENDEN RUECKHALTEKRAFT");
printf("\n\t-----------------------------------------------\n\n");
Frr = Fh-Fr;
printf("\tDie Resultierende Rueckhaltekraft betraegt: %.2f Kilonewton\n\n",Frr);
if(Frr<0)
printf("\n\tSie muessen kein Rueckhaltung montieren");printf("\n\tWelchen Bridentyp moechten Sie einsetzen");
printf("\n\t----------------------------------------\n\n");
int Bridenwahl;
int ALU500 = 5000;
int ALU400 = 4000;
int *Bride;do
{
printf("\tZUR AUSWAHL STEHENDE BRIDENTYPEN\n\n");
printf("\t- 1 - ALU 500\n");
printf("\t- 2 - ALU 400\n\n");
do
{
printf("\tWaehlen Sie Ihren gewuenschten Bridentyp aus: ");
scanf("%d",&Bridenwahl);
}
while
(Bridenwahl <1 || Bridenwahl >2);
printf("\n");switch(Bridenwahl)
{
case 1: Bride =& ALU500;
(" %d",*Bride);
break;
case 2: Bride =& ALU400;
(" %d",*Bride);
break;
default: printf(" ! Achtung ! Eingabefehler,\n beachten Sie die Ziffern\n");
break;
}
} while(Bridenwahl<1);bb =1000 * (Frr / *Bride)*100;
printf("\tIhre Rueckhaltebride wird in diesem Trasseeabschnitt\n\tmit %0.2f Prozent ihrer Haltekraft belastet\n\n",bb);if(((ALU400)&&(bb>=100)&&(bb<= 120)) || ((ALU500)&&(bb<=80)));
{do
{
printf("\tSie sind knapp ausserhalb der Toleranzgrenze\n\n");
printf("\tWaehlen Sie den anderen Bridentyp aus: ");
scanf("%d",&Bridenwahl);
}
while
(Bridenwahl <1 || Bridenwahl >2);
printf("\n");switch(Bridenwahl)
{
case 1: Bride =& ALU500;
(" %d",*Bride);
break;
case 2: Bride =& ALU400;
(" %d",*Bride);
break;
default: printf(" ! Achtung ! Eingabefehler,\n beachten Sie die Ziffern\n");
break;
}
while(Bridenwahl<1);bb =1000 * (Frr / *Bride)*100;
printf("\tIhre neue Rueckhaltebride wird in diesem Trasseeabschnitt\n\tmit %0.2f Prozent ihrer Haltekraft belastet",bb);
}
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
printf("\n");
}
-
C != C#. Codetags. Problembeschreibung.
-
Dieser Thread wurde von Moderator/in Dravere aus dem Forum C# und .NET in das Forum ANSI C verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
(" %d",*Bride);
Sieht suspekt aus. Da fehlt wohl was, wenn auch kein Syntaxfehler.
Hier hast du mal einen vernünftig formatierten Quelltext für DEINE Fehleranalyse, denn wir können deinen Fehler nicht analysieren, da du ihn nicht benannt hast.
http://codepad.org/2NWR1995
-
Als Balkendiagramm ? In der Konsole
Du könntest einfach
int Kraft1=10,Kraft2=15; printf("\n"); for(int i=0; i<Kraft1; i++) { printf("*"); } printf("\n"); for(int i=0; i<Kraft2; i++) { printf("*"); } printf("\n");
so was nehmen :p
Dark