Advertisement
Guest User

Untitled

a guest
Oct 15th, 2019
145
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. /**
  2. * Enkel kalkulator
  3. *
  4. * @file Oblig2.c
  5. * @author Ola Fagerhaug, NTNU
  6. */
  7.  
  8. #include <stdio.h> // printf, scanf
  9. #include <ctype.h> // toupper
  10. #define STRLEN 50 // max antall siffer til bruk i kalkulator
  11.  
  12.  
  13. int main(){
  14. float tall[STRLEN], input,
  15. akkumulator = 0.0;
  16. char tegn[STRLEN], operator;
  17. int i = 0;
  18.  
  19. printf("Enkel Kalkulator\n-------------------\n");
  20. printf("= %f", akkumulator);
  21.  
  22. do{
  23.  
  24. i += 1;
  25. printf("\n: ");
  26. scanf(" %c", &operator);
  27. char check = toupper(operator);
  28. scanf(" %f", &input);
  29.  
  30. switch (check){
  31. case '*':
  32. akkumulator *= input;
  33. tegn[i] = '*';
  34. tall[i] = input;
  35. printf("\n= %f", akkumulator);
  36. break;
  37. case '+':
  38. akkumulator += input;
  39. tegn[i] = '+';
  40. tall[i] = input;
  41. printf("\n= %f", akkumulator);
  42. break;
  43. case '-':
  44. akkumulator -= input;
  45. tegn[i] = '-';
  46. tall[i] = input;
  47. printf("\n= %f", akkumulator);
  48. break;
  49. case '/':
  50. akkumulator /= input;
  51. tegn[i] = '/';
  52. tall[i] = input;
  53. printf("\n= %f", akkumulator);
  54. break;
  55. case 'C':
  56. akkumulator = 0.0;
  57. tegn[i] = 'C';
  58. tall[i] = input;
  59. printf("\n= %f", akkumulator);
  60. break;
  61. case 'T':
  62. akkumulator = input;
  63. tegn[i] = 'T';
  64. tall[i] = input;
  65. printf("\n= %f", akkumulator);
  66. break;
  67. default:
  68. printf("\nPrøv å bruk en operasjon (*, /, + eller -) etterfulgt av et tall.");
  69. continue;
  70. }
  71.  
  72. if(operator == '/' && input == 0)
  73. printf("\nDeling på null er tull");
  74.  
  75. }while(operator != 'S');
  76.  
  77. if(operator == 'S'){
  78. printf("\nOperasjonene og tallene involvert: \n");
  79. for(int y = 1; y<i; y++){
  80. printf("\n%c %f", tegn[y], tall[y]);
  81. }
  82. }
  83.  
  84.  
  85. return 0;
  86. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement