Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

flash321

Como posso melhorar meu algoritmo

Recommended Posts

Estou desenvolvendo um algoritmo no visualg, para um trabalho da faculdade, e gostaria que alguém me dissesse se posso melhorar meu algoritmo. Sou iniciante e o trabalho é muito complexo. Consiste em criar um sistema de cadastro para alunos de terminado curso e armazenar o resultado em vetores. Alguém pode me dizer se posso melhorar o algoritmo em algo. Ele parece que tem um problema quando escolho o opção 4. Ainda nao terminei, mas gostaria que alguém opinasse se estou certo fazer dessa forma.

 

algoritmo "semnome"
var
cadastro: vetor [1..1,1..9] de caractere
alunos,opcao, confirmdel,php,java,delphi,arduino,pulanum,i,sexom,sexof: inteiro
cont: inteiro
nomepesq, nomedel, snomedel: caractere
encontrado, inserir: logico
procedimento principal()
inicio
repita
escreval ("Menu Principal")
escreval ("1 - Cadastrar Aluno")
escreval ("2 - Calcular a quantidade de alunos do sexo Feminino e Masculino")
escreval ("3 - Exibir o aluno mais velho e o aluno mais novo")
escreval ("4 - Exibir a quantidade de alunos por curso")
escreval ("5 - Sair")
escreva ("Digite uma Opcao: ")
leia (opcao)
limpatela
ate (opcao=1) ou (opcao=2) ou (opcao=3) ou (opcao=4) ou (opcao=5)
escolha (opcao)
caso 1
cadastroaluno()
caso 2
quantidadealunosporsexo()
caso 3
consulta_nome()
caso 4
alunosporcurso()
caso 5
cont<-0
interrompa
fimescolha
fimprocedimento
//---------------------- CADASTRO ----------------------
procedimento cadastroaluno
inicio
para i de 1 ate 1 faca
escreval("==== CADASTRO DE ALUNOS ====")
escreva("Digite a matricula ")
leia(cadastro[i,1])
escreva("")
escreval ("Digite o nome do aluno")
leia (cadastro[i,2])
escreval ("sexo")
escreval ("M - masculino")
escreval ("F - feminino")
leia (cadastro[i,3])
escreval ("Idade")
leia (cadastro[i,4])
escreval("telefone")
leia(cadastro[i,5])
escreval("Email:")
leia(cadastro[i,6])
escreval ("turno")
escreval ("1 - manhã")
escreval ("2 - noite")
leia(cadastro[i,7])
escreval ("curso")
escreval ("1 - PHP")
escreval ("2 - Java")
escreval ("3 - Delphi")
escreval ("4-Arduino")
leia (cadastro[i,8])
escreval("Tipo ( 1-Novo/ 2-Ex Aluno/ 3-Convênio)")
leia(cadastro[i,9])
fimpara
principal ()
fimprocedimento
//-------------------------- CONSULTA PELO sexo ---------------------
procedimento quantidadealunosporsexo()
inicio
escreval("---- quantidade de alunos de cada sexo ")
para i de 1 ate 1 faca
se cadastro[i,3] = "m" entao
sexom<- sexom + 1
fimse
se cadastro[i,3] = "f" entao
sexof<- sexof + 1
fimse
fimpara
Escreval("Total de Homens: ", sexom)
Escreval("Total de Mulheres: ", sexof)
principal()
fimprocedimento
procedimento alunosporcurso()
inicio
para i de 1 ate 1 faca
se cadastro[i,8] = "1" entao
php<- php + 1
fimse
se cadastro[i,8] = "2" entao
java<- java + 1
fimse
se cadastro[i,8] = "3" entao
delphi<- delphi + 1
fimse
se cadastro[i,8] = "4" entao
arduino<-arduino + 1
fimse
fimpara
escreval("o total de alunos do curso de php é ",php)
escreval("o total de alunos do curso de java é ",java)
escreval("o total de alunos do curso de delphi é ",delphi)
escreval("o total de alunos do curso de arduino é ",arduino)
principal()
fimprocedimento
inicio
principal()
fimalgoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por alexdyna
      Prezados,
      Amigos tenho que fazer um trabalho da faculdade onde o professor me da um arquivo que vou colocar anexo e tenho que fazer um algoritmo que leia o arquivo e monte uma tabela com as informações.
      pelo que vejo ele tem na primeira linha 8 barra e nas demais linha 10 barras
      ate a ultima que seria sua parada onde temos 2 barras seguidas.
       
      ficaria muito grato com a ajuda de todos.
       
      No arquivo anexo esta o texto:
      Nome/telefone/nascimento/Horas Curso/vendas T1/vendas T2/vendas T3/vendas T4/
       Luiz Ranza Neo/99934-5255/05/12/1989/200/107099,072578621/76915,8996218681/100922,271239691/76372,9971916498/
      Richard de Barrissaia/99326-4689/18/03/1990/150/55123,0080621828/68062,2200055909/67233,9928593779/45236,5928531083/
      Rodrigo Abalâminos/99911-7413/09/08/1987/168/71697,3866071191/58063,5644108225/88183,6230762134/48160,3116315664/
      José Gigfrid/99658-7874/15/04/1997/135/48816,199086596/50086,3689415844/52916,3066872779/55232,0663463164/
      Luiza Celly Silva/99659-1214/01/02/2000/90/29208,8223591438/39361,8088384592/45062,056112236/38913,7237126574/
      Maria Kunlun/99686-7845/21/04/1984/182/92076,1053757689/80440,5339844205/87575,0546657182/79220,9398178354/
      //
       
    • Por cerejafalante
      Olá pessoal, estou com uma lista de exercício de funções para fazer no visualg mas não sei por onde começar, alguém pode me ajudar fazendo esse exercício? ai eu pego ele de exemplo e faço os outros, obrigada
       
      o exercício é 
      Escreva um programa que calcula área de figuras: quadrado, retângulo, triângulo e círculo. O usuário informa qual forma deseja calcular a área, informa os parâmetros necessários e a área da forma é calculada em uma função. 
    • Por cerejafalante
      Pessoal tenho que fazer um algoritmo de função no visualg de uma calculadora. Eu fiz o algoritmo mas não sei como fazer função, alguém me ajudaaa
      o código está aqui, tem que por em função, obrigada
       
      Var
      n1,n2,r:real
      operacao:inteiro
      inicio
      repita
      escreval ("1. Multiplicação ")
      escreval ("2. Divisão ")
      escreval ("3. Subtração ")
      escreval ("4. Soma ")
      escreval ("5. Sair ")
      leia (operacao)
      se ( operacao = 5 ) entao
      fimalgoritmo
      fimse
      limpatela
      escreva ("Diga o primeiro numero: ")
      leia ( n1 )
      ate ( operacao >= 1 ) e ( operacao <= 5 )
      se ( operacao <= 4 ) e ( operacao >= 1 ) entao
      escreva ("Diga o segundo numero: ")
      leia (n2)
      fimse
      escolha operacao
      caso 1
      r <- n1*n2
      caso 2
      r <- n1/n2
      caso 3
      r <- n1-n2
      caso 4
      r <- n1+n2
      outrocaso
      escreva ("escolha incorreta")
      fimescolha
      escreval ("O resultado é: ", r)
      escreval ("")
      ate ( operacao = 5 )
      fimalgoritmo
    • Por LeoCS2724
      Preciso que alguem faça esse exercicios para min, pois estou fazendo uma lista de 100 exercicios, e preciso entrega-los até hoje.
      São para ser feitos em VISUAL G.


      3- Uma loja tem 10 cadastrados e deseja enviar uma correspondência a cada um deles anunciando um bônus especial. Faça um programa que leia o nome do cliente e o valor de suas compras no ano passado. Calcule e mostre um bônus de 10% se o valor das vendas for menor que R$1000,00 e 15% caso contrário.

      5- Faça um programa que receba a idade, altura e peso de 25 pessoas. Calcule e mostre:

      - A quantidade de pessoas com idade superior a 50 anos.

      - A média das alturas das pessoas com idade entre 10 e 20 anos.

      - A porcentagem de pessoas com peso inferior a 40 kg entre todas as pessoas analisadas;


      6- Faça um programa que receba 10 números e que calcule e mostre a quantidade de números entre 30 e 90.

      8- Faça um programa que receba várias idades e que calcule e mostre a média das idades digitadas. Finalize digitando idade igual a zero.


      9- A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário e o número de filhos. A prefeitura deseja saber:

      a) a média do salário da população;

      b) a média do número de filhos;

      c) o maior salário


      10- Escrever um algoritmo que lê 5 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação.


      11- Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um algoritmo que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico.

      14-Escrever um algoritmo que leia 20 valores para uma variável n e, para cada um deles, calcule a tabuada de 1 até n. Mostre a tabuada na forma:


      1 x n = n


      2 x n = 2n


      3 x n = 3n


      .......


      n x n = n2


      15- Faça um algoritmo que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero.


      16- Foi realizada uma pesquisa de algumas características físicas da população de uma certa região. Foram entrevistadas 500 pessoas e coletados os seguintes dados:

      a- Sexo: M (masculino) e F (feminino)

      b- cor dos olhos: A (azuis), V (verdes) e C (castanhos)

      c- cor dos cabelos: L (louros), C (castanhos) e P (pretos)

      d- Idade

      Deseja-se saber:

      a maior idade do grupo

      a quantidade de indivíduos do sexo feminino, cuja idade está entre 18 e 35 anos e que tenham olhos verdes e cabelos louros.
    • Por LeoCS2724
      Preciso que alguem faça esse exercicios para min, pois estou fazendo uma lista de 100 exercicios, e preciso entrega-los até hoje.
      São para ser feitos em VISUAL G.


      3- Uma loja tem 10 cadastrados e deseja enviar uma correspondência a cada um deles anunciando um bônus especial. Faça um programa que leia o nome do cliente e o valor de suas compras no ano passado. Calcule e mostre um bônus de 10% se o valor das vendas for menor que R$1000,00 e 15% caso contrário.

      5- Faça um programa que receba a idade, altura e peso de 25 pessoas. Calcule e mostre:

      - A quantidade de pessoas com idade superior a 50 anos.

      - A média das alturas das pessoas com idade entre 10 e 20 anos.

      - A porcentagem de pessoas com peso inferior a 40 kg entre todas as pessoas analisadas;


      6- Faça um programa que receba 10 números e que calcule e mostre a quantidade de números entre 30 e 90.

      8- Faça um programa que receba várias idades e que calcule e mostre a média das idades digitadas. Finalize digitando idade igual a zero.


      9- A prefeitura de uma cidade fez uma pesquisa entre seus habitantes, coletando dados sobre o salário e o número de filhos. A prefeitura deseja saber:

      a) a média do salário da população;

      b) a média do número de filhos;

      c) o maior salário


      10- Escrever um algoritmo que lê 5 valores para a, um de cada vez, e conta quantos destes valores são negativos, escrevendo esta informação.


      11- Chico tem 1,50 metro e cresce 2 centímetros por ano, enquanto Zé tem 1,10 metro e cresce 3 centímetros por ano. Construa um algoritmo que calcule e imprima quantos anos serão necessários para que Zé seja maior que Chico.

      14-Escrever um algoritmo que leia 20 valores para uma variável n e, para cada um deles, calcule a tabuada de 1 até n. Mostre a tabuada na forma:


      1 x n = n


      2 x n = 2n


      3 x n = 3n


      .......


      n x n = n2


      15- Faça um algoritmo que leia uma quantidade não determinada de números positivos. Calcule a quantidade de números pares e ímpares, a média de valores pares e a média geral dos números lidos. O número que encerrará a leitura será zero.


      16- Foi realizada uma pesquisa de algumas características físicas da população de uma certa região. Foram entrevistadas 500 pessoas e coletados os seguintes dados:

      a- Sexo: M (masculino) e F (feminino)

      b- cor dos olhos: A (azuis), V (verdes) e C (castanhos)

      c- cor dos cabelos: L (louros), C (castanhos) e P (pretos)

      d- Idade

      Deseja-se saber:

      a maior idade do grupo

      a quantidade de indivíduos do sexo feminino, cuja idade está entre 18 e 35 anos e que tenham olhos verdes e cabelos louros.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.