» »

python pomoč

python pomoč

studentka ::

Oj!

A mi lahko en prosim pomaga tole resit?

De finirajte razred Romb, ki vam omogoci naslednje:
1. kreiranje objekta romb, ki ima podano stranico a in kotom x (kot x med premico a in d)
2. izracun ploscine; metoda vrne ploscino
3. risba romba s pomocjo modula turtle (a)
4. risba n enakomerno zarotiranih rombov s pomocjo modula turtle;
n podate kot vhodni parameter (b)

Hvala!

Lp

crush ::

Ce bi rada imela razred potovanje, ki mu podamo stevilo km in ceno benzina na kilometer, hocemo pa da nam izracuna ceno potovanja bi blo neki podobnega:
class potovanje:
  def __init__(self, steviloKm, cenaNaKm):
    _steviloKm = steviloKm
    _cenaNaKm = cenaNaKm

  def izracunajCenoPoti:
    return _steviloKm*_cenaNaKm

ko ustvaris objekt potovanje, se klice konstruktor (__init__) - podati mu mores stevilo km in ceno na km
ko imas objekt lahko klices funkcijo izracunajCenoPoti, ta ti vrne ceno.

modula turtle zal ne poznam

ps: zgornjo kodo sem spisal z glave in ni preverjeno da dela :)

edit: pa kako se vstavlja kodo tu noter?? :S

Zgodovina sprememb…

  • spremenilo: crush ()

studentka ::

O hvala!

To sm rabla da mi nekdo mal razsvetli zadevo glede teh razredov :D

Ful hvala!

lp

studentka ::

Tole me naprej zanima: Razred Romb sm ustvarila. A pol vnašam stranico a in kot x kot int(raw_input) v glavnem programu?

jype ::

Ja, raw_input je primeren za take reči.

Ampak raw_input vedno vrne niz (string) zato je pametno ob vnosu paziti na napake (exceptions), takole:

try:
  vnos = raw_input('Vnesi stranico: ')
  a = int(vnos)
except ValueError:
  print '%r ni nobena stevilka.' % vnos

Zgodovina sprememb…

  • spremenilo: jype ()

studentka ::

A mi lahko še kdo pomaga z risanjem tega romba?

Prosim.

lp

Gandalfar ::

daj pokazi kodo, ki jo imas zaenkrat spisano in kje se ti zatakne?

studentka ::

def Romb(kot):
turtle.left(45)
turtle.forward(100)
turtle.left(45)
turtle.forward(100)
turtle.left(45)
turtle.forward(100)
turtle.left(45)
turtle.forward(100)
turtle.left(45)
turtle.fill(0)

Romb(0,0)
turtle.done()

Se mi zdi da bi morala nekje še vstavit mainloop sam nimam pojma kam pa kako. Se mi zdi da tole sploh ni ql. Pa tud pol uno za zarotirat romb ne znam. Hvala.

Lp

Gandalfar ::

pokazi cel program, definicijo turtla, kako rises na zaslon in vse

studentka ::

import math
import turtle

class Romb:
    def __init__(self, a, x):
      self.a = a
      self.x = x

    def ploscina(self):
        return a**2*sinh(x)

    def Romb(kot):
        turtle.fill(1)
        turtle.color("red")
        turtle.left(45)
        turtle.forward(100)
        turtle.left(45)
        turtle.forward(100)
        turtle.left(45)
        turtle.forward(100)
        turtle.left(45)
        turtle.forward(100)
        turtle.left(45)
        turtle.fill(0)

Romb(0,0)
turtle.done()

# glavni program
if __name__ == "__main__":
    r = Romb (15, 45)
    r.ploscina()
    print "Ploscina romba je %d: ", Romb.ploscina

Zgodovina sprememb…

studentka ::

Tole je vse kar mam pa se mi zdi da ni prav. Ne znam tega narest, sm že vse skupi probala skombinirat pa mi ne gre. A mi lahko mal svetuješ? Vsaj tok da bom vedla narest, da se tud naučim.

jype ::

sami left(45) ne bodo OK, to rišeš osemkotnik.

Za romb potrebuješ
left(kot_ki_ga_je_podal_uporabnik)
forward(razdalja_ki_jo_je_podal_uporabnik)
left(90-kot_ki_ga_je_podal_uporabnik)
forward(razdalja_ki_jo_je_podal_uporabnik)
left(90+kot_ki_ga_je_podal_uporabnik)
forward(razdalja_ki_jo_je_podal_uporabnik)
left(90-kot_ki_ga_je_podal_uporabnik)
forward(razdalja_ki_jo_je_podal_uporabnik)

in če se hočeš obrnt nazaj proti severu še left(90)

Vse left seveda lahko komot zamenjaš z right in bo reč nagnjena na drugo stran, kar je bolj "običajno".


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

python-rabim pomoč

Oddelek: Programiranje
162788 (1018) rnla1973
»

Python - pomoč (strani: 1 2 3 )

Oddelek: Programiranje
10318146 (8894) black ice
»

Python, prosim za pomoc pri programiranju (strani: 1 2 3 )

Oddelek: Programiranje
10414061 (10163) lenika
»

Python, novo vprašanje...

Oddelek: Programiranje
61029 (940) jype
»

[Python] syntax error-invalid syntax

Oddelek: Programiranje
51760 (1730) Vesoljc

Več podobnih tem