Ir ao conteúdo
  • Cadastre-se

VisualG Programação para iniciantes do zero


Posts recomendados

Olá a todos! Alguém pode me ajudar a adicionar esses algoraritmos no visual?

Adiconar umas um algoritmo que imprima:

Nome

Idade

Sexo

Salário

E detalhe... O é que o exercício pede a quantidade de salário mínimo sendo o mesmo no valor de 1045.00

Alguém me ajuda? Eu adicionei uma imagem , onde eu não consigo passar desse resultado. 

20200629_213504.jpg

Link para o comentário
Compartilhar em outros sites

Bom dia Simon!

Segue a questão com o código e minha dificuldade...

 

Faça um algoritmo que imprima nome, idade, sexo,o salario e a quantidade de salarios minimos. Considere o salário mínimo no valor de 1045.00.
Depois faça um diagrama de fluxo BPM.
 

Var
Nome,sexo: caractere
Idade: inteiro
Salário: real
Sal_min: real

Início
Escreval ("nome")
Leia(nome)
Escreval ("idade")Var
   Nome,sexo: caractere
   Idade: inteiro
   Salário: real
   Sal_min: real

   Início
   Escreval ("nome")
   Leia(nome)
   Escreval ("idade")
   Leia(idade)
   Escreval ("sexo")
   Leia(idade)
   Escreval ("salario")
   Leia(salario)

   Sal_min <- 1045.00
   Salário <- sal_min÷salário
Leia(idade)
Escreval ("sexo")
Leia(idade)
Escreval ("salario")
Leia(salario)

Sal_min <- 1045.00
Salário <- sal_min÷salário


Daqui em diante não vai mais, não consigo.

 

Link para o comentário
Compartilhar em outros sites

  • Membro VIP
7 horas atrás, Gilmar Souzq disse:

Faça um algoritmo que imprima nome, idade, sexo,o salario e a quantidade de salários mínimos. Considere o salário mínimo no valor de 1045.00.
Depois faça um diagrama de fluxo BPM.

 

A parte do diagrama de fluxo podemos verificar depois.

 

O enunciado é só isso? Imprimir os dados de onde?

 

adicionado 43 minutos depois

Seguem duas dicas fundamentais:

  1. Procure seguir exatamente o que o enunciado está propondo. É ele que define o que vai ser feito;
  2. Sempre deixe seu código rodável. Não deixe estruturas inacabadas ou com erros (mais a baixo explico mais)

 

A qualquer momento que "der um F9", o código tem que rodar sem erros;

 

Segue um exemplo:

//  Faça um algoritmo que imprima nome, idade, sexo, salario e a quantidade de
//salarios minimos. Considere o salário mínimo no valor de 1045.00.
//Depois faça um diagrama de fluxo BPM.
algoritmo "Cadastro de funcionários"
var
   nomes: vetor[1..5] de caractere
   sexos: vetor[1..5] de caractere
   udades: vetor[1..5] de inteiro
   salario: vetor[1..5] de real

inicio

fimAlgoritmo

 

Nesse código apenas declarei algumas variáveis iniciais. VEJA: Isso é só um esboço. É necessário o enunciado original e completo. Como não consegui entender o que é para ser feito ainda, apenas supus que será feito um cadastro de funcionários ou algo do tipo... (quando tiver outras informações, só ir ajustando. Não tem problemas)

 

 

Daí, resolvi inserir uma parte para cadastrar os funcionários. Para testar, vamos utilizar um para/faca. Ex.:

algoritmo "Cadastro de funcionários"
var
   nomes: vetor[1..5] de caractere
   sexos: vetor[1..5] de caractere
   idades: vetor[1..5] de inteiro
   salario: vetor[1..5] de real

   cod: inteiro
inicio
   escreval("  CADASTRO DE FUNCIONÁRIO  ")
   para cod de 1 ate 5 faca

   fimPara


fimAlgoritmo

 

Se você estiver prestando bem atenção, percebeu que tinha digitado udades, em vez de idade. Não tem problema!!! Foi só um erro de digitação (já tinha visto antes)... se botar para rodar, vai rodar da mesma forma... (o VisualG não faz ideia do que se trata as variáveis, apenas quer saber se está com uma sintaxe correta... como iniciar com letras e não ter espaços em brancos, por exemplo)

 

Agora vamos tentar implementar mais um pouco:

//  Faça um algoritmo que imprima nome, idade, sexo, salario e a quantidade de
//salarios minimos. Considere o salário mínimo no valor de 1045.00.
//Depois faça um diagrama de fluxo BPM.
algoritmo "Cadastro de funcionários"
var
   nomes: vetor[1..5] de caractere
   sexos: vetor[1..5] de caractere
   idades: vetor[1..5] de inteiro
   salario: vetor[1..5] de real

   cod: inteiro
inicio
   escreval("  CADASTRO DE FUNCIONÁRIO  ")
   para cod de 1 ate 5 faca
      escreval("")
      escreval("")
      escreval("Informa os dados do funcionário ", cod:1)
      escreval(" ")
      escreva ("Nome: ")
      leia(nomes[cod])
      escreva ("Sexo (M/F): ")
      leia(sexos[cod])
      escreva ("Idades: ")
      leia(idades[cod])
      escreva ("Salário: ")
      leia(idades[cod])
   fimPara


fimAlgoritmo

 

Fazendo um teste para ter uma ideia de como tá:

 

image.png

 

 

Salário ficou zerado... utilizei o vetor errado ali na leitura... só corrigir!!!

 

Uma outra forma bacana de testar é colocar para imprimir na tela, algo como:

 

image.png

 

Percebe que ficou tudo bagunçado.. ainda está com o erro na leitura dos salários e utilizei cod (que é o código do funcionário) em vez de utilizar o i, que foi utilizado para "varrer" o vetor... Tentando corrigir...

 

image.png

 

Vai começando a tomar cara... e vai indo.. 

 

A maioria das coisas que vai inserindo no código são basicamente estruturas já vistas em outros códigos que fizemos ou que vimos... no início vai demorando um pouco para achar formas mais práticas, mas é basicamente uma reutilização. Tem que ir metendo as caras para passar por perrengues e ir aprendendo e assimilando aos poucos mesmo. :)

 

 

Por fim, segue outra dica super útil: utilize o ALEATORIO do VisualG para gerar valores nessa etapa de desenvolvimento... é muito chato ficar digitando valores para preencher os dados!!! Exemplo:

 

//  Faça um algoritmo que imprima nome, idade, sexo, salario e a quantidade de
//salarios minimos. Considere o salário mínimo no valor de 1045.00.
//Depois faça um diagrama de fluxo BPM.
algoritmo "Cadastro de funcionários"
var
   nomes: vetor[1..5] de caractere
   sexos: vetor[1..5] de caractere
   idades: vetor[1..5] de inteiro
   salarios: vetor[1..5] de real

   cod: inteiro
   i: inteiro

   parada: caractere
inicio
   ALEATORIO 1, 1000
   escreval("  CADASTRO DE FUNCIONÁRIO  ")
   para cod de 1 ate 5 faca
      escreval("")
      escreval("")
      escreval("Informa os dados do funcionário ", cod:1)
      escreval(" ")
      escreva ("Nome: ")
      leia(nomes[cod])
      escreva ("Sexo (M/F): ")
      leia(sexos[cod])
      escreva ("Idades: ")
      leia(idades[cod])
      escreva ("Salário: ")
      leia(salarios[cod])
   fimPara
   ALEATORIO off

   escreval("")
   escreval("")
   escreva ("Pressione ENTER para listar os funcionários")
   leia(parada)
   LimpaTela()

   para i de 1 ate 5 faca
      escreval("FUNCIONÁRIO :", i)
      escreval("Nome   : ", nomes[i])
      escreval("Sexo   : ", sexos[i])
      escreval("Idade  : ", idades[i]:1)
      escreval("Salário: ", salarios[i]:1:2)
      leia(parada)
   fimPara

fimAlgoritmo

Onde tiver leia(), o VisualG vai inserir valores aleatório... Teste aí e veja como fica...



RESUMINDO:

  • Reveja a questão do enunciado completo. É necessário seguir o que tá lá. Esse exemplo acima foi baseado num fluxo qualquer;
  • Faça um código novo. Pode seguir mais ou menos o fluxo apresentado acima (não copie meu código), vá fazendo o seu pouco a pouco;
  • Poste o enunciado completo e seu código atual para revisarmos. Lembre de SEMPRE DEIXAR O CÓDIGO RODÁVEL. Não existe isso de código com erro!!! Se está dando pau, precisa resolver o que está errado.. inclusive perguntando aqui no fórum, pesquisando na internet, fazendo testes com algo que faz sentido...

 

No aguardo.

 

image.png

  • Obrigado 1
Link para o comentário
Compartilhar em outros sites

  • Membro VIP

Sobre:

9 horas atrás, Gilmar Souzq disse:

Eu coloquei um print da questão completa, está em anexo!

É. Parece que não tem muita coisa no enunciado...

 

Para o fórum, é mais interessante os TEXTOS dos documentos, pois fica mais fácil para nós colaboradores e visitantes, caso necessário, copiarem e também para ajudar na indexação da página.

 

Para adiantar, segue uma descrição do enunciado:

Prezado(a) estudante, faça um algoritmo que imprima o nome, a idade, o sexo e a quantidade de salários mínimos. Considere um salário mínimo de R$ 1.045,00. Também faça um diagrama de fluxo utilizando notação BPM.

 

Utilize o programa Visual G para realizar este exercício. Você pode desenhar o fluxo em uma folha de papel ou utilizar qualquer 'software' de sua preferência (Exemplos: LibreOffice Draw, LibreOffice, Impress, MS Office Power Point, Bizagi, Bonita, Aris, BPMN.io, Draw.io, Yaoqiang BPMN Editor, HEFLO, Modelio, Sydle, Pix Sol BPM etc...).

 

Atenção: A entrega devr ser em um único documento (word, pdf, ppt) com o algoritmo e com a imagem do diagram de fluxo.

 

Em caso de dúvidas, acione o (a) professor (a) mediador (a) através do fórum.

 

Prazo para postagem: 12/07/2020 (domingo).

 

--

 

O ponto central é: que nome, que idade, que sexo, que salários mínimos? De onde vem esses dados? Acho que precisaria entender melhor e, depender, tirar dúvidas com o professor.

 

 

 

Sobre:

9 horas atrás, Gilmar Souzq disse:

Desculpe está incomodando, é porque estou começando a estudar agora e ainda estou sem ritmo...

Não incomoda. A ideia do fórum é justamente um colaborar com o outro.

 

 

 

Sobre:

9 horas atrás, Gilmar Souzq disse:

image.png

É impressão minha ou você já enviou o arquivo para avaliação? Por quê? :)

Se já enviou, é possível reenviar? Então, independentemente, sugiro revisar o enunciado e e refazer o código em VisualG. A depender, você entrega ao professor separadamente, mesmo que não valha nota.

 

 

VAMOS LÁ:

 

Precisamos de dois passos iniciais:

[1] Entender o que o enunciado quer
[2] Desenvolver um algoritmo em VisualG que sirva como UMA solução para o problema proposto.

 

  1. PRIMEIRO é necessário entender do que se trata o problema... para só DEPOIS tentar achar uma solução para ela.

    Eu vejo isso todo dia aqui no fórum... é normal. Nós estudantes temos uma propensão a se preocupar mais "em dar uma solução", mas não percebemos que o principal na verdade é o problema em si!!! Seria aceitável um médico receitar um remédio sem mesmo ainda saber qual a doença? Ou um mecânico desmontar parte do carro sem saber qual o defeito que o dono está reclamando? Ou seja: como vamos dar uma solução para algo que ainda não sabemos bem do que se trata? Isso de "se preocupar em dar uma solução" é mais comum do que parece!!! Veja um exemplo caricaturado: 

    Pegadinha, seu filho já usou Twitter?
     

    Nesse exemplo (que provavelmente são selecionadas as respostas mais interessantes...) as pessoas costumam responder sem mesmo saber o que é um "Twitter". Talvez, pela entonação da pergunta, alguns dos entrevistados "supõem" que "Twitter" seja algo ruim, como por exemplo, uma droga perigosa, ou ao algo do tipo (a maioria não faz ideia do que é)... Essas pessoas talvez estejam preocupadas em dar uma resposta que supostamente iria agradar o perguntador ou que normalmente é imposta como sendo uma boa resposta entre a sua comunidade (não necessariamente o que ele pensa), mas não percebendo que o contexto da resposta não tem algo a ver com o que foi perguntado. Algo por aí..

    Percebe como isso não faz sentido? Poucas pessoas percebem isso... o estudo de técnicas de programação também serve para ajudar a sair desse senso comum. (Não que isso seja uma coisa ruim, mas pelo menos não deveria funcionar para esse nosso ambiente de desenvolvimento!)

    Um exemplo de comportamento que acho que seria mais adequado seria desse cara aos 29 segundos:
     


    Ele PRIMEIRO quer saber do que se trata, para depois então tentar dar uma resposta (ou não)... Um simplesmente: "não sei do que você está falando" ou "já ouvi falar dessa ferramenta, mas não tenho ideia do seu impacto no indivíduo"... Esse é o cerne: saber do que se trata.

    Veja que isso vale tanto para um exercício que estamos tentando resolver, tanto para outros contextos em geral.

    Entenda o problema... se tiver dúvidas, poderia consultar, por exemplo, o Fórum, ou mesmo entrar em contato diretamente com o professor (ele que definiu o problema, e é ele que quer determinado tipo de resposta).


     
  2. O desenvolvimento do algoritmo está 100% relacionado ao entendimento do enunciado... eu particularmente ainda não entendi do que se trata, logo, não posso te ajudar analisando o teu código atual!

    Veja:
    17 horas atrás, Simon Viegas disse:

    É necessário o enunciado original e completo. Como não consegui entender o que é para ser feito ainda, apenas supus que será feito um cadastro de funcionários ou algo do tipo... (quando tiver outras informações, só ir ajustando. Não tem problemas)


    A ideia da minha resposta lá foi apenas para demonstrar um fluxo de desenvolvimento... não é algo final ou já uma tentativa de resposta do enunciado. Você agora já postou o enunciado completo, mas não ajudou muito, daí, a minha sugestão seria revisá-lo antes de começar a pensar no código.

 


RESUMINDO:

  1. Poste o código completo em forma de texto, para podermos copiar e testar. Mesmo não sendo necessariamente o que o enunciado quer, é possível extrair algo;
  2. Poste o que você entendeu do enunciado. O que você acha que deve ser feito.

No aguardo.

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...