1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

[dúvida] Programação em C

Discussão em 'Programação' iniciada por Razorlight, 4 de Janeiro de 2013. (Respostas: 39; Visualizações: 2115)

  1. Razorlight

    Razorlight Power Member

    Boas, estou a fazer um trabalho em C para final de semestre e estou com umas dúvidas numa parte do código porque ao compilar dá um erro e não sei porque não correr.

    A função em questão é na void main:

    Código:
    void main(){
    	int RV=1;
    	pessoa DADOS[C+1];
    	int n = 0;
    	
    
    
    	while(RV==1)
    	{
    		RV = menu(DADOS, &n);
    	}
    }
    e dá este erro:
    Código:
    'RV' : undeclared identifier

    Não percebo porquê, se RV está declarado...

    A quem puder ajudar, os meus cumprimentos.
     
  2. Meados

    Meados Power Member

    Onde está declarada a variável C? É global?

    O método main deveria devolver int em vez de void.
     
  3. Mach4_PT

    Mach4_PT Power Member

    Ve se não é um erro de sintaxe na estrutura "pessoa"
     
  4. Razorlight

    Razorlight Power Member

    O C pode ser um número qualquer.
    O inicio é isto:
    Código:
    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    
    
    
    
    #define MAX 100
    #define C 200
    
    
    
    
    typedef struct Data {
        int ano;
        int mes;
        int dia;
    } Data;
    
    
    typedef struct pessoa { 
        char nome_completo [MAX];
        long int BI;
        Data data_nasc;
        short int idade;
        float LDL, HDL, colestrol_total, trigli;
        char sexo;
    } pessoa;
    
    
    
    (...)
    
    
    void main()
    {   
    int RV=1;   
    pessoa DADOS[C+1];    
    int n = 0;        
    while(RV==1)    
       {        
         RV = menu(DADOS, &n);    
       }
    }
    
    
    

    Não me parece que seja...

    De qualquer das formas mudei e fiz assim:

    Código:
    int main()
    {
    	int n = 0;
    	pessoa DADOS[1500];
    	int RV=1;
    	while(RV==1)
    	{
    		RV = menu(DADOS, &n);
    	}
    	return RV;
    }
    
    E dá erro na mesma.
     
    Última edição: 5 de Janeiro de 2013
  5. s0ldier

    s0ldier Power Member

    Isso não diz em que linha dá o erro? Pode não ser o RV que estejas a pensar, já agora o "RV = menu(DADOS, &n);" deverá por o que no RV?
     
  6. Meados

    Meados Power Member

    Estranho copiei o código que colocaste e compila sem problemas no Dev C++/mingw (exceptuando a função menu, que não conheço e substituí por uma constante). Será que a função menu está bem construída?
     
  7. Razorlight

    Razorlight Power Member

    O erro dá dentro da main, em todos os RV.
    O RV tem um valor definido (1), e ao retornar o valor 1, vai buscar uma opção ao menu.

    Eu vou tentar dar mais uma vista de olhos, porque já tenho muitas linhas de código e pode ser que esteja lá alguma coisa escondida
     
  8. s0ldier

    s0ldier Power Member

    Como o Meados disse, deverá ser a função menu mal construída, pois o resto faz sentido.
     
  9. Razorlight

    Razorlight Power Member

    Já está a correr, tinha uma letra a mais numa função.
    Mas vou aproveitar o tópico caso tenha mais dúvidas.

    Obrigada aos que ajudaram!
     
  10. Alguem me pode ajudar neste programa em linguagem C sff.

    1. Dado um array com as temperaturas médias de cada dia do mês de Agosto (pré-atribuídas) elabore um programa que:

    a. Indique em que dia esteve a temperatura mais alta e respectivo valor
    b. Indique em que dia esteve a temperatura mais baixa e respectivo valor
    c. Indique a média do mês de Agosto
    d. Apresente as temperaturas, dia-a-dia, com o formato do exemplo seguinte

    Dia 1 – 33.3º - máxima
    Dia 2 – 30.1º - acima da média
    Dia 3 – 27.7º - abaixo da média
    Dia 4 – 25.5º - mínima
    Dia 5 – 29.9º - acima da média


    e. A informação deve ser guardada em ficheiro chamado agosto.txt.

    Agradecia ajuda sff tou em Engenharia das Energias Renováveis e não percebo grande coisa disto xD
     
  11. dropko

    dropko Power Member

    apresenta o código da tua primeira tentativa sff! :)
     
  12. Vou por aqui o meu código em java gostava de saber como passar para linguagem C ;)

    "

    public class Exercicio4 {


    /**
    * @param args
    */
    public static void main(String[] args) {


    double temperaturas [] = {19.5,20.5,16,17,18,37,42,43,42.5,15,27,26,25.5,41,15.5,28,29.5,14.5,42,
    40.5,40.5,41,42,43,52,35,37,36.5,31.5,39,38.6};
    double max = temperaturas [0], min = temperaturas [0], soma = 0;




    for(int i = 0; i < temperaturas.length; i++){


    if (max < temperaturas){
    max = temperaturas;


    }
    if (min > temperaturas){
    min = temperaturas;
    }


    soma+=temperaturas;


    }


    double media= soma/temperaturas.length;


    System.out.println("O dia mais quente de Agosto foi de " + max + "Graus");
    System.out.println("O dia menos quente de Agosto foi de " + min + "Graus");
    System.out.println("A media da temperatura do mes de Agosto foi de " + media + "Graus" );


    for (int i =0; i < temperaturas.length; i++){


    System.out.print("Dia" + (i+1) + " - " + temperaturas + " - ");


    if (temperaturas == max){
    System.out.println("Maxima");
    }
    else if (temperaturas == min){
    System.out.println("Minimo");
    }
    else if (temperaturas > media){


    System.out.println("acima da media");
    }
    else if (temperaturas < media){


    System.out.println("abaixo da media");


    }
    }
    }


    }

    Agradecia a ajuda :p
     
  13. dropko

    dropko Power Member



    Não sei se era este o output. Assim grosseiramente convertido, será isto.
     
  14. dropko

    dropko Power Member

    agora é que reparei que era para por o valor absoluto e nao o delta sobre a média na representacao final. mas isso tambem se altera rapidamente...
     
  15. Obrigadão pelo ajuda, se puderes então alterar isso agradecia :D é que não percebo nada disto :S
     
  16. Mach4_PT

    Mach4_PT Power Member

    Então deixa ver se percebo, não sabes mudar 1 coisa simples em C mas sabes programar tudo em Java?

    Se eu fosse o dropko começava era a cobrar por te estar a fazer o problema.
     
  17. eu não sei simplesmente tenho amigos meus em engenharia informatica que me ajudaram em java mas eles não percebem nada de C desculpa la eu vir aqui pedir ajuda -.-. Simplesmente o dropko foi bue porreiro por me ter ajudado :D
     
  18. dropko

    dropko Power Member

    aqui mesmo sem conhecer a linguagem se conseguia mudar... :S faz lá um esforçozito!
     
  19. okok obrigado pela ajuda aserio abraço. :D cumpz
     
  20. Razorlight

    Razorlight Power Member

    Surgiu-me uma dúvida estranha, é possível criar tabelas através de vectores?
     

Partilhar esta Página