Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

(Dúvida) error C2447: missing function header (old-style formal list?)

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C / C++ (Dúvida) error C2447: missing function header (old-style formal list?)

    Olá.
    Estou começando a estudar ANSI C agora e preciso de ajuda quanto a esse erro:
    error C2447: missing function header (old-style formal list?)

    Estou postando o source abaixo:

    /*Este programa calcula equações do 2º Grau (ax²+bx+c = 0),
    sendo que o usuário informa o valor das variáveis a, b, e c.*/
    #include <stdio.h>
    #include <math.h>
    #include <iostream.h>
    void main();{
    float a, b, c, delta, x, x1, x2;
    printf("\nDigite o valor de A: ");
    scanf("%f", &a);
    //Caso A seja 0, volta a pedir para entrar com o valor.
    while a = 0 {
    printf("O valor de A nao pode ser 0");
    }
    printf("\nDigite o valor de B: ");
    scanf("%f", &b);
    printf("%f", &c);
    //Valor de Delta...
    delta = (b * b) - (4 * a * c);
    printf("\nO valor de Delta eh: %f", delta);
    //Se Delta for igual a 0...
    if delta = 0 {
    x = (b / 2) * a;
    printf("\nDuas raizes iguais, x1 e x2 = %f", x);
    }
    else {
    if delta > 0 {
    x1 = (-b + sqrt(delta)) / 2 * a;
    x2 = (-b - sqrt(delta)) / 2 * a;
    printf("\nDuas raizes diferentes:");
    printf("\n\nx1 = %f", x1);
    printf("\nx2 = %f", x2);
    }
    else {
    printf("Sem raizes reais!");
    }
    }
    }


    Se alguém puder me ajudar ficarei muito grato.

    Essa é minha primeira postagem no forum, se estiver no lugar errado, peço desculpas aos admins.

    Obrigado.

  • Font Size
    #2
    O erro está em void main();{
    remova o ponto e virgula depois dos parenteses.

    while a = 0

    Coloque paresentes no (a = 0 ), e verifique se você esta mesmo fazendo isso ( atribuindo 0 à variavavel a ), caso queira comaprar tem que ser dois iguais.

    A mesma coisa acontece em

    if delta = 0 {
    e
    if delta > 0 {


    e por ultimo porque está utilizando c++ , se todo o programa esta em c?

    Não há necessidades de iostream.h se já esta utilizando o stdio.h do C.

    Comment


    • Font Size
      #3
      O erro está em void main();{
      remova o ponto e virgula depois dos parenteses.

      while a = 0

      Coloque paresentes no (a = 0 ), e verifique se você esta mesmo fazendo isso ( atribuindo 0 à variavavel a ), caso queira comaprar tem que ser dois iguais.

      A mesma coisa acontece em

      if delta = 0 {
      e
      if delta > 0 {


      e por ultimo porque está utilizando c++ , se todo o programa esta em c?

      Não há necessidades de iostream.h se já esta utilizando o stdio.h do C.

      Comment


      • Font Size
        #4
        Postado Originalmente por 5Y5T3M Ver Post
        O erro está em void main();{
        remova o ponto e virgula depois dos parenteses.

        while a = 0

        Coloque paresentes no (a = 0 ), e verifique se você esta mesmo fazendo isso ( atribuindo 0 à variavavel a ), caso queira comaprar tem que ser dois iguais.

        A mesma coisa acontece em

        if delta = 0 {
        e
        if delta > 0 {


        e por ultimo porque está utilizando c++ , se todo o programa esta em c?

        Não há necessidades de iostream.h se já esta utilizando o stdio.h do C.
        Faltou falar do
        Código:
        printf("%f", &c);
        acho que ele queria dizer
        Código:
        printf("Valor do C: ");
        scanf("%f", &c);
        “Finalmente encontrei um inimigo digno de mim e uma jornada em que preciso desenvolver toda a minha coragem, pois temos de combater homens bravos e monstruosas feras.”, Alexandre, o Grande.

        Comment


        • Font Size
          #5
          Muito obrigado pelas dicas.
          Estou apenas começando a estudar C...

          Comment

          X
          Working...
          X