Guest User

Untitled

a guest
Apr 27th, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.01 KB | None | 0 0
  1. #include<stdio.h>
  2. #include<string.h>
  3. #include<math.h>
  4.  
  5. float verifyGreaterToSmaller(int n1, int n2, int n3) {
  6.  
  7. int maior = 0, meio = 0, menor = 0;
  8. float media = 0, raizQuadrada = 0;
  9.  
  10. if((n1 > n2) && (n1 > n3)) {
  11.  
  12. if(n2 > n3) {
  13. maior = n1;
  14. meio = n2;
  15. menor = n3;
  16.  
  17. } else {
  18. maior = n1;
  19. meio = n3;
  20. menor = n2;
  21. }
  22.  
  23. } else if((n2 > n1) && (n2 > n3)) {
  24.  
  25. if(n1 > n3) {
  26. maior = n2;
  27. meio = n1;
  28. menor = n3;
  29.  
  30. } else {
  31. maior = n2;
  32. meio = n3;
  33. menor = n1;
  34. }
  35. } else if((n3 > n1) && (n3 > n2)) {
  36.  
  37. if(n1 > n2) {
  38. maior = n3;
  39. meio = n1;
  40. menor = n2;
  41.  
  42. } else {
  43. maior = n3;
  44. meio = n2;
  45. menor = n1;
  46. }
  47. }
  48.  
  49. media = (n1 + n2 + n3) / 3;
  50. raizQuadrada = sqrt(media);
  51.  
  52. printf("Maior: %d \nMeio: %d \nMenor: %d \n", maior, meio, menor);
  53.  
  54. return raizQuadrada;
  55.  
  56. }
  57.  
  58. int main() {
  59.  
  60. int n1, n2, n3;
  61. float raizQuadrada = 0;
  62. char resposta[4];
  63.  
  64. label1:
  65. printf("Informe 3 (tres) numeros inteiros abaixo. \nDigite o 1o numero: ");
  66. scanf("%d", &n1);
  67.  
  68. if(n1 <= 0) {
  69. printf("Nao sao aceitos zero nem numeros negativos! Tente novamente! \n");
  70. goto label1;
  71.  
  72. } else if((n1 % 3 != 0) && (n1 % 6 != 0)) {
  73. printf("O 1o numero deve ser multiplo de 3 && 6 ao mesmo tempo! Tente novamente! \n");
  74. goto label1;
  75. }
  76.  
  77. label2:
  78. printf("Digite o 2o numero: ");
  79. scanf("%d", &n2);
  80.  
  81. if(n2 <= 0) {
  82. printf("Nao sao aceitos zero nem numeros negativos! \n");
  83. goto label2;
  84.  
  85. } else if(n2 % 2 != 0) {
  86. printf("O 2o numero deve ser par && multiplo de 2! \n");
  87. goto label2;
  88.  
  89. } else if(n2 <= n1) {
  90. printf("Os numeros nao podem ser iguais && o 2o deve ser maior que o 1o! \n");
  91. goto label2;
  92. }
  93.  
  94. label3:
  95. printf("Digite o 3o numero: ");
  96. scanf("%d", &n3);
  97.  
  98. if(n3 <= 0) {
  99. printf("Nao sao aceitos zero nem numeros negativos! Tente novamente! \n");
  100. goto label3;
  101.  
  102. } else if((n3 % 3 != 0) && (n3 < 21 || n3 > 145)) {
  103. printf("O 3o numero deve ser impar && estar dentro do intervalo de 21 a 145! Tente novamente! \n");
  104. goto label3;
  105.  
  106. } else if(n3 <= n2 || n3 <= n1) {
  107. printf("Os numeros nao podem ser iguais && o 3o numero deve ser maior que o 2o && o 1o! \n");
  108. goto label3;
  109. }
  110.  
  111. raizQuadrada = verifyGreaterToSmaller(n1, n2, n3);
  112.  
  113. printf("Raiz quadrada = %.2f \n", raizQuadrada);
  114.  
  115. printf("Deseja encerrar o programa: SIM / NAO \n");
  116. fflush(stdin);
  117. gets(resposta);
  118.  
  119. if(strcmp(resposta, "SIM") == 0) {
  120. printf("FIM DO PROGRAMA! \n");
  121.  
  122. } else if(strcmp(resposta, "NAO") == 0) {
  123. goto label1;
  124. }
  125.  
  126. return 0;
  127. }
Add Comment
Please, Sign In to add comment