Portal SAMP
[Tutorial] Variaveis - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Guias e Tutoriais (https://portalsamp.com/forumdisplay.php?fid=7)
+--- Tópico: [Tutorial] Variaveis (/showthread.php?tid=541)



Variaveis - iacta - 22/12/2020

Olá pessoal! Bem... Vim aki fazer um pequeno tutorial sobre variaveis, 
pois sei que muitos tem dificuldade de duvidas de como utiliza-las.

IMPORTANTE: Operadores e diversas outras coisas serão usados!
Você não precisa entender isso por agora, pois o foco aki são VARIAVEIS!
Mais para frente irei explicar sobre operadores, etc.
Preste bem atenção neste tutorial!

1 - Oque é uma variavel e qual sua importancia.
2 - Como declarar uma variavel e quais os tipos de declarações.
3 - Tipos de variaveis.

Pois bem, vamos lá!

Parte 1: Oque é uma variavel e qual sua importancia.

Para começo de conversa, oque é uma variavel?

Uma variavel é um pequeno espaço na memoria do computador, para armazenar algum valor/dado.

Entendi! Mas porque se chama variável?

No nome já diz variar(varia vel), isso quer dizer que, ela pode variar o seu valor/dado dentro dela.

Ha não entendi explica melhor.

Irei dar um exemplo.

Vamos supor que você cria uma variavel atribuindo o valor 0 dentro dela:

Código:
new var = 0;


Vou utilizar uma função para escrever no console do samp-server.


Código:
printf("Minha variavel possui o valor: %d", var);

Com essa função, iremos escrever no console o valor que a minha variavel possui, no caso valor 0.
Agora iremos atribuir outro valor a essa váriavel:


Código:
var = 2; // atribuimos o valor 2

printf(Minha variavel agora possui o valor: %d", var); // escrevemos no console o novo valor da variavel

Assim agora ela variou de um valor a outro ou seja, ela possuía o valor 0, agora ela possui o valor 2.


Mas porque temos que declara-las antes de utiliza-las?

As variáveis devem ser declaradas no algoritmo antes de serem utilizadas, porque a declaração das variáveis permite que seja reservado um espaço na memória para o dado que vai ser armazenado e utilizado.

Qual a importância do uso de variáveis?

As variáveis são importantes para o ARMAZENAMENTO DOS DADOS INSERIDOS, seja pelo programador ou pelo usuário. A utilização de variáveis traz um método genérico de atribuir uma operação segundo a sua finalidade.

Parte 2: Como declarar uma variavel e quais os tipos de declarações.
Temos duas formas de declarar uma variavel:

Global
Local

A variavel global ela estará sempre fora de alguma função/callback, ou seja ela sera declarada no inicio do codigo/gamemode.

OK mas como que se declara uma variavel?

Usamos uma keyword(palavra-chave) new que significa novo na frente iremos informar o tipo de variavel e o nome exemplo:


Código:
new minhavar;

Aki declaramos uma variavel de tipo inteiro, você vai entender logo abaixo.

Agora vamos entender o codigo


Código:
new /* aki temos a tag novo
espaço aki pode ter o tipo de variavel (caso ela for bool, float) caso não for não tera
nome da variavel aki informamos o nome da variavel pode ser qualquer nome seja oi ou até ola
*/

IMPORTANTE: Caso sua variavel seja global você não pode criar uma com o mesmo nome, caso for local, você pode criar outra variavel com o mesmo nome em outro lugar de tipo local você ira entender isto abaixo, caso ela for global e você criar uma local com o mesmo ira dar um warning(aviso) durante o compilamento.

A variavel local ela estara sempre dentro de alguma função/callback, ou seja ela sera declarada dentro da função/callback.

Exemplo:


Código:
minhafuncao(){
    new minhavar;
    return 1;
}

IMPORTANTE: Não se usa variavel local como uma variavel global, exemplo temos duas funções criadas, na função tem minhavar1, se você usar: minhavar1 = 0; na função 2 ira dar erro! Para conseguir usar ela em outras funções você deve declarar ela como global ou seja no incio do gamemode/codigo.

Parte 3: Tipos de variaveis.
Incrivel! Mas tá, eu já vi que tem vários tipos de variaveis, quais são elas? E como utiliza-las?

Temos 4 tipos de variaveis, elas são:

Float, bool, int(inteiro) e string.

O tipo de variavel float, é uma variavel de tipo flutante, ou seja o valor dentro dela sempre vai possuir um . , exemplo:

Código:
new Float:minhavar;

minhavar = 123.456; /* ela é declarada desta forma apos o new sempre possui o Float:
na hora de compilar o codigo, o float informa o compilador que esta variavel é to tipo flutante(float)
você pode usar new Float:minhavar = 123.456 vai de sua preferencia:D*/

printf("Minha variavel possui o valor: %f" minhavar);


O tipo de variavel bool, é uma variavel de tipo booleana, ou seja o valor dentro dela sempre vai ser true ou false (verdadeiro ou false) exemplo:


Código:
new bool:minhavar; /* ela é declarada desta forma apos o new sempre possui o bool,
na hora de compilar o codigo o bool informa o compilador que esta variavel é to tipo booleano(bool)
você pode usar new bool:minhavar = true vai de sua preferencia:D*/

minhavar = true; // atribuimos o valor true para nossa variavel

printf("Minha variavel possui o valor: %s", minhavar);

O tipo de variavel int, é uma variavel de tipo inteiro, ou seja o valor dentro dela sempre vai ser um numero inteiro, exemplo:


Código:
new minhavar;  /* ela é declarada desta forma sem nada apos o new,
na hora de compilar o codigo minhavar sem nada apos e antes, informa o compilador que esta variavel é to tipo inteiro(int)
você pode usar new minhavar = 2 vai de sua preferencia:D*/

minhavar = 2; // atribuimos o valor 2 para nossa variavel

printf("Minha variavel possui o valor: %d" minhavar);


O tipo de variavel string, é uma variavel de tipo texto, ou seja o valor dentro dela sempre irá conter um texto, exemplo:


Código:
new minhavar[2]; /* ela é declarada desta forma apos o nome da variavel sempre possui dois colchetes e dentro um valor,
na hora de compilar o codigo os colchetes e valores informa o compilador que esta variavel é to tipo string(texto)
você pode usar new minhavar[26] = "ola mundo!"; vai de sua preferencia:D*/
minhavar = "oi";
printf("%s" minhavar);

/*Aki irá reproduzir no console: oi*/

/*O valor dentro dos colchetes informa ao compilador o tamanho das celulas composta por essa variavel ou seja,
o numero de caracteres que ela irá possuir. Caso seu texto tenha 24 caracteres e o numero de celulas ser 22 por exemplo,
quando você for usar o texto(escrever no console, colocar em alguma dialog, etc), dois caracteres serão cortados exemplo:

new minhavar[9] = "ola mundo";

printf("%s" minhavar);

/*o caracter final 'o' irá ser cortado(cancelado, removido) do texto e irá reproduzir somente: "ola mund"*/

IMPORTANTE: Tenha cuidado na hora de declarar celulas! Pois dependendo do tamanho pode acabar estragando seu PC! Recomendo usar até 2000 celulas!!
Bem... Foi isso espero que tenha esclarecido! Se estiver faltando algo informe no tópico que eu irei editar. Espero não ter esquecido nada Big Grin .

BY: iacta.


RE: Variaveis - Gustavo P - 23/12/2020

Bom, tem alguns erros mas não tem muita "importância"

não entendi isso aqui >>
Pois dependendo do tamanho pode acabar estragando seu PC! Recomendo usar até 2000 celulas!!
mas acho que foi zoeira


RE: Variaveis - iacta - 23/12/2020

(23/12/2020 18:41)Gustavo P Escreveu: Bom, tem alguns erros mas não tem muita "importância"

não entendi isso aqui >>
Pois dependendo do tamanho pode acabar estragando seu PC! Recomendo usar até 2000 celulas!!
mas acho que foi zoeira

Rs, sempre me disseram isso kkkkk.


RE: Variaveis - Chainksain - 23/12/2020

Existem dois pontos a se observar:
1 - new não é uma tag, é uma keyword, palavra-chave em português, toda linguagem de programação possui um conjunto de palavra-chave.
2 - na explicação do tipo string faltou dizer que o numero entre os colchetes é o tamanho da palavra ou frase(quantidade de caracteres).

observei tbm um erro de escrita: "você pode usar new bool:minhavar = 123.456 vai de sua preferenciaBig Grin*/" era pra ser 'new Float:minhavar = 123.456'

Fora isso é um bom tuto para quem está iniciando, o assunto variáveis na realidade é mais profundo, esta explicação é bem rasa, mas como eu disse, é suficiente para quem está começando agora entender como funciona a lógica de programação.


RE: Variaveis - iacta - 24/12/2020

(23/12/2020 21:25)Chainksain Escreveu: Existem dois pontos a se observar:
1 - new não é uma tag, é uma keyword, palavra-chave em português, toda linguagem de programação possui um conjunto de palavra-chave.
2 - na explicação do tipo string faltou dizer que o numero entre os colchetes é o tamanho da palavra ou frase(quantidade de caracteres).

observei tbm um erro de escrita: "você pode usar new bool:minhavar = 123.456 vai de sua preferenciaBig Grin*/" era pra ser 'new Float:minhavar = 123.456'

Fora isso é um bom tuto para quem está iniciando, o assunto variáveis na realidade é mais profundo, esta explicação é bem rasa, mas como eu disse, é suficiente para quem está começando agora entender como funciona a lógica de programação.

Obrigado pela sugestão ja arrumei aqui.

Sobre o tamanho da palavra coloquei bem aqui:

/*O valor dentro dos colchetes informa ao compilador o tamanho das celulas composta por essa variavel ou seja,
o numero de caracteres que ela irá possuir

Acho que não faz muita diferença XD