ALGORITHMEN - Teil XVIII: Neueste Fortschritte in Künstlicher Dummheit

    Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

    Unsere Datenschutzerklärung wurde aktualisiert. Mit der Nutzung unseres Forums akzeptierst Du unsere Datenschutzerklärung. Du bestätigst zudem, dass Du mindestens 16 Jahre alt bist.

    • ALGORITHMEN - Teil XVIII: Neueste Fortschritte in Künstlicher Dummheit

      Willkommen bei weiteren Versuchen zur Artiificial Stupidity!
      Man kann sagen, was man will - und hier ist der Satz auch schon aus.
      Have fun! :thumbsup:
      Win7-64HomPremSP1,XProfan11.2a,XPIA,JWasm,xpse,IntelCoreQuad2.5GHz/4GB/je1TB HD intern:esataBay:USB3
    • Computerrechnen: 2147483647 + 2 = -2147483647

      Was ganz Altes:

      Quellcode

      1. WindowTitle "Wir rechnen mit LongInt"
      2. Window 0,0 - 820, 400
      3. Declare Zahl&, Ergebnis&
      4. Zahl& = 2147483647
      5. Ergebnis& = Zahl& + 2
      6. Print str$(Zahl&) + " + 2 = " + str$(Ergebnis&) + " ?????????"
      7. Print
      8. Print "Größte positive Zahl: " + str$(%01111111111111111111111111111111) + " (in Bitschreibweise %01111111111111111111111111111111)"
      9. Print "Kleinste negative Zahl: " + str$(%10000000000000000000000000000000) + " (in Bitschreibweise %10000000000000000000000000000000)"
      10. Print "Das Bit ganz links dient zum Erkennen des Vorzeichens für negative Zahlen."
      11. Print "Das ist " + Str$(%11111111111111111111111111111111) + " in Bitschreibweise: %11111111111111111111111111111111"
      12. Print
      13. Print
      14. Print "Wir rechnen binär..."
      15. Print
      16. Print " 01111111111111111111111111111111"
      17. Print "+00000000000000000000000000000001"
      18. Print "_____________________________________"
      19. Print "=10000000000000000000000000000000"
      20. Print "+00000000000000000000000000000001"
      21. Print "_____________________________________"
      22. Print "=10000000000000000000000000000001"
      23. Print
      24. Print "Ist doch logisch, dass da " + str$(%10000000000000000000000000000001) + " raus kommt - oder?"
      25. WaitKey
      Alles anzeigen
      1.jpg


      Computer sind extrem dumm. Sie können maximal 1 und 1 addieren und bekommen am Ende immer null heraus.
      ________________________________________________________

      PPFScanner PPFS Android MisterXMail@web.de
      Mfg AHT

      Dieser Beitrag wurde bereits 6 mal editiert, zuletzt von AHT ()

    • @AHT: Big LOL :lol2: - da hab ich was Ähnliches:

      Abt. Grosser Fermat´scher Satz
      ========================
      1994 bewies der britische Mathematiker Andrew Wiles in einem aufwändigen Werk, dass die über 300 Jahre zuvor aufgestellte Fermat´sche Vermutung stimmt. Diese besagt, daß Gleichungen wie x^n+y^n=z^n für ganzzahlige x,y,z und alle Exponenten n größer als 2 keine ganzzahlige Lösungen haben können.

      Aus einer Folge der Simpsons wissen wir aber:
      3987^12 + 4365^12 = 4472^12

      Womit Wiles widerlegt ist, von Homer Simpson!
      Gruss

      P.S.: Oder doch nicht: Eine 12. Potenz überfordert jeden heutigen Computer. Es handelt sich um einen sogenannten "NEAR MISS" - zu deutsch: "Knapp daneben ist auch vorbei!"

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • Abt. Kaleidoskop berechnen
      =====================
      In einen Zylinder mit gegebenem Innendurchmesser Z sollen N Spiegel (N>2) der Dicke D zu einem KALEIDOSKOP eingepasst werden. Gesucht ist die Spiegelbreite B des normal (mit 90°) abgekanteten Glases. Das Programm ist ein Experiment und ohne jede Gewähr!
      Gruss

      Quellcode

      1. WindowTitle "Kaleidoskop-Berechnung (Early Alpha Version)"
      2. 'Versuchsprogramm, wenig getestet. OHNE JEDE GEWÄHR!
      3. WindowStyle 24
      4. Declare b!,d!,n&,ZyDm!,r!,w$
      5. Repeat
      6. CLS
      7. font 0
      8. sound 4000,30
      9. print "\n In einen Zylinder mit gegebenem Innenradius r sollen n Spiegel (n>2)"
      10. print " der Dicke d zu einem KALEIDOSKOP eingepasst werden. Gesucht ist die "
      11. print " Spiegelbreite b des normal (mit 90°) abgekanteten Glases bei der "
      12. print " gewünschten Spiegelanzahl, gegebenem Innendurchmesser des Zylinders ZyDm"
      13. print " und bekannter Dicke D des Spiegelglases.\n\n Formel:\n"
      14. print " b = 2*sin(Pi/N)*(d*cos(pi-pi/N) + Sqrt(d^2*(sin(Pi-Pi/N))^2+(ZyDm/2)^2)) \n"
      15. font 2
      16. print "\n Zylinder-Innendurchmesser ZyDm [mm] = ";format$("%g",ZyDm!);" "
      17. print "\n Spiegeldicke d [mm] = ";format$("%g",d!);" "
      18. print "\n Anzahl Spiegel n = ";n&;" "
      19. locate %csrlin-6,1
      20. print "\n Zylinder-Innendurchmesser ZyDm [mm] = ";:input w$:case w$>"":ZyDm!=val(w$)
      21. locate %csrlin-2,1
      22. print "\n Zylinder-Innendurchmesser ZyDm [mm] = ";format$("%g",ZyDm!);" "
      23. print "\n Spiegeldicke d [mm] = ";:input w$:case w$>"":d!=val(w$)
      24. locate %csrlin-2,1:print "\n Spiegeldicke d [mm] = ";format$("%g",d!);" "
      25. print "\n Anzahl Spiegel n = ";:input w$:case w$>"":n&=val(w$)
      26. locate %csrlin-2,1:print "\n Anzahl Spiegel n = ";n&;" "
      27. case (zydm!<=0) or (n&<=2) or (d!<=0) or (d!>=zydm!):continue
      28. if (sqr(d!)*sqr(sin(pi()-pi()/N&))+sqr(ZyDm!/2))>=0
      29. b! = 2*sin(Pi()/N&)*(d!*cos(pi()-pi()/N&) + Sqrt(sqr(d!)*sqr(sin(pi()-pi()/N&))+sqr(ZyDm!/2)))
      30. print "\n\n Die Spiegelbreite sollte betragen: ";format$("######0.#####",b!);" [mm]"
      31. sound 400,60
      32. Else
      33. print " Lösung negativ!":sound 80,333
      34. endif
      35. waitinput 10000
      36. UNTIL %Key=27
      37. END
      Alles anzeigen

      Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von p. specht ()

    • Abt. Und noch viel mehr Rätsel - UnvmR 1 ´Mit den Waffeln einer Frau´
      =====================================================
      Rotzkäppchen bringt ihren drei Großmüttern Waffeln. Zu Beginn ist ihr Korb voll. Doch kurz bevor sie jeweils die Häuser der Großmütter erreicht, kommt der Große blöde Wolf - er hat leider einen an der Waffel - und frisst jeweils die Hälfte der im Korb befindlichen Waffeln. Als Rotzkäppchen das Haus der dritten Großmutter verlässt, ist ihr Korb leer - aber der Gerechtigkeit ist insoferne Genüge getan, als jede Großmutter gleich viele Waffeln bekommen hat.
      Frage: Welche Anzahl Waffeln war anfangs mindestens im Korb?
    • Lösung zu UnvmR 1
      -----------------
      Spoiler anzeigen
      Variablenschema: WK ... Waffeln im Korb, VG1 ... Vor Großmutter 1, NG1 ... Nach Großmutter 1

      (1) WK - WK/2 = VG1
      (2) VG1 - X = NG1
      (3) NG1 - NG1/2 = VG2
      (4) VG2 - X = NG2
      (5) NG2 - NG2/2 = VG3
      (6) VG3 - X = NG3
      (7) NG3 = 0
      ==========================
      (7.6) VG3-X=0 >>> VG3=X
      (5) NG2/2 = X >>> NG2=2*X
      (4) VG2 - X = 2*X >>> VG2 = 3*X
      (3) NG1/2 = 3*X >>> NG1=6*X
      (2) VG1 - X = 6*X >>> VG1 = 7*X
      (1) WK/2 = 7*X >>> WK = 14*X
      Gefragt ist die Mindestzahl: Pro Großmutter X=1 Waffel, daher:
      Lösung: Es müssen mindestens 14 Waffeln im Waffelkorb gewesen sein!
    • Spoiler anzeigen
      Sollte es sich um unterschiedliche einstellige Zahlen handeln, wären dies 2, 8 und 9. Dürfte die gleiche Zahl mehrmals vorkommen, würde auch 4, 4, 8 und 9 funktionieren. Bei erlaubter Mehrstelligkeit ginge auch 4, 4, 18.
      Intel Duo E8400 3,0 GHz / 4 GB RAM / 1000 GB HDD / ATI Radeon HD4770 512 MB / Windows 7(32) - XProfan X4
      AMD Athlon II X2 2,9 GHz / 3 GB RAM / 500 GB HDD / ATI Radeon 3000 (onboard) / Windows 10(64) - XProfan X4


      http://www.xprofan.de
    • @RGH: Bravo, UnvmR-2 korrekt gelöst. 3 oder 4 Zahlen!


      Abt. UnvmR 3:
      ===========
      In jedem der fünf Waggons eines Zuges sitzt mindestens ein Passagier. Zwei Passagiere heißen "benachbart", wenn
      sie entweder im gleichen Waggon oder in zwei aufeinanderfolgenden Waggons sitzen. In diesem Sinne hat jeder Passagier
      entweder genau 5 oder genau 10 "Nachbarn". Frage: Wie viele Passagiere befinden sich im Zug?

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • Lösung zu UnvmR-3
      -------------------
      Spoiler anzeigen
      17 Passagiere

      Quellcode

      1. Windowtitle "UnvmR 3-Löser":cls:font 2
      2. declare w1%,w2%,w3%,w4%,w5%, n1%,n2%,n3%,n4%,n5%
      3. whileloop 1,11:w1%=&Loop:whileloop 1,11:w2%=&Loop
      4. :whileloop 1,11:w3%=&Loop:whileloop 1,11:w4%=&Loop
      5. :whileloop 1,11:w5%=&Loop:n1%=w1%-1+w2%
      6. n2%=w1%+w2%-1+w3%:n3%=w2%+w3%-1+w4%
      7. n4%=w3%+w4%-1+w5%:n5%=w4%+w5%-1:if (n1%=5)+(n1%=10)
      8. if (n2%=5)+(n2%=10):if (n3%=5)+(n3%=10)
      9. if (n4%=5)+(n4%=10):if (n5%=5)+(n5%=10)
      10. print "\n ";w1%,w2%,w3%,w4%,w5%;" = ";\
      11. int(w1%+w2%+w3%+w4%+w5%);" Passagiere"
      12. endif:endif:endif:endif:endif:endwhile:endwhile
      13. endwhile:endwhile:endwhile:print "\n OK.":waitkey
      Alles anzeigen
    • Lösung zu UnvmR 4:
      ----------------------
      Spoiler anzeigen
      Die kleinsten Summen-Zahlen werden durch Vergabe der kleinstmöglichen Ziffern auf die 100er-stelle, dann die 10er-Stelle und schließlich die Einerstelle erzielt:
      147
      258
      369
      ====
      774 ist die Antwort.

      Beweis in Programmform anbei.

      Brainfuck-Quellcode

      1. WindowTitle "UnvmR 4 mittels KNUTH%-Shuffle lösen (~60 sek)"
      2. CLS:font 2
      3. declare oo&,pp&,qq&,rr&,ss&,tt&,uu&,vv&,ww&,sum!,max!,min!,tm&
      4. declare ox&,px&,qx&,rx&,sx&,tx&,ux&,vx&,wx&
      5. declare on&,pn&,qn&,rn&,sn&,tn&,un&,vn&,wn&
      6. max!=-1*10^53:min!=10^53
      7. Declare t$,t$[],n&,k&,j&,u&,v&,e%,z&,q$
      8. e%=1:z&=0:q$=" "
      9. t$="1 2 3 4 5 6 7 8 9"
      10. t$=trim$(t$):t$=translate$(t$," "," "):case instr("|",t$):q$="|"
      11. t$=translate$(t$," ","|"):t$[]=explode(t$,"|"):n&=SizeOf(t$[])
      12. declare t%[n&-1],ttt%
      13. 'whileloop 0,n&-1
      14. 't%[&Loop]=val(t$[&Loop])
      15. 'print t%[&Loop],
      16. 'endwhile
      17. t%[]=t$[&index]
      18. tm&=&gettickcount
      19. While e%:inc z&
      20. oo&=t%[0]:pp&=t%[1]:qq&=t%[2]
      21. rr&=t%[3]:ss&=t%[4]:tt&=t%[5]
      22. uu&=t%[6]:vv&=t%[7]:ww&=t%[8]
      23. sum!=100*ww&+10*vv&+uu& + 100*tt&+10*ss&+rr& + 100*qq&+10*pp&+oo&
      24. if max!<sum!:max!=sum!:print "+";
      25. ox&=oo&:px&=pp&:qx&=qq&
      26. rx&=rr&:sx&=ss&:tx&=tt&
      27. ux&=uu&:vx&=vv&:wx&=ww&
      28. endif
      29. if min!>sum!:min!=sum!:print "-";
      30. on&=oo&:pn&=pp&:qn&=qq&
      31. rn&=rr&:sn&=ss&:tn&=tt&
      32. un&=uu&:vn&=vv&:wn&=ww&
      33. endif
      34. if n&<2:e%=0:break:endif
      35. k&=n&-2:While t%[k&]>=t%[k&+1]:Dec k&:case k&<0:break:EndWhile
      36. if k&<0:e%=0:break:endif
      37. j&=n&-1:While t%[j&]<=t%[k&]:dec j&:EndWhile
      38. ttt%=t%[k&]:t%[k&]=t%[j&]:t%[j&]=ttt%:u&=k&+1:v&=n&-1
      39. :While u&<v&:ttt%=t%[u&]:t%[u&]=t%[v&]:t%[v&]=ttt%:inc u&:dec v&:EndWhile
      40. EndWhile'print "-------------- Ausgegebene Zeilen:",z&,"-----------------"
      41. tm&=&gettickcount-tm&
      42. print "\n\n MIN: ";int(min!),"=",wn&;vn&;un&,"+",tn&;sn&;rn&,"+",qn&;pn&;on&
      43. print "\n MAX: ";int(max!),"=",wx&;vx&;ux&,"+",tx&;sx&;rx&,"+",qx&;px&;ox&
      44. Print "\n KNUTH: ";tm&;" [ms]"
      45. sound 1000,200
      46. waitinput
      47. End
      Alles anzeigen


    • Lösung zu UnvmR 5
      ---------------------
      Spoiler anzeigen


      Tom + Johann = 23 >>> Tom = 23 - Johann
      Johann + Alex = 24 >>> Alex = 24 - Johann
      Alex + Tom = 25 >>> 24-Johann + 23 - Johann = 25
      >>> 47 - 2*Johann = 25 >>> 47-25 = 2*Johann
      >>> 22 = 2 Johann >>> Johann = 11

      Tom + Johann = 23 >>> Tom + 11 = 23 >>> Tom=23 - 11 = 12
      Johann + Alex = 24 >>> 11 + Alex = 24 >>> Alex = 24 -11 = 13
      Antwort: Der Älteste (Alex) ist 13 Jahre alt.
    • Lösung zu UnvmR 6
      ---------------------
      Spoiler anzeigen
      Eine einfache Formel zu Lösung der Sophomore-Gleichung X^X gibt es leider nicht. Bei Rätseln kann man aber davon ausgehen, daß sie keine unmöglichen Kopfstände erfordern.

      Wir tasten uns also einfach heran:
      2^24 = 4^12 = 8^8 = X^X >>> X = 8

      Weitere Antworten stimmen zwar mathematisch, schiessen aber etwas über das Ziel hinaus:
      ...= 16^6 = 256^3 = 4096^2 = 16777216 ^ 1 = 281.474.976.710.656 ^ 1/2, etc. etc.


      P.S.: Für ähnlich gelagerte Quizfragen: Programm "Exponentialer Ganzzahl-Slalom"

      Quellcode

      1. WindowTitle "Exponential-Ganzzahlslalom"
      2. WindowStyle 24:Window %maxx/4,0 - 640,%maxy-41
      3. set("decimals",17):font 2
      4. declare a!,b!,z!
      5. '******************* Testwerte für a ^ b **********************
      6. a!=3 : b!=24
      7. '**********************************************************
      8. z!=a!^b!
      9. print format$("\n %g",a!),"^",format$("%g",b!),tab(30);"=",\
      10. format$("%g",a!^b!)," Err=";format$("%g",a!^b!-z!)
      11. Repeat
      12. b!=int(b!-0.00000000001):case b!=0:BREAK
      13. a!=z!^(1/b!)
      14. print format$(" %g",a!),"^",format$("%g",b!),tab(30);"=",\
      15. format$("%g",a!^b!)," Err=";format$("%g",a!^b!-z!)
      16. a!=int(a!+0.99999999):case a!<=1:break
      17. b!=lg(z!)/lg(a!)
      18. print format$(" %g",a!),"^",format$("%g",b!),tab(30);"=",\
      19. format$("%g",a!^b!)," Err=";format$("%g",a!^b!-z!)
      20. until 0
      21. waitinput
      22. End
      Alles anzeigen

      Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von p. specht ()

    • Abt. UnvmR 7 ´Punktiert´
      ==================
      Die 10 Teilnehmer eines Tests erreichten im Mittel 6 Punkte. Genau 6 der Teilnehmer bestanden den Test. Im Mittel erreichten die Teilnehmer, die den Test bestanden, 8 Punkte. Frage: Welchen Mittelwert erreichten die Teilnehmer, die den Test nicht bestanden?
    • Lösung zu UnvmR 6
      -----------------------
      Spoiler anzeigen
      15 l / m² bedeutet 15 dm³ / (10 dm * 10 dm)
      = 15/100 dm = 0.15 dm =1.5 cm = 15 mm
      Antwort: Der Wasserpegel im Schwimmbecken stieg um 15 mm.
      ------------------------------------------------------------------------


      Lösung zu UnvmR 7
      -----------------------
      Spoiler anzeigen

      6 = 1/10 * P_alle >>> P_alle = 60
      8 = 1/6 * P_pos >>> P_pos = 48
      P_alle = P_pos + P_neg >>> P_neg = P_alle - P_pos = 60 - 48 = 12
      x = 1/4 * P_neg = 1/4 * 12 = 3 >>> x = 3
      Antwort: Im Durschschnitt erreichten die Durchgefallenen 3 Punkte.
      ------------------------------------------------------------------------------------