Ir para conteúdo
Entre para seguir isso  
Rafael Figueira

Algoritmo - phyton

Recommended Posts

Pessoal, bom dia!


Estou começando a estudar Phyton, estou com dificuldades para reproduzir um algoritmo para este pequeno programa abaixo, tentei usar com Vetores, com a condição de "para" ou "for", só que em uma determinada parte do algoritmo eu estou tendo dificuldades, alguém poderia me ajudar ? Desde já agradeço!



obs: Sendo só o algoritmo em português mesmo ja me ajuda, depois eu tento codificar para phyton.



Fazer um programa para implementar um sistema acadêmico de uma turma. O sistema deve pedir o número de alunos da turma e o nome das 6 disciplinas do semestre. Para cada aluno a disciplina deverá ter nota da PR1 e PR2. Se a nota for abaixo de 7 o sistema deverá pedir a nota da PR3 e calcular a nova media. A nova media é a média entre a nota da PR3 e a média do bimestre.


Compartilhar este post


Link para o post
Compartilhar em outros sites

@_Isis_

 

Segue o que consegui fazer de logica:

 

Algoritmo Sist_Academico

Declare Nome[n], disciplinas[6], n, nota1, nota2, nota3, media

Escreva “Informe o número de alunos: ”

Leia n

Para i de 1 a n passo 1

Escreva “Nome: “

Leia Nome[n] // vetor onde seriam armazenados os nomes dos alunos

Escreva “ Disciplina: “

Leia disciplinas // vetor onde seriam armazenadas as disciplinas

Escreva “Nota PR1:”

Leia nota1

Escreva “Nota PR2:”

Leia nota2

Media <- (nota1 + nota2) / 2

Se media > 7 então

Escreva “Aprovado”

Se não escreva “Informe nota PR3:”

Leia nota3

Media <- (media + pr3) / 2

Se media > 7 então escreva “Aprovado”

Se não escreva “Reprovado”

Fim se

Fim se

Fim para

Fim Algoritmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

As comparações não estão erradas? Se menor que 7 normalmente é reprovado, não "aprovado".

Compartilhar este post


Link para o post
Compartilhar em outros sites

Se o aluno tira 7 ele está aprovado então o correto seria >=7.

 

Você precisa de um outro for que vai pedir a nota de cada disciplina:

 

Para i de 1 a 6 passo 1

Escreva “Nota PR1, da disciplina ”, disciplina

Leia nota1

Escreva “Nota PR2:”

Leia nota2

Media <- (nota1 + nota2) / 2

Se media >= 7 então

Escreva “Aprovado”

Se não escreva “Informe nota PR3:”

// Dentro do senao

Leia nota3

Media <- (media + pr3) / 2

Se media >= 7 então escreva “Aprovado”

Se não escreva “Reprovado”

Fim se

Fim se

Fim para

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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
Entre para seguir isso  

  • Conteúdo Similar

    • Por lucas russo
      Boa noite ,pessoal não estou conseguindo resolver um exercício de algoritmo ,poderiam  me ajudar?
      Segue o exercício :
       
      Elabore um algoritmo que peça ao usuário que digite 1 numero maior que 500 retorne a soma dos fatoriais  de cada numero digitado compreendido  num inervá-lo de 2 números digitados .
    • Por rafaelwww
      Sou novo no fórum e essa é a minha primeira postagem.
      não sei se essa é área apropriada para esse tipo de postagem, mas vamos lá eu tenho um site e queria criar uma opção no qual o usuário poderia gravar um áudio que seria salvo em um banco de
      dados, mas não tenho ideia de como fazer isso se existe uma API que faça isso . 
      Peço por gentileza se alguém pudesse me dar uma dica.
       
    • Por Jeft
      Depois de "um ano sabático", estou voltando ao desenvolvimento em PHP.
      Neste retorno, me deparei com a seguinte necessidade: 
      Através de um cadastro, gostaria de criar um link passando alguns parâmetros, tipo:
      globo.com.br
      Crio o cadastro FLAMENGO.
      Aí queria criar "automaticamente" um link flamengo.globo.com.br para acessar através do browser. Seria o equivalente a globo.com.br/noticia/busca.php?time=flamengo
      Se cadastro Vasco: vasco.globo.com.br
      Não sei nem por onde começar... Já tentei algumas coisas mas ainda não tive sucesso.
      Obrigado
    • Por Thais Hoe
      Bom dia!
      Trabalho muito pouco com o JavaScript e preciso fazer um script que:
      Pega a localização do cliente >> Faz o calculo da distância entre a localização e cada loja >> Faz o calculo de qual loja está mais próxima (em KM) >> Se a distancia da loja mais próxima for inferior a 30km = Mostra aviso com o endereço da loja mais próxima (se possível um botão pra ir pra pagina de informações, ou um popup que consiga colocar endereço,telefone,etc)  >> Se a distancia da loja mais próxima for superior a 30km = exibe aviso de que não tem lojas próximas a localização atual dele.
       
      Fiz com "alert" os avisos, mas se eu conseguisse fazer tudo isso com um popup seria legal. Por hora coloquei duas lojas apenas, mas posteriormente vou ter que colocar mais de 10, então se houver um jeito de fazer esse código ser mais "limpo" quando isso acontecer (criando uma lista ou algo do gênero) também agradeço.
       
      Tenho um código mais ou menos pronto, mas como não domino a linguagem acredito que contém alguns erros:
      // Lojas var Americana = { posicao : { latitude1 : -22.742685, longitude1 : -47.341661 } } var BeloHorizonte = { posicao : { latitude2 : -19.935678, longitude2 : -43.970808 } } var Parametro = { distanciaMaxima : 30, // Funcao que ira verificar se o cliente esta por perto mostraLoja : function( posicao ){ var distancia = MenorDistancia; // Verifica se o cliente nao esta muito longe if( distancia <= this.distanciaMaxima ){ if ( confirm( 'A loja mais próxima está à ' + distancia + ' KM ' ) ){ alert( 'Ver mais dados da loja' ); } } else { alert( 'Ops, você está muito longe, não temos uma loja próxima' ); } } }; // Objeto localizacao var Localizacao = { // Inicia inicia : function(){ // Quando o browser retorna a posicao do usuario var sucesso = function( posicao ){ Parametro.mostraLoja( posicao.coords ); }; // Erro no processo de obter a posicao var erro = function( erro ){ var erroDescricao = 'Ops, '; switch( erro.code ) { case erro.PERMISSION_DENIED: erroDescricao += 'usuário não autorizou a Geolocation.'; break; case erro.POSITION_UNAVAILABLE: erroDescricao += 'localização indisponível.'; break; case erro.TIMEOUT: erroDescricao += 'tempo expirado.'; break; case erro.UNKNOWN_ERROR: erroDescricao += 'não sei o que foi, mas deu erro!'; break; } alert( erroDescricao ) }; // Verifica se o browser do usuario tem suporte a geolocation if ( navigator.geolocation ){ navigator.geolocation.getCurrentPosition( sucesso, erro ); } else { erro(); } } }; // Objeto para calcular a distancia entre dois pontos // Adaptado dessa formula http://stackoverflow.com/questions/27928/how-do-i-calculate-distance-between-two-latitude-longitude-points var Distancia1 = { distanciaEntreDoisPontos1 : function( pontoInicial, pontoFinal ){ var R = 6371; // Radio da Terra var dLat = this.graus2Radianos( pontoFinal.latitude - pontoInicial.latitude1 ); var dLon = this.graus2Radianos( pontoFinal.longitude - pontoInicial.longitude1 ); var a = Math.sin( dLat/2 ) * Math.sin( dLat/2 ) + Math.cos( this.graus2Radianos( pontoInicial.latitude1 ) ) * Math.cos( this.graus2Radianos( pontoFinal.latitude ) ) * Math.sin( dLon/2 ) * Math.sin( dLon/2 ); var c = 2 * Math.atan2( Math.sqrt( a ), Math.sqrt( 1-a ) ); var d = R * c; return d; }, graus2Radianos : function( graus ){ return graus * ( Math.PI/180 ) } }; // Objeto para calcular a distancia entre dois pontos // Adaptado dessa formula http://stackoverflow.com/questions/27928/how-do-i-calculate-distance-between-two-latitude-longitude-points var Distancia2 = { distanciaEntreDoisPontos2 : function( pontoInicial, pontoFinal ){ var R = 6371; // Radio da Terra var dLat = this.graus2Radianos( pontoFinal.latitude - pontoInicial.latitude2 ); var dLon = this.graus2Radianos( pontoFinal.longitude - pontoInicial.longitude2 ); var a = Math.sin( dLat/2 ) * Math.sin( dLat/2 ) + Math.cos( this.graus2Radianos( pontoInicial.latitude2 ) ) * Math.cos( this.graus2Radianos( pontoFinal.latitude ) ) * Math.sin( dLon/2 ) * Math.sin( dLon/2 ); var c = 2 * Math.atan2( Math.sqrt( a ), Math.sqrt( 1-a ) ); var d = R * c; return d; }, graus2Radianos : function( graus ){ return graus * ( Math.PI/180 ) } }; var MenorDistancia = Math.min (Distancia1.distanciaEntreDoisPontos1, Distancia2.distanciaEntreDoisPontos2); $( document ).ready( function(){ Localizacao.inicia(); } );  
    • Por MatheusH
      Olá, toda vez que eu respondo um comentário fica escrito: Seu conteúdo precisará ser aprovado por um moderador. 
       
      E tem uns comentários que nem foram aprovados e que acho que seria de utilidade para quem estava com dúvida.
       
      Como posso resolver isso? eu não sou um bot ahushaus
×

Informação importante

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