Jump to content
Fórum Script Brasil
  • 0

Ajuda com conversor de Fahrenheit para Celsius


Wesley Vinicius

Question

Galera, boa tarde. Venho aqui, de novo, pedir ajuda com um problema que eu to tendo ao criar um programa que converte de Fahrenheit pra Celsius.

Eu já tentei de tudo que está ao meu alcance pra consertar, mas não consigo. Eis o código:

#include <stdlib.h>
#include <stdio.h>

int main()
{
      float a, b, c;
      printf("Digite o primeiro valor.\n");
      scanf("%6.2f", a);
      printf("Digite o limite.\n");
      scanf("%6.2f", c);
      b = -1;
      while (a <= c)
      {
          printf("%6.2f graus F = %6.2f graus C\n", a, (a - 32.0) * 5.0 / 9.0);
          b = a;
          a = a + 10;
      }
      system("pause");
      return 0;
}
O problema é: quando eu rodo o programa, ele me pede pra inserir o valor inicial. Depois que eu insiro esse valor, aparece o seguinte:
Digite o limite.
  0.00 graus F = -17.78 graus C
Pressione qualquer tecla para continuar. . .

Isso aparece independente do valor dado, e, como é possível notar, não me dá a oportunidade de digitar o limite. Alguém me diz onde foi que errei?

Link to comment
Share on other sites

4 answers to this question

Recommended Posts

  • 0

Eu consegui fazer o programa rodar sem problemas usando, no lugar de float, o int, o que torna os resultados aproximados. O código ficou assim:

#include <stdlib.h>
#include <stdio.h>

int main()
{
    int a, b, c;
      printf("Digite o primeiro valor.\n");
      scanf("%d", &a);
      printf("Digite o limite.\n");
      scanf("%d", &b);
      printf("Digite a taxa de repeticao.\n");
      scanf("%d", &c);
      while (a <= b)
      {
          printf("%d graus F = %d graus C\n", a, (a - 32) * 5 / 9);
          a = a + c\;
      }
      system("pause");
      return 0;
}

Mas eu continuo querendo usar o float, para resultados precisos. Como faço?

Edited by Wesley Vinicius
Link to comment
Share on other sites

  • 0

Não sei porque você não conseguiu, aqui compilou sem problemas...

#include <stdlib.h>
#include <stdio.h>

int main(){
    float a, b, c;

    printf("Digite o primeiro valor.\n");
    scanf("%f", &a);
    printf("Digite o limite.\n");
    scanf("%f", &b);
    printf("Digite a taxa de repeticao.\n");
    scanf("%f", &c);

    while (a <= b){
        printf("%.2f graus F = %.2f graus C\n", a, (a - 32) * 5 / 9);
        a += c;
    }

    system("pause");
    return(0);
}

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...