Como definir o valor de uma varíavel sem ser pela variável global [RESOLVIDO]

1. Como definir o valor de uma varíavel sem ser pela variável global [RESOLVIDO]

Pedro Victor
Nerdiarretado

(usa Arch Linux)

Enviado em 23/10/2018 - 22:15h

Saudações amigos (as)!
Estou com uma dúvida em relação na atribuição de um valor que ainda não tenho dentro de uma linguagem de programação toda em português.
É uma estrutura de condição:
se (numeroVisitantes > 1 e dataInicial <= dataDaVisita e dataDaVisita <= dataFinal ) então 


Porém não tenho o valor de entrada de nenhuma das três variáveis.
A pergunta no entanto é. Como posso atribuir um valor para estas variáveis sem ser pela variável global do código


  


2. MELHOR RESPOSTA

Samuel Leonardo
SamL

(usa XUbuntu)

Enviado em 24/10/2018 - 15:32h



3. Re: Como definir o valor de uma varíavel sem ser pela variável global [RESOLVIDO]

Hugo Torres
F9KILL

(usa Arch Linux)

Enviado em 24/10/2018 - 09:57h

Pode explicar melhor?
que linguagem está utilizando? é portugol?


4. Re: Como definir o valor de uma varíavel sem ser pela variável global [RESOLVIDO]

Pedro Victor
Nerdiarretado

(usa Arch Linux)

Enviado em 24/10/2018 - 10:20h

Não é linguagem nenhuma. Seria uma reprodução de linguagem mas toda em português.
No caso gostaria de saber em qual outro lugar definiria um valor para a variável sem ser pela global


5. Re: Como definir o valor de uma varíavel sem ser pela variável global [RESOLVIDO]

Pedro Victor
Nerdiarretado

(usa Arch Linux)

Enviado em 24/10/2018 - 19:10h

SamL escreveu:

Nerdiarretado escreveu:

Não é linguagem nenhuma. Seria uma reprodução de linguagem mas toda em português.
No caso gostaria de saber em qual outro lugar definiria um valor para a variável sem ser pela global

Nas linguagens estruturadas tem-se que obedecer o fluxo de execução: de cima pra baixo e da esquerda pra direita. Sendo assim, esse código ali só vai funcionar se as variáveis forem declaradas antes desse código aparecer.
Em C seria algo assim com declaração de variaveis local:

int main(void)
{
int numeroVisitates;
int dataInicial, dataVisita, dataFinal;
//agora inicie os valores das variáveis
if (numeroVisitantes > 1 e dataInicial <= dataDaVisita e dataDaVisita <= dataFinal ) então
....//resto do código
}

Ou com variáveis globais:
  int numeroVisitates;
int dataInicial, dataVisita, dataFinal;
int main(void)
{
//agora inicie os valores das variáveis
if (numeroVisitantes > 1 e dataInicial <= dataDaVisita e dataDaVisita <= dataFinal ) então
....//resto do código
}

Observe que, o programa flui do jeito que expliquei (de cima pra baixo e da esquerda pra direita), sendo assim não faz sentido usar uma variável num if quando ela não foi ainda declarada. Por isso, o compilador deve retornar algo como variável tal não declarada neste escopo.

Observe ainda que o escopo em C é entre chaves {escopo aqui}, assim, as chaves do main são o escopo principal do programa, onde toda a mágica ocorre.
____________________________________________
https://nerdki.blogspot.com/ acessa aí vai lá, é grátis!



Agradeço por todo esforço na resolução da pergunta. Mas era uma coisinha bem simples que seria os parâmetros de minha função, onde nela estaria meus outros valores de entrada.
Acabou ficando desse jeito:

conjunto string de registros
funcao calcularMedia (string dataInicial, string dataFinal)
{
string visita;
string quantidadeVisitantes;
string dataDaVisita;
int numeroVisitas;
int mediaPessoas;

int quantidadeMembros = 0;
int numeroGrupos = 0;
int quantidadeGrupos = 0;

para cada visita em registros faça
{
quantidadeVisitantes = separarString (visita, “|”, “antes”);
dataDaVisita= separarString (visita,”|”, “depois”);
numeroVisitantes = converterStringInt (quantidadeVisitantes) ;


//visita de um grupo
se (numeroVisitantes > 1 e dataInicial <= dataDaVisita e dataDaVisita <= dataFinal ) então

{
quantidadeGrupos = quantidadeGrupos + 1;
quantidadeMembros = quantidadeMembros + numeroVisitantes;
}
}

mediaPessoas = quantidadeMembros dividido pela quantidadeGrupos;

retorna mediaPessoas;
}








Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts