zur Startseite zum Inhalt zur Navigation

Gedanken_leser

 

Zugegeben der Name ist etwas irreführend, aber unter 
diesem Namen habe ich das Programm kennengelernt.

Worum es geht.

Der User denkt sich 5 Ganzzahlen aus. Verrechnet 
diese mittels + , - so das er Jede Zahl einmal 
benutzt hat. Dann gibt er die 5 Zahlen und das 
Ergebnis ein. Das Programm berechnet dann die 
Benutzen Rechenoperationen.

Im Prinzip total sinnlos also das Programm.

Es geht hierbei aber weniger um die Funktion ( Auch 
wenn das Programm fast Perfekt funktioniert ), sondern 
mehr darum das ich hier mal zeigen will wie man 
generell mit unterschiedlichen Programmen das Selbe 
erreichen kann.

Implementiert sind 3 Verfahren, jeweils mittels einem 
Berechne Button.

Berechne1 : Ermittlung des Ergebnis Iterativ

Berechne2 : Ermittlung durch Raten

Berechne3 : Ermittlung durch Rekursion

Leider ist Berechne2 nur dann sinnvoll wenn das 
Ergebnis tatsächlich berechenbar ist. ( wenn nicht 
Terminiert das Programm niemals ). Wenn das Ergebnis 
tatsächlich ermittelbar ist, dann ist Berechne2 
allerdings im Mittel deutlich schneller als die 
beiden anderen Verfahren.

Schaut euch also den Source an und überlegt selbst 
welche Variante ihr Vorziehen würdet.

Mir gefällt Berechne1 natürlich am Besten weil es am 
wenigsten Speicher benötigt und mir das auch als 1. 
eingefallen ist. Berechne3 ist aber genau so schnell, 
und mal abgesehen vom unnötigen Stack Aufbau auch 
gleichwertig.

Berechne2 ist Elegant, aber dank der nicht 
Terminieren Funktion ( die sich durch eine oberere 
Schranke ausbauen Liese [man könnte die versuche 
Zählen und nach maximal 2^5 = 32 versuchen, so lange 
brauchen die anderen Programme nämlich, abbrechen 
und als nicht gültige Lösung erkennen. Dies 
bedeutete aber das bei ungünstigen Fällen Korrekte 
Lösungen als nicht Korrekt erkannt würden.]) leider 
nicht unbedingt optimal.

 

(7465 Hits)

 

  trio     dithering_mask     hough_transformation     farbspectrum     trackball     klab     uuart     weihnachtskalender     race_condition     wuerfelzauber     file_transfer     hex     simple_font     suchen_dialog     8x8x8     wecker     io_serializer     qprogrammer     4_gewinnt     maw     textfilter     transparenz     vokabel     funplay2     2048     network_bandwidth_limiter     cpu_load     io_adapter     winkonfig     einstein     verzeichnung     alt_f2     5ermedian     atmegaboard     tbitstream     tg12864b     mastermind     address_db     openglsphere     dcf77     delforlaz     fpc_depencies     knack     mauskoordinaten     button_tool     send_get_file     hoertest     tipp_it     exp_func     partikelengine     induktion     gefangenen_dilemma     ctools     fir_iir     hilbert     greenfoot     sirpinksy     balanced2     jazzball     bigprim     galton_brett     mandelbrot     screensaveblocker     opengl_spriteengine     parken     tokenizer     summe_n     dithering_filtering     matrix     sfxr     fakenet     l_system     rsa     tankplan     gc_solver     torus_chess     network_listener     perlin_noise     simpleray     socket     wuerfel     ae20125     dxtools     sql     pentago     clickomania     balanced     serial     ccm     screeny     steganographie     ascii     gebmanager     episodenmanager     c_libs     fourier     stm     feder_masse     diffusionsfilter     laufschrift     picam     nsudoku     simple_cad     imageinspector     basic     generische_liste     desktop_lock     wireworld     tasker     pointer     kwirk     weihnachtsstern     turing_maschine     sortieren2     passbildcreator     calender     boxmuller     wii_whiteboard     sdl_tcp_ip     3d_puzzle     td     proto     zufall     picturerotate     pwm     ntools     codecounter     raetsel     project_collector     clear_engine     c_depencies     rent_it     picking     netzwerkprotokol     quadtree     piemenue     codeviewer     iq_block     portal     numeric_instability     chunkmanager     bww     filetools     funkuhr     bezier     sortieren     dcommenter     vedische_multiplication     loop     shannon_fano_coding     binomial     4_wins     cubemap     lzw     fouriersynthese     cleanup     gorilla     zauber     schachprobleme     crc     rubik_cube2     kartei     anty_krypt     bignumber     copycommander     tippsy3     game_of_life     pathfinder     wii_headtrack     puzzle     lazcomment     affenpuzzle     sprite_engine     proof2e1     baum     digiman     pi     ym1602c     library     textur_filterung     projizierte_schatten     tclockex     waage     bmp_font     euler     tetris     gedanken_leser     xml     sudoku