Compartilhe
avatar
Scripter CLEO - Intermediário
Scripter CLEO - Intermediário
Título : Carinha que mora logo ali
Mensagens : 538
Reputação : 108
Desde : 07/03/2017
Localização : BH - MG
Ver perfil do usuário

Re: 10. Exercício #1

em Qui 09 Mar 2017, 13:07
@Fabio escreveu:
Esse tipo de coisa só é possível em linguagens de tipagem fraca, em uma linguagem de tipagem forte você precisa converter o inteiro para string e depois concatenar com a outra string.

Pode usar SCAN_STRING para converter string para número.
E STRING_FORMAT de número para string.

Tem "infinitas" formas de usar esse opcode, por usar inclusive para concatenar as strings. Formatos aceitos: http://www.cplusplus.com/reference/cstdio/scanf/ http://www.cplusplus.com/reference/cstdio/printf/

Valeu 2x pela rapidez
isto vai ajudar bastante por exemplo para chamar uma textura, já que descobri que textura não pode ter um nome com valor numérico apenas. (BG)
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18877
Reputação : 344
Desde : 04/05/2012
Idade : 20
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com

Re: 10. Exercício #1

em Qui 09 Mar 2017, 13:16
@Um Geek escreveu:
@Fabio escreveu:
Esse tipo de coisa só é possível em linguagens de tipagem fraca, em uma linguagem de tipagem forte você precisa converter o inteiro para string e depois concatenar com a outra string.

Pode usar SCAN_STRING para converter string para número.
E STRING_FORMAT de número para string.

Tem "infinitas" formas de usar esse opcode, por usar inclusive para concatenar as strings. Formatos aceitos: http://www.cplusplus.com/reference/cstdio/scanf/ http://www.cplusplus.com/reference/cstdio/printf/

Valeu 2x pela rapidez
isto vai ajudar bastante por exemplo para chamar uma textura, já que descobri que textura não pode ter um nome com valor numérico apenas.  (BG)

De nada. :)

https://ideone.com/Y5IDiq (Observe a parte stdout abaixo da caixa com o código)

Em gta3script seria mais ou menos assim:
Código:

STRING_FORMAT varResultado "%s%i" texto numero

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 1
Reputação : 0
Desde : 01/04/2017
Ver perfil do usuário

Olá Junior Djjr , gostaria de saber se meu código está aceitável ,desde já muito obg.

em Sab 01 Abr 2017, 02:51
Spoiler:
Código:

SCRIPT_START
{
NOP
//Faça com que 5 variáveis iniciadas com valores aleatórios fiquem com o valor "12".

GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5




IF var1 > 0
OR var1 < 100
    var1 = 12
ENDIF

IF var2 > 0
OR var2 < 100
    var2 = 12
ENDIF
IF var3 > 0
OR var3 < 100
    var3 = 12
ENDIF
IF var4 > 0
OR var4 < 100
    var4 = 12
ENDIF
IF var5 > 0
OR var5 < 100
    var5 = 12
ENDIF

PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d." 10000 var1 var2 var3 var4 var5

}
SCRIPT_END

Eae pessoal blz? queria saber se ficou certo ou ser burlei alguma regra , mto obg a todos ...
avatar
Mensagens Nível 4
Mensagens Nível 4
Título : Veryzon, agora em morte.
Mensagens : 273
Reputação : 6
Desde : 20/12/2016
Localização : Unidade Federal do Leste
Link : 127.0.0.1:80
Ver perfil do usuário

Re: 10. Exercício #1

em Sab 01 Abr 2017, 03:22
Os opcodes de formatação de texto, tais como 0x0AD3 e 0x0AD4, não suportam todos os caracteres especificadores suportados pelos procedimentos sprintf() e sscanf() da livraria C.

______________________________
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18877
Reputação : 344
Desde : 04/05/2012
Idade : 20
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com

Re: 10. Exercício #1

em Sab 01 Abr 2017, 05:50
@Fernando Leal escreveu:
Spoiler:

Código:

SCRIPT_START
{
NOP
//Faça com que 5 variáveis iniciadas com valores aleatórios fiquem com o valor "12".

GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5




IF var1 > 0
OR var1 < 100
    var1 = 12
ENDIF

IF var2 > 0
OR var2 < 100
    var2 = 12
ENDIF
IF var3 > 0
OR var3 < 100
    var3 = 12
ENDIF
IF var4 > 0
OR var4 < 100
    var4 = 12
ENDIF
IF var5 > 0
OR var5 < 100
    var5 = 12
ENDIF

PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d." 10000 var1 var2 var3 var4 var5

}
SCRIPT_END

Eae pessoal blz? queria saber se ficou certo ou ser burlei alguma regra , mto obg a todos ...

Precisa fazer com WHILE e usar operadores matemáticos (adicionar ou subtrair), até ser igual a 12.

@Arthropod escreveu:Os opcodes de formatação de texto, tais como 0x0AD3 e 0x0AD4, não suportam todos os caracteres especificadores suportados pelos procedimentos sprintf() e sscanf() da livraria C.

%d suporta, sempre usei %d

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Mensagens Nível 4
Mensagens Nível 4
Título : Veryzon, agora em morte.
Mensagens : 273
Reputação : 6
Desde : 20/12/2016
Localização : Unidade Federal do Leste
Link : 127.0.0.1:80
Ver perfil do usuário

Re: 10. Exercício #1

em Sab 01 Abr 2017, 14:02
@Fabio escreveu:[...]
@Arthropod escreveu:Os opcodes de formatação de texto, tais como 0x0AD3 e 0x0AD4, não suportam todos os caracteres especificadores suportados pelos procedimentos sprintf() e sscanf() da livraria C.

%d suporta, sempre usei %d

Sim, os mais comuns funcionam, mas alguns outros mais raros não, como o '%p' — pointer —, por exemplo. O Deji já havia relatado isso nalguns anos atrás.

______________________________
avatar
Programador - Avançado
Programador - Avançado
Mensagens : 18877
Reputação : 344
Desde : 04/05/2012
Idade : 20
Link : gtamodvicio.blogspot.com
Ver perfil do usuáriohttp://gtamodvicio.blogspot.com

Re: 10. Exercício #1

em Sab 01 Abr 2017, 15:07
@Arthropod escreveu:
@Fabio escreveu:[...]
@Arthropod escreveu:Os opcodes de formatação de texto, tais como 0x0AD3 e 0x0AD4, não suportam todos os caracteres especificadores suportados pelos procedimentos sprintf() e sscanf() da livraria C.

%d suporta, sempre usei %d

Sim, os mais comuns funcionam, mas alguns outros mais raros não, como o '%p' — pointer —, por exemplo. O Deji já havia relatado isso nalguns anos atrás.

Ah sim, achei que você tivesse postado isso referente ao exercício anterior à sua mensagem.

______________________________

Modifico quase qualquer coisa.   :)
------------------>>>http://gtamodvicio.blogspot.com/<<<------------------

Meu PC:
Spoiler:

Configurações PC:
*Processador: Intel Core i7 4790K 4.00GHz LGA1150
*Placa Mãe: GIGABYTE GA-H97M-D3H Intel (LGA1150)
*HD: 1TB Seagate Barracuda 64MB Sata III 7200RPM (2x - RAID 0)
*HD²: SAMSUNG M3 Externo USB 5400RPM 1TB
*Placa de vídeo: Nvidia GTX660 2GB DDR5 192bit EVGA
*RAM: 8GB DDR3 1600MHZ Kingston HYPER X BEAST (2x4GB)
*Fonte: Corsair 600W Reais CX600M Modular - CP-9020060-WW (80 Plus Bronze)
*Gabinete: Gabinete Raidmax Super Hurricane Branco - 248WB
*Monitor: LG 23MP55HQ Full HD HDMI 23'
avatar
Mensagens Nível 4
Mensagens Nível 4
Título : Veryzon, agora em morte.
Mensagens : 273
Reputação : 6
Desde : 20/12/2016
Localização : Unidade Federal do Leste
Link : 127.0.0.1:80
Ver perfil do usuário

Re: 10. Exercício #1

em Sab 01 Abr 2017, 15:39
↑ Falha minha. Eu evitei citar para não formar uma pilha citações.

______________________________
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 8
Reputação : 0
Desde : 03/08/2016
Idade : 14
Localização : Caixas City - RJ
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 01:12
Spoiler:

Código:
SCRIPT_START
{
    NOP

WAIT 7593


LVAR_INT var1 var2 var3 var4 var5

GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
        GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

    WHILE NOT var1 = 12
        IF var1 > 12
            var1 -= 1
        ELSE
            var1 += 1
        ENDIF
    ENDWHILE
                    WHILE NOT var2 = 12
                        IF var2 > 12
                            var2 -= 1
                        ELSE
                            var2 += 1
                        ENDIF
                    ENDWHILE
                                    WHILE NOT var3 = 12
                                        IF var3 > 12
                                            var3 -= 1
                                        ELSE
                                            var3 += 1
                                        ENDIF
                                    ENDWHILE
                    WHILE NOT var4 = 12
                        IF var4 > 12
                            var4 -= 1
                        ELSE
                            var4 += 1
                        ENDIF
                    ENDWHILE
    WHILE NOT var5 = 12
        IF var5 > 12
            var5 -= 1
        ELSE
            var5 += 1
        ENDIF
    ENDWHILE

    PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5

}
SCRIPT_END
Obs: O Script parecia um gerador de crash e acabei tirando o loop, sinal de multiplicação e divisão e colocar adicionar e subtrair por 1, tirei o "IFNOT" por que não batia com as "varx", e por fim, acabou quase idêntico ao do Spoiler das Dúvidas (ROLL)
E eu não queria fazer igual e acabou dando na mesma
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 09:02
Lê o tutorial de identação, na moral.

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21884
Reputação : 676
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: 10. Exercício #1

em Sex 14 Abr 2017, 09:37
mathnoobsxx escreveu:Lê o tutorial de identação, na moral.
Realmente Fuch That Guy Fuch That Guy

Dahora que:
WAIT 7593
Que que é isso? Por que 7593?

______________________________

avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 09:57
@Junior_Djjr escreveu:
mathnoobsxx escreveu:Lê o tutorial de identação, na moral.
Realmente Fuch That Guy Fuch That Guy

Dahora que:
WAIT 7593
Que que é isso? Por que 7593?

Talvez pra esperar o jogo começar philosoraptor ?

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Mensagens : 1023
Reputação : 82
Desde : 04/03/2013
Idade : 17
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 10:31
mathnoobsxx escreveu:
@Junior_Djjr escreveu:
mathnoobsxx escreveu:Lê o tutorial de identação, na moral.
Realmente Fuch That Guy Fuch That Guy

Dahora que:
WAIT 7593
Que que é isso? Por que 7593?

Talvez pra esperar o jogo começar  philosoraptor ?
É obvio, ele tá perguntando sobre o número e não sobre o comando em si. Como se o jogo tivesse toda essa precisão e fosse literalmente esperar esse tempo ai kkkkk
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Mensagens : 695
Reputação : 115
Desde : 22/09/2015
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 12:05
@Kalimba escreveu:
Spoiler:

Código:
SCRIPT_START
{
    NOP

WAIT 7593


LVAR_INT var1 var2 var3 var4 var5

GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
        GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

    WHILE NOT var1 = 12
        IF var1 > 12
            var1 -= 1
        ELSE
            var1 += 1
        ENDIF
    ENDWHILE
                    WHILE NOT var2 = 12
                        IF var2 > 12
                            var2 -= 1
                        ELSE
                            var2 += 1
                        ENDIF
                    ENDWHILE
                                    WHILE NOT var3 = 12
                                        IF var3 > 12
                                            var3 -= 1
                                        ELSE
                                            var3 += 1
                                        ENDIF
                                    ENDWHILE
                    WHILE NOT var4 = 12
                        IF var4 > 12
                            var4 -= 1
                        ELSE
                            var4 += 1
                        ENDIF
                    ENDWHILE
    WHILE NOT var5 = 12
        IF var5 > 12
            var5 -= 1
        ELSE
            var5 += 1
        ENDIF
    ENDWHILE

    PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5

}
SCRIPT_END
Essa indentação... :v:


Mas como você ainda não chegou no tutorial de indentação, dá pra entender.
@Kalimba escreveu:Obs: O Script parecia um gerador de crash e acabei tirando o loop, sinal de multiplicação e divisão e colocar adicionar e subtrair por 1, tirei o "IFNOT" por que não batia com as "varx", e por fim, acabou quase idêntico ao do Spoiler das Dúvidas (ROLL)
E eu não queria fazer igual e acabou dando na mesma
É muito raro scripts de duas pessoas diferentes saírem iguais, ainda mais que é perceptível que você não sabe indentar, mas mesmo assim, até a indentação dos whiles e dos ifs dentro deles está exatamente igual. serious?

Mas só você sabe se é cópia ou não, vai de você, se quer realmente aprender ou não.

______________________________
" Everyone gonna remember my name ! "
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 8
Reputação : 0
Desde : 03/08/2016
Idade : 14
Localização : Caixas City - RJ
Ver perfil do usuário

Re: 10. Exercício #1

em Sex 14 Abr 2017, 21:07
A indentação ficou assim porque eu fui tentar mexer e deu erro (devo ter apagado algo certo aí coloquei a culpa na indentação cjfacepalm ) Mas a indentação em forma de ">" na parte dos "GENERATE_RANDOM" realmente esqueci (outra burrada minha)
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 9
Reputação : 0
Desde : 18/12/2016
Idade : 15
Localização : Várzea Paulista - São Paulo
Ver perfil do usuário

Meu source code

em Seg 08 Maio 2017, 14:44
Eu peguei as dicas, já que algumas coisas que eu fiz não deram certo. Como por exemplo: var1 /= var1 + 11. De qualquer forma aprendi muita coisa.

Spoiler:

Código:
SCRIPT_START

{
NOP

LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5

GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5

main_loop:
WAIT 0

IF var1 > 12
   var1 -= 1
ELSE
   var1 += 1
ENDIF

IF var2 > 12
   var2 -= 1
ELSE
   var2 += 1
ENDIF

IF var3 > 12
   var3 -= 1
ELSE
   var3 += 1
ENDIF

IF var4 > 12
   var4 -= 1
ELSE
   var4 += 1
ENDIF

IF var5 > 12
   var5 -= 1
ELSE
   var5 += 1
ENDIF

WHILE IS_KEY_PRESSED VK_KEY_H
WAIT 0    
   PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 1 var1 var2 var3 var4 var5
ENDWHILE

GOTO main_loop
}

SCRIPT_END

Não é tão instantâneo, mas serve, né? Uai.
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Seg 08 Maio 2017, 14:51
Ficou bom, só tem um errinho na identação (ali no WHILE).
Dica: Você pode usar var[5] ao invés de:
LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 9
Reputação : 0
Desde : 18/12/2016
Idade : 15
Localização : Várzea Paulista - São Paulo
Ver perfil do usuário

Re: 10. Exercício #1

em Seg 08 Maio 2017, 15:42
mathnoobsxx escreveu:Ficou bom, só tem um errinho na identação (ali no WHILE).
Dica: Você pode usar var[5] ao invés de:
LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5

Eu costumo não identar (se é assim que se diz) o WAIT 0 sempre quando ele vem no início depois de algum comando. Não sabia que era um erro, então a partir de agora vou começar. Ah, e quanto o var[5], obrigado pela dica. Realmente muito mais rápido, hehe.
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Seg 08 Maio 2017, 16:09
Nota: se usar var[5], a ordem das variáveis será assim: var[0] var[1] var[2] var[3] var[4].

Outra dica: Ao invés de var -= 1, use var-- e ao invés de var += 1, use var++

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21884
Reputação : 676
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: 10. Exercício #1

em Seg 08 Maio 2017, 16:34
mathnoobsxx escreveu:Dica: Você pode usar var[5]
Acredito que ele ainda não chegou na parte que ensina arrays.

______________________________

avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 1
Reputação : 0
Desde : 31/03/2016
Idade : 14
Localização : Guaratuba-Paraná
Ver perfil do usuário

Re: 10. Exercício #1

em Dom 14 Maio 2017, 14:58
Spoiler:

Código:

SCRIPT_START
{
    NOP

    mainloop:
    WAIT 0
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var1

    LVAR_INT var1
    LVAR_INT var2
    LVAR_INT var3
    LVAR_INT var4
    LVAR_INT var5

    var2 = var1
    var3 = var2
    var4 = var3
    var5 = var4
  
    IF var1 = 12
        PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5
        TERMINATE_THIS_CUSTOM_SCRIPT
    ELSE
        GOTO mainloop
    ENDIF
    
}
SCRIPT_END
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Dom 14 Maio 2017, 16:19
@Batata Enlatada escreveu:
Spoiler:

Código:

SCRIPT_START
{
    NOP

    mainloop:
    WAIT 0
    GENERATE_RANDOM_INT_IN_RANGE 0 100 var1

    LVAR_INT var1
    LVAR_INT var2
    LVAR_INT var3
    LVAR_INT var4
    LVAR_INT var5

    var2 = var1
    var3 = var2
    var4 = var3
    var5 = var4
  
    IF var1 = 12
        PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5
        TERMINATE_THIS_CUSTOM_SCRIPT
    ELSE
        GOTO mainloop
    ENDIF
    
}
SCRIPT_END
Você fez errado, era pra usar operações matemáticas para chegar a 12, e não jogar dados até uma hora cair em 12.

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
avatar
Scripter CLEO - Avançado
Scripter CLEO - Avançado
Título : Não quero acreditar, quero saber.
Mensagens : 21884
Reputação : 676
Desde : 03/05/2012
Idade : 22
Localização : Ibitinga - SP
Link : www.MixMods.com.br
Ver perfil do usuáriohttp://MixMods.com.br

Re: 10. Exercício #1

em Seg 15 Maio 2017, 05:35
Eu já até coloquei na explicação que não pode fazer isso e ainda há pessoas fazendo. Isso é tipo a pior maneira de todas, vai rodar em média 100 vezes para conseguir dar certo, o que o correto seria rodar somente uma vez (ou seja, um resultado instantâneo).

______________________________

avatar
Mensagens Nível 1
Mensagens Nível 1
Mensagens : 27
Reputação : 0
Desde : 14/05/2017
Idade : 17
Localização : Paracatu
Ver perfil do usuário

Re: 10. Exercício #1

em Sab 27 Maio 2017, 18:34
SPOILER:

Código:
SCRIPT_START
{
NOP

LVAR_INT var1
LVAR_INT var2
LVAR_INT var3
LVAR_INT var4
LVAR_INT var5
LVAR_INT var00
GENERATE_RANDOM_INT_IN_RANGE 0 100 var1
GENERATE_RANDOM_INT_IN_RANGE 0 100 var2
GENERATE_RANDOM_INT_IN_RANGE 0 100 var3
GENERATE_RANDOM_INT_IN_RANGE 0 100 var4
GENERATE_RANDOM_INT_IN_RANGE 0 100 var5
var00 =12

loop:
WAIT 0

IF NOT var1 =12
    IF var1 >12
        var1 -=1
ELSE
    var1 +=1
    ENDIF
ENDIF

IF NOT var2 =12
    IF var2 >12
        var2 -=1
ELSE
    var2 +=1
    ENDIF
ENDIF

IF NOT var3 =12
    IF var3 >12
        var3 -=1
ELSE
    var3 +=1
    ENDIF
ENDIF

IF NOT var4 =12
    IF var4 >12
        var4 -=1  
ELSE
    var4 +=1
    ENDIF
ENDIF

IF NOT var5 =12
    IF var5 >12
        var5 -=1
ELSE
        var5 +=1
    ENDIF
ENDIF

PRINT_FORMATTED_NOW "Todas as variaveis sao 12: %d %d %d %d %d" 10000 var1 var2 var3 var4 var5
GOTO loop

}
SCRIPT_END
avatar
Scripter CLEO - Básico
Scripter CLEO - Básico
Título : Noob
Mensagens : 929
Reputação : 30
Desde : 13/08/2015
Localização : Passo de Torres - SC
Ver perfil do usuário

Re: 10. Exercício #1

em Sab 27 Maio 2017, 18:41
Você botou umas coisas desnecessárias, por exemplo: IF NOT var1 = 12, se ela é maior ou menor do que 12, ela obviamente não é 12.

E aquela var00 é desnecessária, você não usou-a.

______________________________
Caso te ajudei em algo, clique no botão de reputação (o "coraçãozinho" na parte de cima da mensagem).
Conteúdo patrocinado

Re: 10. Exercício #1

Permissão deste fórum:
Você não pode responder aos tópicos neste fórum