10. Exercício #1

    Compartilhe
    avatar
    Um Geek
    Mensagens Nível 4
    Mensagens Nível 4

    Título : Carinha que mora logo ali
    Mensagens : 312
    Reputação : 83
    Desde : 07/03/2017
    Localização : BH - MG
    Link : http://emcodigo.blogspot.com.br/

    Re: 10. Exercício #1

    Mensagem por Um Geek 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
    Fabio
    Programador - Avançado
    Programador - Avançado

    Mensagens : 18707
    Reputação : 340
    Desde : 04/05/2012
    Idade : 20
    Link : gtamodvicio.blogspot.com

    Re: 10. Exercício #1

    Mensagem por Fabio 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
    Fernando Leal
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 1
    Reputação : 0
    Desde : 01/04/2017

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

    Mensagem por Fernando Leal 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
    Arthropod
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 272
    Reputação : 6
    Desde : 20/12/2016
    Localização : Unidade Federal do Leste
    Link : 127.0.0.1:80

    Re: 10. Exercício #1

    Mensagem por Arthropod 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.


    ____________________
    Especificações de hardware:
    PC AMD FX Octa Core de 4.0GHz (OC), com GPU AMD Radeon de VRAM de 2GB, RAM de 8GB, HDD de 1TB, e fonte de alimentação ATX de 750W. Sequestrado por tempo indeterminado pelo TRIBUNAL DE JUSTIÇA DO ESTADO DO ESPÍRITO SANTO. É para tomar meus bens que pago impostos nessa aldeia chamada Brasil. YUNO

    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Mensagens : 18707
    Reputação : 340
    Desde : 04/05/2012
    Idade : 20
    Link : gtamodvicio.blogspot.com

    Re: 10. Exercício #1

    Mensagem por Fabio 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
    Arthropod
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 272
    Reputação : 6
    Desde : 20/12/2016
    Localização : Unidade Federal do Leste
    Link : 127.0.0.1:80

    Re: 10. Exercício #1

    Mensagem por Arthropod 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.


    ____________________
    Especificações de hardware:
    PC AMD FX Octa Core de 4.0GHz (OC), com GPU AMD Radeon de VRAM de 2GB, RAM de 8GB, HDD de 1TB, e fonte de alimentação ATX de 750W. Sequestrado por tempo indeterminado pelo TRIBUNAL DE JUSTIÇA DO ESTADO DO ESPÍRITO SANTO. É para tomar meus bens que pago impostos nessa aldeia chamada Brasil. YUNO

    avatar
    Fabio
    Programador - Avançado
    Programador - Avançado

    Mensagens : 18707
    Reputação : 340
    Desde : 04/05/2012
    Idade : 20
    Link : gtamodvicio.blogspot.com

    Re: 10. Exercício #1

    Mensagem por Fabio 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
    Arthropod
    Mensagens Nível 4
    Mensagens Nível 4

    Mensagens : 272
    Reputação : 6
    Desde : 20/12/2016
    Localização : Unidade Federal do Leste
    Link : 127.0.0.1:80

    Re: 10. Exercício #1

    Mensagem por Arthropod em Sab 01 Abr 2017, 15:39

    ↑ Falha minha. Eu evitei citar para não formar uma pilha citações.


    ____________________
    Especificações de hardware:
    PC AMD FX Octa Core de 4.0GHz (OC), com GPU AMD Radeon de VRAM de 2GB, RAM de 8GB, HDD de 1TB, e fonte de alimentação ATX de 750W. Sequestrado por tempo indeterminado pelo TRIBUNAL DE JUSTIÇA DO ESTADO DO ESPÍRITO SANTO. É para tomar meus bens que pago impostos nessa aldeia chamada Brasil. YUNO

    avatar
    Kalimba
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 7
    Reputação : 0
    Desde : 03/08/2016
    Idade : 13
    Localização : Nonô
    Link : Link é aquela coisa que conecta a você através dos buracos :'D

    Re: 10. Exercício #1

    Mensagem por Kalimba 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
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).

    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21723
    Reputação : 653
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: 10. Exercício #1

    Mensagem por Junior_Djjr 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?


    ____________________

    Mestre3224 voltou, ainda há esperanças no Youtube.
    avatar
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).

    avatar
    Nex'
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Mensagens : 986
    Reputação : 72
    Desde : 04/03/2013
    Idade : 17
    Localização : Sertãozinho - SP

    Re: 10. Exercício #1

    Mensagem por Nex' 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


    ____________________
    PC Specs
    CPU: Intel Core i3-6100 Skylake
    GPU: HD Intel 530
    RAM: Crucial Ballistix Elite 4GB 2133MHz DDR4
    PSU: Corsair CX-430W
    MOBO: Gigabyte GA-H110M-H DDR4
    avatar
    israel
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Irineu
    Mensagens : 663
    Reputação : 111
    Desde : 22/09/2015
    Idade : 19
    Localização : Salvador - BA

    Re: 10. Exercício #1

    Mensagem por israel 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
    Kalimba
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 7
    Reputação : 0
    Desde : 03/08/2016
    Idade : 13
    Localização : Nonô
    Link : Link é aquela coisa que conecta a você através dos buracos :'D

    Re: 10. Exercício #1

    Mensagem por Kalimba 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
    Adryan Araújo
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 8
    Reputação : 0
    Desde : 18/12/2016
    Idade : 15
    Localização : Várzea Paulista - São Paulo

    Meu source code

    Mensagem por Adryan Araújo 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
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).

    avatar
    Adryan Araújo
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 8
    Reputação : 0
    Desde : 18/12/2016
    Idade : 15
    Localização : Várzea Paulista - São Paulo

    Re: 10. Exercício #1

    Mensagem por Adryan Araújo 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
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).

    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21723
    Reputação : 653
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: 10. Exercício #1

    Mensagem por Junior_Djjr 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.


    ____________________

    Mestre3224 voltou, ainda há esperanças no Youtube.
    avatar
    Batata Enlatada
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 1
    Reputação : 0
    Desde : 31/03/2016
    Idade : 14
    Localização : Guaratuba-Paraná

    Re: 10. Exercício #1

    Mensagem por Batata Enlatada 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
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).

    avatar
    Junior_Djjr
    Scripter CLEO - Avançado
    Scripter CLEO - Avançado

    Título : Não quero acreditar, quero saber.
    Mensagens : 21723
    Reputação : 653
    Desde : 03/05/2012
    Idade : 21
    Localização : Ibitinga - SP
    Link : www.MixMods.com.br

    Re: 10. Exercício #1

    Mensagem por Junior_Djjr 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).


    ____________________

    Mestre3224 voltou, ainda há esperanças no Youtube.
    avatar
    vmrgbk
    Mensagens Nível 1
    Mensagens Nível 1

    Mensagens : 27
    Reputação : 0
    Desde : 14/05/2017
    Idade : 17
    Localização : Paracatu

    Re: 10. Exercício #1

    Mensagem por vmrgbk 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
    Matheus Rivaldo
    Scripter CLEO - Básico
    Scripter CLEO - Básico

    Título : Noob
    Mensagens : 801
    Reputação : 28
    Desde : 13/08/2015
    Localização : Passo de Torres - SC

    Re: 10. Exercício #1

    Mensagem por Matheus Rivaldo 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 "+" no canto superior direito da mensagem).


    Conteúdo patrocinado

    Re: 10. Exercício #1

    Mensagem por Conteúdo patrocinado


      Data/hora atual: Ter 25 Jul 2017, 23:48