int main() { char ch; float voltage , current , resistance , effect , result; clrscr();
printf("Ohms lov regner af ZazzY.\n"); printf(" "); printf("V‘r venlig at trykke p† 1,2,3 eller 4:.\n"); "); printf("1: Regner sp‘nding/volt ud.\n"); printf("2: Regner str›m/ampere ud.\n"); printf("3: Regner modstand/ohm ud.\n"); printf("4: Regner effekt/watt ud.\n"); printf("Alle andre knapper vil lukke programmet.\n");
scanf("%c",&ch); switch(ch) { case '1' : printf("V‘r venlig at intaste str›mmen i ampere.\n"); scanf("%f",¤t); printf("V‘r derefter venlig at indtaste modstanden i ohm.\n"); scanf("%f",&resistance); result = current * resistance; printf("Resultat er %0.2f volt.\n",result); break; case '2' : printf("V‘r venlig at indtaste sp‘‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste modtanden i ohm.\n"); scanf("%f",&resistance); result = voltage / resistance; printf("Resultatet er %0.2f ampere.\n",result); break; case '3' : printf("V‘r venlig at indtaste sp‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste str›mmen i ampere.\n"); scanf("%f",¤t); result = voltage / current; printf("Resultatet er %0.2f ohm.\n",result); break; case '4' : printf("V‘r venlig at indtaste sp‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste str›mmen i ampere.\n"); scanf("%f",¤t); result = voltage * current; printf("Resultatet er %0.2f watt.\n",result); break; default : exit(0); break;
Det er fordi at dit script efter at du har fået printet resultatet hopper scriptet videre. Det er så break, som betyder gå ud af switchen og dermed ud af programmet :-)
int main() { char ch,run; float voltage , current , resistance , effect , result;
while(run != 1) { clrscr();
printf("Ohms lov regner af ZazzY.\n"); printf(" "); printf("V‘r venlig at trykke p† 1,2,3 eller 4:.\n"); "); printf("1: Regner sp‘nding/volt ud.\n"); printf("2: Regner str›m/ampere ud.\n"); printf("3: Regner modstand/ohm ud.\n"); printf("4: Regner effekt/watt ud.\n"); printf("Alle andre knapper vil lukke programmet.\n");
scanf("%c",&ch); switch(ch) { case '1' : printf("V‘r venlig at intaste str›mmen i ampere.\n"); scanf("%f",¤t); printf("V‘r derefter venlig at indtaste modstanden i ohm.\n"); scanf("%f",&resistance); result = current * resistance; printf("Resultat er %0.2f volt.\n",result); break; case '2' : printf("V‘r venlig at indtaste sp‘‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste modtanden i ohm.\n"); scanf("%f",&resistance); result = voltage / resistance; printf("Resultatet er %0.2f ampere.\n",result); break; case '3' : printf("V‘r venlig at indtaste sp‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste str›mmen i ampere.\n"); scanf("%f",¤t); result = voltage / current; printf("Resultatet er %0.2f ohm.\n",result); break; case '4' : printf("V‘r venlig at indtaste sp‘ndingen i volt.\n"); scanf("%f",&voltage); printf("V‘r derefter venlig at indtaste str›mmen i ampere.\n"); scanf("%f",¤t); result = voltage * current; printf("Resultatet er %0.2f watt.\n",result); break; default : exit(0); break; } getch(); }
Bertel>> Ja selvfølgelig skal char ch,run; være char ch,run=0;
Men din løsning syntes jeg ikke om, godt klar over den vil køre igen og igen. men du kan ikke afslutte den uden en break; - det er ikke rigtigt god programmerings måde.
Når man laver menuer, bruger man gerne denne løsning:
do { }while(svar != QUIT);
Altså laver du så din menu inden mellem {} og har et menupunkt som kan sætte svar = QUIT og dermed slutter dit program...
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.