Jump to content

ajuda


Guest s33k_

Recommended Posts

Não sei se sabes definir funções, por isso aqui fica um exemplo de como o podes fazer:

def funcao(argumento):
    print "O argumento passado foi " + argumento
    return argumento

Em relação à função em si, o que tens de fazer é:

-> Fazeres um loop de 1 até {argumento passado}, incrementando uma variável (i por exemplo) a cada iteração.

---> Nesse loop, mostras os asteriscos i vezes.

Mais que isto, só dando a resolução. 😉

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

Aqui fica uma forma simples de como fazer:

def trig(n):
    for i in range(1,n+1):
        print i*"*"

>>> trig(4)

*

**

***

****

Eheh, das pelhores soluções possíveis. 😉

No entanto, estás a usar coisas (o range()) que não existem noutras linguagens (ou pelo menos, só existem em algumas).

Se ele tiver a começar a programar, era preferível ele fazer algo como:

def trig(n):
    nivel = 0
    while nivel <= n:
        nivel += 1
        i = 0
        while i < nivel:
            print "*",
            i += 1
        print 

É mais trabalhoso de escrever, mas desta maneira é exactamente como se processam as coisas. 🙂

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

djthyrax, mas dessa maneira não está a aprender Python.

Acho que é esse o objectivo e não estar a aprender técnicas arcaicas. Aprender técnicas à muito esquecidas só é necessário quando for aprender linguagens igualmente arcaicas 😉

"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Link to comment
Share on other sites

djthyrax, mas dessa maneira não está a aprender Python.

Acho que é esse o objectivo e não estar a aprender técnicas arcaicas. Aprender técnicas à muito esquecidas só é necessário quando for aprender linguagens igualmente arcaicas 😉

Se ele tiver a começar a programar, (...)

Ou seja, se ele quer entender como funcionam, tem de olhar para além de um simples for i in range(1, 5): print i*"*", não pode ficar dependente das características da linguagem, tem que aprender a lógica e a sintaxe vai e vem. Se não for assim, como vai ter ele bases para progredir noutra linguagem? 🙂

E só pus aqui este método porque ele não diz se está a aprender a programar ou se está a aprender Python.

Não peças ajuda por PM! A tua dúvida vai ter menos atenção do que se for postada na secção correcta do fórum!

Link to comment
Share on other sites

E só pus aqui este método porque ele não diz se está a aprender a programar ou se está a aprender Python.

Mas aí está uma das vantagens de se aprender Python como primeira linguagem. Não tens que aceder a lógicas tão rudimentares logo no inicio.

Achas que é bom para uma pessoa se estiver a aprender programação darem-lhe logo código com aritmética de apontadores, chamadas directas ao assembly, etc?

Claro que não, isso fica para quando o programador tiver maior maturidade e decidir investigar um pouco mais fundo. Óbvio que o teu código não é algo tão bruto, mas dá para passar a ideia.

Para além que o código do Triton para quem está a aprender é muito mais interessante, já que introduz mais conceitos base da linguagem em questão. É feita uma referência a um ciclo (for) como no teu código tem os while. Depois ainda introduz o conceito de range e o conceito de multiplicação entre tipos diferentes. Tudo noções base do Python que se deve aprender no inicio, para além que é uma forma mais correcta de programar em Python.

"Give a man a fish and he will eat for a day; Teach a man to fish and he will eat for a lifetime. The moral? READ THE MANUAL !"

Sign on a computer system consultant's desk

Link to comment
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
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.