Foorumit

iOS Miten sin, cos ja tan käytetään?

M

herra pingviini9

Alkuperäinen juliste
1. elokuuta 2008
  • 13. toukokuuta 2009
Miten sin, cos ja tan käytetään iPhone sdk:ssä? Ja myös kuinka käytät niiden käänteistä?

Kiitos

SilentPanda

Moderaattori emeritus
8. lokakuuta 2002
Bambumetsä


  • 13. toukokuuta 2009
Oletan, että käyttäisit vain C-versioita sanoista cos, sin ja tan. M

herra pingviini9

Alkuperäinen juliste
1. elokuuta 2008
  • 13. toukokuuta 2009
Saisinko siitä esimerkin, kiitos.

Kiitos

PhoneyDeveloper

2. syyskuuta 2008
  • 13. toukokuuta 2009
Koodi: |_+_|
Onko jotain muuta?

Kokeile kirjoittaa tämä terminaaliin tai googlettaa sitä

ihmisen syntiä M

herra pingviini9

Alkuperäinen juliste
1. elokuuta 2008
  • 13. toukokuuta 2009
Mutta kun teen 'tan(1)':n xcodessa, se antaa minulle takaisin numeron 1556013989!?!? Mutta 1:n rusketus on 0,017455... Mitä teen väärin?

Kiitos R

Ron C

18. heinäkuuta 2008
Chicagon alue
  • 13. toukokuuta 2009
Haisee tyyppiongelmalta

MrPenguin9 sanoi: Mutta kun teen 'tan(1)' xcodessa, se antaa minulle takaisin numeron 1556013989!?!? Mutta 1:n rusketus on 0,017455... Mitä teen väärin?

Kiitos

1556013989? Voiko se vain tulostaa liukulukumuotoisen arvon kokonaislukuna ilman tyypin muuntamista?

Mistä saat tämän tan()-funktion? math.h? Mitä tyyppiä esimerkiksi tan() palauttaa? Vaatiiko se radiaaneja vai asteita? Mihin tyyppiin tallennat palautusarvon?

Tarkistin man-sivulta tan():n ja se sanoo:
Koodi: |_+_| Joten... ainoa funktio, joka vastaa tätä allekirjoitusta, ottaa kaksinkertaisen (automaattinen muunnos) ja palauttaa kaksinkertaisen (myös automaattisen muunnoksen) ja ottaa radiaaneja.

Miten näet arvon? Miltä koodisi näyttää?

EDIT: Tarkistin juuri tan(1 radiaani) arvon Calculator.appista - siinä lukee: 1.557408. Joten... miksi sen pitäisi mielestäsi olla 0,017455? Se on rusketuksen arvo (1 DEGREE) M

herra pingviini9

Alkuperäinen juliste
1. elokuuta 2008
  • 13. toukokuuta 2009
Tässä koodini MainView.m-koodista: |_+_| (Voi, enkä tiennyt, että tan(x) oli radiaaneina.) Kiitos avusta! G

Guiyon

19. huhtikuuta 2008
Cambridge, MA
  • 13. toukokuuta 2009
MrPenguin9 sanoi: -(void)awakeFromNib {
Text.text = [NSString stringWithFormat'%d', tan(1)];
}

Ongelmasi on, tan palauttaa tuplaarvon, mutta %d-muotoinen merkkijono odottaa kokonaisluvun. '%d':n muuttaminen arvoksi '%lf' korjaa tilanteen. Kun kirjoitat terminaaliin 'man 3 printf', saat paljon enemmän tietoa Applen (ja monien muiden kirjastojen) käyttämistä printf-muotoisista merkkijonoista; etsi osa, joka alkaa sanoilla 'muotomerkkijono koostuu nollasta tai useammasta direktiivistä' R

Ron C

18. heinäkuuta 2008
Chicagon alue
  • 14. toukokuuta 2009
Nopea huomautus automaattisesta muuntamisesta ja liukulukujen oudoista...

Guiyon sanoi: Ongelmasi on, tan palauttaa tuplaarvon, mutta %d-muotoinen merkkijono odottaa kokonaisluvun. '%d':n muuttaminen arvoksi '%lf' korjaa tilanteen. Kun kirjoitat terminaaliin 'man 3 printf', saat paljon enemmän tietoa Applen (ja monien muiden kirjastojen) käyttämistä printf-muotoisista merkkijonoista; etsi osa, joka alkaa sanoilla 'muotomerkkijono koostuu nollasta tai useammasta direktiivistä'

Näitä 'maagisia' muunnoksia ei tapahdu, ellei kääntäjä tiedä, että sellainen pitäisi olla. Yksi tapaus, jossa se ei tiedä, on koodissa, kuten stringWithFormat: - se ei todellakaan tiedä, että muunnoksen pitäisi tapahtua, joten se kulkee iloisesti kaksinkertaisena. Kun aloitat pelaamisen liukulukutyypeillä, sinun on kiinnitettävä siihen huomiota.

Toinen lyhyt huomautus liukulukutyypeistä. Älä kirjoita koodia kuten: Koodi: |_+_| Ongelma =- ja liukulukutyyppien kanssa on, että ne ovat hyvin epätodennäköisiä. Jopa jotain tällaista: Koodi: |_+_| Nämä numerot ovat samat taulullasi. Niiden ei tarvitse olla tietokoneen sisällä. Se on outoa, mutta siihen pitää tottua. M

herra pingviini9

Alkuperäinen juliste
1. elokuuta 2008
  • 15. toukokuuta 2009
Se toimi.

Kiitos kaikille avusta!