Jak na cyklus – Python – Fórum – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Jak na cyklus – Python – Fórum – Programujte.comJak na cyklus – Python – Fórum – Programujte.com

 

Hledá se programátor! Plat 1 800 € + bonusy (firma Boxmol.com)
Honza
~ Anonymní uživatel
393 příspěvků
5. 2. 2013   #1
-
0
-

Zdravim vas kolegove

chtel bych zjistit rozdil hodnot funkce cosinus pro hodnoty 1-10. Tedy:

for n in range(1,11):

       x=math.cos(n)

       print  x

tento jednoduchy skript mi vypise hodnoty cosinu pro n=1-10. Ted ale potreduji zjistit rozdily mezi jednotlivymi hodnotami a to tak ze vezmu hodnotu pro n=2 a odectuji od hodnoty pro n=1. Potom vezmu hodnotu pro n=3 a odectuji od n=2.Tedy:

math.cos(2)-  math.cos(1)

math.cos(3)-  math.cos(2)

math.cos(4)-  math.cos(3)

.

.

math.cos(10)-  math.cos(9)

a nakonec 

math.cos(10)-  math.cos(1)

potom bych chtel tyto hodnoty secist...to bych ale uz snad dal dohromady

Dekuji ji vam za vas cas a pripadne navrhy Honza

Nahlásit jako SPAM
IP: 37.188.226.–
Reklama
Reklama
zlz
~ Anonymní uživatel
634 příspěvků
6. 2. 2013   #2
-
0
-

   

for n in range(2,11):
        x = math.cos(n) - math.cos(n-1)
        print x
Nahlásit jako SPAM
IP: 80.188.216.–
sairon0
Newbie
6. 2. 2013   #3
-
0
-

Pokud nepotřebuješ univerzální řešení, tak viz zlz. Včetně sesumování se to pak dá napsat jako oneliner:

from math import cos

print sum([cos(x) - cos(x - 1) for x in xrange(2, 11)]) + cos(10) - cos(1)
Nahlásit jako SPAM
IP: 62.245.90.–
prosteja
~ Anonymní uživatel
21 příspěvků
7. 2. 2013   #4
-
0
-

Možná tu komprehenzaciu naradit generátorovou notací,

ak sa nemýlim vo väčšine prípadou je rychlejšia.

Nahlásit jako SPAM
IP: 188.167.34.–
sairon0
Newbie
8. 2. 2013   #5
-
0
-

Pravda, díky za připomínku :) Jsem nejprve psal tu comprehension a pak ji teprve obalil do sumu, takže hranaté závorky můžou pryč. Ten rozdíl je tam co do rychlosti zanedbatelný (ze zvědavosti jsem to vyzkoušel a dělá to něco málo přes 1 % i při zvětšení na 100 členů toho rozsahu), ale list comprehension je tu zbytečný, nehledě na to, že paměťová náročnost u tohoto poroste, u generátoru ne.  

Nahlásit jako SPAM
IP: 62.245.90.–
Zjistit počet nových příspěvků

Přidej příspěvek

Toto téma je starší jak čtvrt roku – přidej svůj příspěvek jen tehdy, máš-li k tématu opravdu co říct!

Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku

×Vložení zdrojáku

×Vložení obrázku

Vložit URL obrázku Vybrat obrázek na disku
Vlož URL adresu obrázku:
Klikni a vyber obrázek z počítače:

×Vložení videa

Aktuálně jsou podporována videa ze serverů YouTube, Vimeo a Dailymotion.
×
 
Podporujeme Gravatara.
Zadej URL adresu Avatara (40 x 40 px) nebo emailovou adresu pro použití Gravatara.
Email nikam neukládáme, po získání Gravatara je zahozen.
-
Pravidla pro psaní příspěvků, používej diakritiku. ENTER pro nový odstavec, SHIFT + ENTER pro nový řádek.
Sledovat nové příspěvky (pouze pro přihlášené)
Sleduj vlákno a v případě přidání nového příspěvku o tom budeš vědět mezi prvními.
Reaguješ na příspěvek:

Uživatelé prohlížející si toto vlákno

Uživatelé on-line: 0 registrovaných, 10 hostů

Podobná vlákna

FPU-jak spravit cyklus? — založil Syntezsa

Cyklus For — založil nergaldiabolus

Cyklus for(...... — založil Hansel

Cyklus — založil Mike

Cyklus — založil Jirka

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý