GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Ontem à(s) 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16


Dúvida em uma variável.

4 participantes

Ir para baixo

Dúvida em uma variável. Empty Dúvida em uma variável.

Mensagem por Clarux Dom 25 Mar 2012, 18:26

Olá pessoal do gmbr.
Já estive cerca de 1 hora e meia neste código e não consigo resolver o problema.
O código serve para calcular o IMC (índice de massa corporal).O IMC calcula-se assim: massa / (altura*altura), (massa a dividir pela altura ao quadrado.)
Este é o código que fiz:
Código:
massa=get_string("Introduza a massa (quilogramas)","");
altura=get_string("Introduza a altura (metros)","");
alturaa= altura*altura ; // <--- aqui está  o erro
total= massa / alturaa ;


if (total < 18.5) {show_message("IMC= "+ string(total)+"(Baixo)")}
if (total > 18.6) or (total < 24.9) {show_message("IMC= "+ string(total)+"(Normal)")}
if (total > 25) or (total < 29.9) {show_message ("IMC= "+string(total)+"(Pré-Obeso)")}
if (total > 30){show_message("IMC= "+string(total)+"(Obeso)")}

Mas não está dando certo, o erro declarado pelo game maker é o seguinte :
___________________________________________
ERROR in
action number 1
of Mouse Event for Left Button
for object obj_imc:

Error in code at line 7:
alturaa= altura*altura ; // <--- aqui está o erro
^
at position 18: Wrong type of arguments to *.


Não sei porque está a dar este erro, já fiz uma coisa deste género em outro código e deu certo... Agradeço resposta Happy
Clarux
Clarux

Data de inscrição : 09/08/2011
Reputação : 0
Número de Mensagens : 58
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por Lucas 5293 Dom 25 Mar 2012, 19:05

Aqui agora está funcionando (eu testei):
Código:
massa=get_integer("Introduza a massa (quilogramas)","");
altura=get_integer("Introduza a altura (metros)","");
total= altura * altura / massa;


if (total < 18.5) {show_message("IMC= "+ string(total)+"(Baixo)")}
else
if (total > 18.6) or (total < 24.9) {show_message("IMC= "+ string(total)+"(Normal)")}
else
if (total > 25) or (total < 29.9) {show_message ("IMC= "+string(total)+"(Pré-Obeso)")}
else
if (total > 30){show_message("IMC= "+string(total)+"(Obeso)")}

Eu corrigi dois erros:
o primeiro troquei get_string por get_integer (get_integer faz o usuário digitar um numero e não uma string; o erro era que você tentava multiplicar uma string Happy)

e segundo que tinha mais de um resultado final então coloquei um else nos if's

Além de simplificar o código

PS: Meu imc deu normal feliz3

FLWS
Lucas 5293
Lucas 5293

Games Ranking : Nota C

Notas recebidas : C-D-B-B-B-C-C-C
Data de inscrição : 10/12/2010
Reputação : 18
Número de Mensagens : 695
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://dopxgames.blogspot.com

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por Clarux Dom 25 Mar 2012, 19:16

Lucas 5293, agradeço sua resposta, mas o erro continua.
Tenho que usar "get_string"e não"get_integer" porque "get_integer" não deixa escrever "." e eu preciso de pontos por causa de ser em metros.
"total= massa / altura * 2;" , neste caso isto está incorreto porque no IMC faz-se massa a dividir pela altura elevado a 2 e não vezes 2 xD.

Obrigado mesmo assim, mas isso escapou lol.
Se alguem mais souber a resposta... Happy
Clarux
Clarux

Data de inscrição : 09/08/2011
Reputação : 0
Número de Mensagens : 58
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por gustavo ferreira Dom 25 Mar 2012, 19:38

eu tranformei as strings em valores reais modificando um pouco seus codigos e deu certo aqui
Código:
massa=real(get_string("Introduza a massa (quilogramas)",""))
altura=real(get_string("Introduza a altura (metros)",""))
alturaa= altura*altura ; // <--- aqui está  o erro
total= massa / alturaa ;

if (total < 18.5) {show_message("IMC= "+ string(total)+"(Baixo)")}
if (total > 18.6) or (total < 24.9) {show_message("IMC= "+ string(total)+"(Normal)")}
if (total > 25) or (total < 29.9) {show_message ("IMC= "+string(total)+"(Pré-Obeso)")}
if (total > 30){show_message("IMC= "+string(total)+"(Obeso)")}

agora eu acredito que de certo espero ter ajudado flow XD!!
gustavo ferreira
gustavo ferreira

Games Ranking : Nota C

Notas recebidas : C+C+C+C
Data de inscrição : 03/12/2010
Reputação : 28
Número de Mensagens : 470
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por Clarux Dom 25 Mar 2012, 19:49

MUITO OBRIGADO,gustavo ferreira essa do "real" aprendi hoje, realmente ainda tenho que aprender muito.Mais uma vez obrigado a todos.Excelente forum, nunca me deixou mal. Razz

Moderadores, podem trancar, RESOLVIDO
Clarux
Clarux

Data de inscrição : 09/08/2011
Reputação : 0
Número de Mensagens : 58
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por Zero. Dom 25 Mar 2012, 21:53

Clarux, oque aconteceu foi que vc tava tentando multiplicar uma coisa que não era numero ( o "") entaum ai ele encontra o erro, ja o real so pega os reais entendeu ne Happy . xD
Zero.
Zero.

Data de inscrição : 19/08/2010
Reputação : 47
Número de Mensagens : 1300
Prêmios : Dúvida em uma variável. Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida em uma variável. Empty Re: Dúvida em uma variável.

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo


 
Permissões neste sub-fórum
Não podes responder a tópicos