2020 schon? Das kann ja heiter werden!
ALGORITHMEN - Teil XXIV: Eins zu Null für Binärcode!
-
p. specht -
1. Januar 2020 um 01:21 -
Geschlossen
-
-
-
Abt. INHALTE DER BISHERIGEN ALGORITHMEN-KAPITEL I bis XXIII
===========================================
Das elektronische Inhaltsverzeichnis der bisherigen ALGORITHMEN-Beiträge Kapitel 01 bis 23 wurde upgedated und steht wieder als ZIP-Datei zum Download zur Verfügung. Die ZIP enthält die kleine Datenbank mit Suchfunktion als EXE, sowie als anpassbares .PRF XProfan-11.2-Programm den sog. ALGORITHMENBEAMER, der nach Eingabe von Kapitelnummer_Beitragsnummer den Browser in die Nähe des entsprechenden Beitrages auf Paules PC Forum führt. Die Exe-Datei bitte unbedingt auf Viren prüfen, da meine Homepage nicht https-gesichert ist.Gruss
P.S.: Eventuell müssen im ´Beamer.prf´ Pfad und Browser dem eigenen System angepasst werden.
PPS.: Aus Gründen des Link-Updates trägt die ZIP-Datei noch einen alten Namen, die Inhalte sind aber neu. -
Nachtrag: Rechengang zur Lösung von TR 54
==================================Spoiler anzeigen
vAg ... Geschwindigkeit von Andy beim gehen
vAr ... Geschwindigkeit von Andy beim radfahren
vBg ... Geschwindigkeit von Bert beim gehen
vBr ... Geschwindigkeit von Bert beim radfahren
S ..... Gesamtstrecke
Sx .... Strecke bis zum Rad-Wechsel
T ..... Gesamtzeit, bis beide zugleich am Ziel eintreffen
t1 .... Reisezeit bis zum Abstellen des Rades
t2 .... Gehzeit bis zum Auffinden und Nutzen des Fahrrades
x ..... Streckenverhältnis Radwechseldistanz zu GesamtstreckeSx = S * x = vAr * t1 = vBg * t2
==> vBr/vAg = t2/t1 = 10/5 = 2
==> t2 = 2 * t1S = vBr * t1 + vBg * (T - t1) = vAg * t2 + vAr * (T-t2)
Wegen t2 = 2 * t1 gilt eingesetzt:
vBr * t1 + vBg * (T - t1) = vAg * 2*t1 + vAr * (T-2*t1)
8*t1 + 5*T - 5*t1 = 4*2*t1 + 10*T - 2*10*t1
3*t1 + 5*T = 8*t1 + 10*T - 20*t1
3*t1 + 5*T = 10*T - 12*t1
3*t1 + 12*t1 = 10*T - 5*T
15 * t1 = 5 * T
T = 3*t1Eingesetzt in
S = vBr * t1 + vBg*(T-t1) gibt:
S = 8*t1 + 5*(T-t1)
20 = 8*t1 + 5*(3*t1 - t1)
20 = 8*t1 + 15*t1 - 5*t1
20 = 18*t1
t1 = 20/18 = 10/9 = 9/9 + 1/9 = 1_1/9 Stunden, d.h.:
Fahrrad stehen lassen nach 1_1/9 Stunden!Falls Bert zuerst fährt: Wechseldistanz Sx=10*10/9=11_1/9 km
Falls Andy zuerst fährt, wäre diese Distanz Sx=8*10/9=8.8888 kmt2 = 2*t1 = 2_2/9 Stunden,
Distanz zum Finden des Rades daher w.o. ermittelbar.Gesamtreisezeit T = 3 *t1 = 3_3/9 = 3_1/3 Stunden = 3h 20 min.
-
Abt. Algorätsel AR-01
==============
Ein Rechteck ist hat die Abmessungen 11 x 7 cm. Innen enhält es zwei Kreise so gegenüberliegend eingezeichnet, dass sie je drei Seiten des Rechtecks berühren. Wie groß ist der Abstand der Kreismittelpunkte voneinander? -
Ich denke mal 4 cm.
Hab jetzt einfach mal ein Rechteck (11 x 7) gezeichnet und von
der kleinsten Seite (7 cm) die Hälfte genommen. Das ist dann der
Radius der Kreise. Einen Deckel von etwa 7 cm Durchmesser genommen
und drauf gelegt. Paßt auch in etwa.Mein Deckel hat 7,4 cm (Pullmoll Hustenbonbons)
-
Korrekt! Also weiter:
Abt. AR-02
=========
abs(Sqrt(17) - 5) + abs(Sqrt(17) + 5) = ? -
Abt. ALR-03 ´Babbage´
================
Als Pionier betreffend ´programmierbare´ Rechenmaschinen gilt Charles Babbagge mit seiner mechanischen "Difference Engine´ und späteren ´Analytical Engine´. In enem Briefwechsel mit anderen êGrößen siner Zeit (um 1837) erwähnt er die Möglichkeit, so vertrackte Probleme wie etwa "Wie lautet die kleinste Zahl, deren Quadrat auf ...269696 endet" herauszubekommen, also sehr spezifische Aufgabenstellungen zu lösen. Angeblich dachte er, die Lösung sei 99736, er war aber nicht sicher. Gesucht: Ein plausibler, nachvollziehbarer ´Algorithmus´ zur Lösung dieser Aufgabe.P.S.: War seine Vermutung richtig?
-
Lösungsvorschlag zu ALR-03
---------------------------Code
Alles anzeigenWindowTitle " Babbage-Problem: Algorithmus A" WindowStyle 24 Set("decimals",0) Declare r!,s!,num& Repeat Case rnd()<0.0005 Cls rgb(180+rnd(76),180+rnd(76),180+rnd(76)) inc num& s! = Sqr(num&) r! = s! - int(s!/1000000)*1000000 until r! = 269696 Print "\n Dear Mr. Babbage, the smallest number"; Print " whose square ends in 269696 is:" font 2:Print "\n ";num& font 0:Print "\n because ";num&;" squared = ";s! Sound 400,200:WaitInput 20000'ms End
-
Abt. ALR-04 ´Archimedes´
====================
Archimedes von Syrakus (287 - 212 v.Chr.) hatte bereits die Faktorielle (aka "Fakultät") von 15 berechnet, also 15 * 14 * 13 * 12 * ... * 2 * 1 (wobei das " * 1 " natürlich nichts mehr ändert). Die 2. und die 10. Ziffer des Ergebnisses zusammengenommen ergeben sein Alter, als er dieses Ergebnis erzielte. In welchem Jahr war das also? -
Ein passendes T-Shirt für alle Kursteilnehmer:
-
Lösungsvorschlag zu ALR-02
---------------------------Spoiler anzeigen
A) Im ersten Teilausdruck: abs(Sqrt(17) - 5) ist Wurzel(17) kleiner als 5
Der Term: Sqrt(17) - 5 ist daher negativ (Er wäre erst ab Wurzel(25) nicht-negativ).
Das Vorzeichen des Term-Ergebnisses wird also umgedreht.B) Überlegung: Wollte man das Absolut-Nehmen weglassen, so müsste man ALLE Vorzeichen in diesem Term umdrehen, und das sähe dann so aus: -Sqrt(17) + 5. Nur so wäre das gleiche Teilergebnis zu erzielen.
C) Die Absolut-Nehmen-Funktion hat auf den 2. Term: Sqrt(17) + 5 keine Wirkung, da das Ergebnis ohnehin positiv ist.
D) Der angegebene Gesamtausdruck: abs(Sqrt(17) - 5) + abs(Sqrt(17) + 5)
sieht wegen des negativen Vorzeichens des 1. Terms ohne Abs()-Funktionen also so aus:
5 - Sqrt(17) + Sqrt(17) + 5
E) Die Wurzel(17)-Funktionen subtrahieren sich also weg, und was bleibt ist: 5 + 5
Das Ergebnis dieser Funktion ist also 5 + 5 = 10
---------------------------------------------- -
Abt. ALR-05
=========
Die Ganzzahl ´AA4AB´ (A und B sind Ziffern-Platzhalter) ist ohne Rest durch 165 teilbar. Wie lautet die Summe A+B ? -
Abt. ALR-06
=========
Wieviele Tage hatte die 1. Kalenderwoche im Jahr 2020 ? -
7 Tage. Die 1. Kalenderwoche 2020 begann am 30.12.2019 und endete am 05.01.2020.
Gruß Volkmar
-
potztausend!
Gehört die Woche mit dem 30.Dez 2019 nicht mehr zu den Wochen des Jahres 2019??
Wegen der Werktagregelung der 1.Woche eines jeden neuen Jahres gehört die Woche zu 2020 ja, aber hat sie nicht zwei Identitäten? Eine aus 2019 und eine aus 2020? -
Der Jahreswechsel ist etwas verzwickt geregelt:
Zitat von https://de.wikipedia.org/wiki/WocheDie Kalenderwoche ist nach ISO 8601 so definiert:
- Kalenderwochen haben 7 Tage, beginnen an einem Montag und werden über das Jahr fortlaufend nummeriert.
- Die Kalenderwoche 1 eines Jahres ist diejenige, die den ersten Donnerstag enthält.
Weitere Eigenschaften dieser Zählweise sind:
- Jedes Jahr hat entweder 52 oder 53 Kalenderwochen.
- Ein Jahr hat genau dann 53 Kalenderwochen, wenn es mit einem Donnerstag beginnt oder endet:
- Ein Gemeinjahr mit 53 Wochen beginnt an einem Donnerstag und endet an einem Donnerstag.
- Ein Schaltjahr mit 53 Wochen beginnt entweder an einem Mittwoch und endet an einem Donnerstag oder es beginnt an einem Donnerstag und endet an einem Freitag.
- Der 29., 30. und 31. Dezember können schon zur Kalenderwoche 1 des Folgejahres gehören.
- Der 1., 2. und 3. Januar können noch zu der letzten Kalenderwoche des Vorjahres gehören.
- Der 4. Januar ist immer in Kalenderwoche 1.
Gruß Volkmar -
Gut gelöst, Volkmar! Ich hätte allerdings auch die Antwort 5 gelten lassen, je nachdem ob man "im Jahr 2020" entsprechend interpretiert. Aber es stimmt natürlich: Jede Kalenderwoche hat 7 Tage!
P.S.: Nicht unwichtig zu wissen, wenn man Geschäfte mit dem Amerikanischen Kontinent macht: Die Kalenderwochen dort können +/- 1 unterschiedlich geregelt sein.
-
Lösungsprogramm zu ALR-05
----------------------------Code
Alles anzeigenWindowtitle "ALR-05 Löser" Cls:set("decimals",0):font 2 declare z&,a&,b&,s! print "\n\n a a 4 a b " whileloop 0,9:A&=&Loop whileloop 0,5,5:B&=&Loop z&=val(Str$(a&)+Str$(a&)+"4"+Str$(a&)+Str$(b&)) s!=z&/165 if s!=int(s!) print "\n\n Die gesuchte Zahl ist ";z&, print " (Vielfaches von 165 * ";z&/165;")" print "\n Somit gilt: a=";a&,"b=";b&;"\n\n "; color 15,2:print " Antwort: a + b = ";a&+b&," " color 0,15 endif endwhile endwhile print "\n ___" waitinput End
-
An manche Eigenheiten muss man sich einfach gewöhnen, es gilt also:
(Die Datumsschreibung ist bei uns auch korrekt nach ISO denke ich:)Der 2019-12-30 Ist ein Tag des Jahres 2019.
Die Woche, zu der der Tag gehört, ist eine des Jahres 2020! -
Hmmm… Gibt es für ALR-05 wohl auch eine logische Lösung?
Die Ganzzahl ´AA4AB´ist ohne Rest durch 165 teilbar.
1. Damit kann B schon mal nur eine 0 oder 5 sein.
2. Wie kommen wir an der drittletzten Stelle auf 4?
Nun: 3 x 165 = 495. Damit wäre die drittletzte schon mal 4 - und A müsste 9 sein...Test: 99495 / 165 =
hähä...
603
30 Sekunden... - ganz ohne Programmcode...
Rabe
-
Jetzt mitmachen!
Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!