Jump to content
Ramon Batista

Exercícios de Programação Phyton

Recommended Posts

O que você não sabe fazer exatamente?

Não sabe como funciona loop na linguagem, não consegue identificar um padrão na soma....?

Share this post


Link to post
Share on other sites
2 horas atrás, _Isis_ disse:

O que você não sabe fazer exatamente?

Não sabe como funciona loop na linguagem, não consegue identificar um padrão na soma....?

Estou em duvida com o padrão, até o momento desenvolvi isso:

 

 n=int(input("n:"))
x=1
y=n
w=0
while x<=y:
    c=x/(y-(x-1))
    w+=c
    x+=1
print(w)

 

Porem não sei se estou seguindo a linha de raciocínio correto. 

Share this post


Link to post
Share on other sites

O que está estranho p/ mim é aquele 2 no numerador... Eu conheço a série como


1/n + 2/(n-1) + 3/(n-2) + ... + (n-1)/2 + n/1

Eu usaria o for no lugar do while. É menos coisa p/ se controlar:

 

n = input("n: ")
soma = 0
for x in xrange(1,n+1):
  soma = soma + x/float(n-x+1)
  
print(soma)

Isso no Python 2.7. No 3 não tem xrange, você usa o range (mas funcionamento é o mesmo: ele gera inteiros de início até final-1) e não é necessário converter o denominador p/ float (no Python 2.7 a divisão é inteira por padrão. No 3 funciona como divisão normal com float; p/ você ter a divisão como inteiro é //)

 

Share this post


Link to post
Share on other sites
Em 24/11/2017 at 20:07, AdrianoDBA disse:

Função Harmonica 1/n = Ln x mais simples!!

 

Pode ser mais simples, mas não atende se o objetivo é aprender a criar funções na linguagem.

Share this post


Link to post
Share on other sites

Função que falei é função matemática pra poder entender o porque de uma ser a outra.
Agora pra programar uma função ai sim pode escolher a melhor maneira de criar e colocar pra funcionar.
Desculpa nao me fazer entender!!!

Share this post


Link to post
Share on other sites
2 horas atrás, AdrianoDBA disse:

Função que falei é função matemática pra poder entender o porque de uma ser a outra.
Agora pra programar uma função ai sim pode escolher a melhor maneira de criar e colocar pra funcionar.
Desculpa nao me fazer entender!!!

 

Tranquilo. É tipo o lance de calcular fibonacci recursivamente. A fórmula de Binet é mais eficiente, mas quando o assunto é recursão...

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By flands
      Pessoal, bom dia!
       
      Estou tentando ler o conteúdo de um arquivo binário em Python para montar um dicionário, mas ao atingir o final do arquivo o programa está "voando" e não estou conseguindo capturar a exceção. Quando faço o debug, vejo que ele inclui os dados no dicionário corretamente, mas ao chegar na última posição do arquivo, o comando pickle.load(arquivo) "voa" e nenhuma outra linha de código após o while é executada. Nem o comando arquio.close() é executado.
      Abrindo o arquivo .dat em um bloco de notas, a exibição dele é semelhante ao seguinte trecho:
      S'001' p0 .S'Toninho Silva' p0 .S'Prefeito' p0 .S'Tijuca' p0 .S'2300' p0 . O código que lê do arquivo binário, grava no dicionário e, ao final, exibe na tela o resultado (que é parte do conteúdo do dicionário) segue abaixo:
      try: dic_votos_candidato = dict() arquivo = open('eleicoes.dat', 'rb') while arquivo: soma = 0 cod_candidato = pickle.load(arquivo) nome_candidato = pickle.load(arquivo) cargo = pickle.load(arquivo) regiao = pickle.load(arquivo) num_votos = pickle.load(arquivo) if dic_votos_candidato.get(nome_candidato): soma = int(dic_votos_candidato[nome_candidato]) soma = soma + int(num_votos) dic_votos_candidato[nome_candidato] = soma else: dic_votos_candidato[nome_candidato] = int(num_votos) arquivo.close() for chave in dic_votos_candidato.keys(): print chave, dic_votos_candidato[chave] except IOError: print "Erro ao abrir o arquivo. Verifique se o arquivo foi criado." print "Caso o arquivo ainda nao exista, use a opcao 1 do menu principal para cria-lo." exit() finally: opcao = raw_input('\nPara continuar, digite a opcao desejada: ') trata_listar(opcao) Desde já agradeço a ajuda!
    • By r1que
      como camuflar a url dentro do arquivo e colocar em formato .pyo alguem sabe ?
    • By Augustomesquita
      Bom dia pessoal!
      Vocês também estão programando em primeira pessoa? Recentemente escrevi este artigo e gostaria de compartilhar a ideia com vocês.
      Pare de programar em primeira pessoa!
    • By Rengavitp
      Boa noite Pessoal,
       
      Estou tentando implementar um projeto em python, mas comecei a aprender python agora e estou tendo dificuldade em fazer comandos sql com ele. No código abaixo sempre recebo a mensagem de erro: 
      cursor.execute(sql,valor) File "/usr/lib/python2.7/dist-packages/MySQLdb/cursors.py", line 210, in execute query = query % args TypeError: not all arguments converted during string formatting  
      o código é este abaixo, se eu passar um valor fixo funciona normal, mas colocando valor dinamico nao vai...
      con = MySQLdb.connect(host="192.168.0.10, port=3306 user="@@@@", passwd="@@@@@@@@", db="acessos") cursor = con.cursor() valor = ('teste') sql = "insert into registros_acesso values (%s)" cursor.execute(sql,valor) con.commit() con.close() Alguém pode me dar uma ajuda?
    • By SSO990
      Escrever um programa que leia um número não determinado de valores e calcule a média aritmética dos valores lidos, a quantidade de valores positivos, a quantidade de valores negativos e o percentual de valores negativos e positivos. A leitura deve parar quando o número informado for 9999. Mostre os resultados. 
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.