Vorkomma-Stellen berechnen



  • Sqwan schrieb:

    Die ganzen 171 ziffern gibt er aber nicht aus.
    Und so ohne weiteres kann es glaube ich garkeine Programmiersprache.

    Transcript show: (2 raisedToInteger: 567). 
    483067190377157293086918986366498418037365916213304374832154406431439892786195053067024220822740322245307952003937772147170634832630373456967863584183385093587122601852928
    
    Transcript show: (3 raisedToInteger: 1000).
    1322070819480806636890455259752144365965422032752148167664920368226828597346704899540778313850608061963909777696872582355950954582100618911865342725257953674027620225198320803878014774228964841274390400117588618041128947815623094438061566173054086674490506178125480344405547054397038895817465368254916136220830268563778582290228416398307887896918556404084898937609373242171846359938695516765018940588109060426089671438864102814350385648747165832010614366132173102768902855220001
    


  • sorry für die lange Zeile



  • zum Beispiel schrieb:

    Sqwan schrieb:

    Die ganzen 171 ziffern gibt er aber nicht aus.
    Und so ohne weiteres kann es glaube ich garkeine Programmiersprache.

    Transcript show: (2 raisedToInteger: 567). 
    4830671903771572930869189863664984180373659162[...]
    
    Transcript show: (3 raisedToInteger: 1000).
    13220708194808066368904552597521443659654220327521481[...]
    

    Verrätst du uns auch womit du das machst?

    So... Dann habe ich das System denke ich verstanden.
    Für den nächsten mal ausführlich:

    Stellen von 2^567

    10 ^ ( ln(2)/ln(10) * 567 ) 
    <=> 10 ^ (0,301 * 567)
    <=> 10 ^ (170,667)
    <=> 10 ^ (170 + 0,667)
    <=> 10 ^ (0,667) * 10^170
    <=> 4,645 * 10 ^ 170
    
    Sind dann 171 Stellen.
    

    Gleiches mit 3^1000

    10 ^ ( ln(3)/ln(10) * 1000 )
    <=> 10 ^ (0,477121 * 1000)
    <=> 10 ^ (477,121)
    <=> 10 ^ (477 + 0,121)
    <=> 10 ^ (0,121) * 10^477
    <=> 1,321 * 10^477
    
    Sind dann 478 Stellen.
    

    So. Wenn das so richtig ist habe ichs verstanden.

    Was mich dann noch interessieren würde ist, wieso das mit ln geht.
    Der ln ist ja normal zur basis e.
    ^^ Außerdem so ganz nebenbei und ein bischen ab vom thema, wann man => schreibt und wann <=>


  • Mod

    Sqwan schrieb:

    zum Beispiel schrieb:

    Transcript show: (2 raisedToInteger: 567). 
    4830671903771572930869189863664984180373659162[...]
    
    Transcript show: (3 raisedToInteger: 1000).
    13220708194808066368904552597521443659654220327521481[...]
    

    Verrätst du uns auch womit du das machst?

    Die Programmiersprache heißt Smalltalk. Das gleiche geht aber auch in Sprachen wie Haskell, Python, Lisp, Ruby und anderen. Etwas besonderes ist das heute nicht mehr (trotzdem interessant, natürlich).



  • Christoph schrieb:

    Sqwan schrieb:

    zum Beispiel schrieb:

    Transcript show: (2 raisedToInteger: 567). 
    4830671903771572930869189863664984180373659162[...]
    
    Transcript show: (3 raisedToInteger: 1000).
    13220708194808066368904552597521443659654220327521481[...]
    

    Verrätst du uns auch womit du das machst?

    Die Programmiersprache heißt Smalltalk. Das gleiche geht aber auch in Sprachen wie Haskell, Python, Lisp, Ruby und anderen. Etwas besonderes ist das heute nicht mehr (trotzdem interessant, natürlich).

    Mathematica ist sogar spezialisiert darauf, praktisch alle Rechnungen mit beliebiger Genauigkeit auszuführen. (3^1293812 wird mir praktisch instantan angezeigt - das paste ich jetzt aber nicht.)

    Für beliebig große Potenzen kann man auch ganz schnell selbst einen (wahrscheinlich relativ ineffizienten) Algorithmus in jeder Sprache schreiben, wenn man einfach Strings und die schriftliche Multiplikation wie man sie in der Grundschule gelernt hat verwendet.



  • schon, aber können Haskell / Python / LISP / Ruby auch das da?

    (Complex real: 2 imaginary: 1) reciprocal. 
    (2/5) - (1/5) i
    
    1/2 raisedToInteger: 16. 
    (1/65536)
    


  • Kann irgend eine dieser sprachen mir sagen, wann ich => verwenden muss und wann <=>

    Oder warum das mit dem LN geht, der doch zur basis e ist?!


  • Mod

    Sqwan schrieb:

    Kann irgend eine dieser sprachen mir sagen, wann ich => verwenden muss und wann <=>

    A => B bedeutet "Aus A folgt B".
    A <=> B bedeutet "(Aus A folgt 😎 und (aus B folgt A)".

    Man kann also schreiben:
    Es regnet => Die Straße ist nass.
    Aber nicht:
    Es regnet <=> Die Straße ist nass,
    denn aus "die Straße ist nass" folgt nicht "es regnet".

    Es ergibt auch keinen Sinn zu schreiben:
    2 <=> 1+1
    weil "aus 2 folgt 1+1 und aus 1+1 folgt 2" keine sinnvolle Aussage ist. Sinnvoll wäre dagegen:
    2=1+1 <=> 1+1=2

    Was du aber in deinem Post wahrscheinlich schreiben möchtest, sind einfache Gleichheitszeichen.

    Sqwan schrieb:

    Oder warum das mit dem LN geht, der doch zur basis e ist?!

    Der 10er-Logarithmus unterscheidet sich vom natürlichen Logarithmus nur um einen konstanten Faktor. Es gilt: log_10(a) = ln(a) / ln(10).
    Dabei ist es sogar egal, ob auf der rechten Seite der Gleichung ln oder irgendein anderer Logarithmus steht, das gilt immer.

    zum Beispiel schrieb:

    schon, aber können Haskell / Python / LISP / Ruby auch das da?

    (Complex real: 2 imaginary: 1) reciprocal. 
    (2/5) - (1/5) i
    
    1/2 raisedToInteger: 16. 
    (1/65536)
    

    Haskell kennt von Haus aus rationale Zahlen beliebiger Genauigkeit und komplexe Zahlen. Allerdings kann man die vorgegebenen komplexen und rationalen Zahlen nicht kombinieren, soweit ich weiß, dein erstes Beispiel würde also nur mit floating point gehen. Es dürfte aber nicht schwer sein, das richtig zu implementieren. Vielleicht gibt es dafür auch schon eine Library.



  • Naja... Ich meine in der Uni schreiben wir oft sowas in der art:

    0 = x^2 - 9 | +9
    => 9 = x^2 | wurzel()
    => x1 = 3
    => x2 = -3

    Ab und zu haben wir statt => auch <=>
    Das ist erstaunlich selten, weshalb ich nie verstanden habe, wann man es verwendet



  • In Pfeilrichtubng ist der Schluß immer richtig.

    0 = x^2 - 9
    <=>
    9 = x^2
    <=
    x = 3

    (Also aus x = 3 kann man 0 = x^2 - 9 machen, aber aus 0 = x^2 - 9 kann man nicht x = 3 machen.)

    Oft dürfte man zwar <=> schreiben, weil der Schluß in beide Richtungen richtig ist, man braucht aber nur =>.



  • in so einem Fall schreibt man dann "oBdA" ~ "ohne Bedenken des Autors" 😃



  • Bedauerlicherweise muss ich hier noch mal schreiben. Habe es in der Klausur gemacht wie hier erklärt, ein richtiges ergebis raus, aber 0 Punkte. Da neben steht: rechenweg? Kann sich jemand erklären was daran unklar sein könnte?


  • Mod

    Sqw4n schrieb:

    Kann sich jemand erklären was daran unklar sein könnte?

    Also wenn ich raten darf: Du hast den Rechenweg nicht klar gemacht?



  • Das schrieb ich bereits. Die Frage war eher: was war unklar wenn ich es wiebesvhrieben gemacht habe?


  • Mod

    Sqw4n schrieb:

    Das schrieb ich bereits. Die Frage war eher: was war unklar wenn ich es wiebesvhrieben gemacht habe?

    Dieser Thread hat zwei Seiten an Erklärungen und Recnhungen. Hast du das alles in der Klausur hingeschrieben?



  • Selbstverständlich. Also die Rechnungen die hier gepostet wurden. Die Schriftlichen erläuterungen nicht... Ich muss aber sagen, ich finde selbst den Rechenweg der mir von euch netterweise so ausführlich erklärt wurde glasklar...


Anmelden zum Antworten