Autor Beitrag
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Fr 21.12.18 18:04 
user profile iconMathematiker hat folgendes geschrieben Zum zitierten Posting springen:
Nun die Auflösung der Aufgabe mit Mariana und den Geschenketransportern.
Ich gebe zwei nicht besonders elegante Lösungen. Es gibt eine viel schönere, die wahrscheinlich user profile iconOrakel_von_Delphi vorstellen wird.


Hm, ob die noch kommt - von Orakel_von_Delphi oder wem sonst?

_________________
Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
Orakel_von_Delphi
Hält's aus hier
Beiträge: 3
Erhaltene Danke: 3

Win7
Delphi7
BeitragVerfasst: Fr 21.12.18 18:17 
Mein Lösungsweg stimmt mit dem von pzktupel überein. Da er diesen bereits veröffentlicht hatte, verzichtete ich auf eine Wiederholung.

Für diesen Beitrag haben gedankt: Delphi-Laie, pzktupel
Hidden
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 2242
Erhaltene Danke: 55

Win10
VS Code, Delphi 2010 Prof.
BeitragVerfasst: Fr 21.12.18 19:19 
Zu Marinas Geschenketransportern:

d: Abstand zwischen zwei Transportern
v: Geschwindigkeit der Transporter
k: Geschwindigkeit von Marinas Schlitten

Die Zeit zwischen zwei Transportern ist deren Abstand, geteilt durch die Relativ-Geschwindigkeit zu Marinas Schlitten.
Damit habe ich die Aufgabenstellung in dieses Gleichungssystem übersetzt:
d / (v + k) = 18,


d / (v - k) = 22,


d / v = \quad?\quad\text{(gesucht)}


Umstellen nach dem Nenner der linken Seite liefert:
v + k = d/18,

v - k = d/22


Addieren der Gleichungen liefert die Geschwindigkeit des Transporters,
v = (v+k + v-k) / 2 = d/36 + d/44


Und damit die gesuchte Größe
d/v = d / (d/36 + d/44) = 1 / (1/36 + 1/44) = (36*44) / (44 + 36) = (36*44) / 80 = (9*11) / 5


Da die Zeiten in Minuten angegeben waren, aber die Antwort in Sekunden gegeben werden soll, muss umgerechnet werden:
60 * (9*11) / 5 = 9 * 11 * 12 = 1188

_________________
Centaur spears can block many spells, but no one tries to block if they see that the spell is a certain shade of green. For this purpose it is useful to know some green stunning hexes. (HPMoR)

Für diesen Beitrag haben gedankt: Delphi-Laie, Mathematiker, Orakel_von_Delphi
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Fr 21.12.18 22:21 
Hallo,
hier eine mögliche Lösung zum Tetraden-Puzzle
tetrade08

Das Bild, aber vor allem die Idee zu diesem Spiel stammt von www.mathematische-ba...leien.de/tetrade.htm .
Dort wird noch etwas mehr zum Thema gesagt.

Ein wichtiger Hinweis für morgen: Wenn ihr das Rätsel startet, wird eine Nachricht angezeigt. Diese solltet ihr unbedingt beachten. Danke.

LG Steffen
Einloggen, um Attachments anzusehen!
_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein

Für diesen Beitrag haben gedankt: Hidden
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Sa 22.12.18 02:40 
Eine allgemeine Frage zu dem Fenster "Versuch X von Y": Zählt da jedes Mal öffnen von dem Rätsel, oder erst, wenn da etwas Submitted wird?

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
Delphi-Laie
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 1600
Erhaltene Danke: 232


Delphi 2 - RAD-Studio 10.1 Berlin
BeitragVerfasst: Sa 22.12.18 04:04 
user profile iconBenBE hat folgendes geschrieben Zum zitierten Posting springen:
Eine allgemeine Frage zu dem Fenster "Versuch X von Y": Zählt da jedes Mal öffnen von dem Rätsel, oder erst, wenn da etwas Submitted wird?


Wenn etwas übertragen wird.

_________________
Ordnung ist das halbe Leben - und sie zu schaffen die andere Hälfte.
BenBE
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 8721
Erhaltene Danke: 191

Win95, Win98SE, Win2K, WinXP
D1S, D3S, D4S, D5E, D6E, D7E, D9PE, D10E, D12P, DXEP, L0.9\FPC2.0
BeitragVerfasst: Sa 22.12.18 05:00 
Das ist von der UX aber dann für das aktuelle Rätsel irgendwie sinnfrei (Naja, Details dazu wenn das Rätsel durch ist).

_________________
Anyone who is capable of being elected president should on no account be allowed to do the job.
Ich code EdgeMonkey - In dubio pro Setting.
pzktupel
Hält's aus hier
Beiträge: 129
Erhaltene Danke: 30



BeitragVerfasst: Sa 22.12.18 08:18 
Leute, ich schloß das Rätsel und startete neu. Versuch 1/3 noch...es fehlt der Kontroll-Button !!!!

Ich habe zwar eine Position vielleicht gefunden, kann nicht prüfen lassen , und nun ?
______
Nachtrag: Okay,wahrscheinlich wurde die Prüfung umgestellt.....
Orakel_von_Delphi
Hält's aus hier
Beiträge: 3
Erhaltene Danke: 3

Win7
Delphi7
BeitragVerfasst: Sa 22.12.18 09:15 
Die Prüfung erfolgt permanent. Sobald die letzte Figur an der richtigen Stelle steht, schließt sich das Fenster und stattdessen erscheint ein Glückwunsch.
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Sa 22.12.18 09:30 
Hallo,
ich habe es geahnt. Mit dem Schach-Rätsel gibt es Probleme. :autsch:
Sollte jemand ganz sicher sein, dass er eine richtige Lösung hat, die aber nicht erkannt wird, so sendet mir bitte eine Kopie des Spielfelds mit den eingetragenen Figuren.

Ich werde es dann "per Hand" auswerten.
Tut mir leid, ich kann nur um Entschuldigung bitten.

LG Steffen

Nachtrag: Die schon eingegangene 2.Lösung war doch nicht korrekt. Egal. Sollte es Probleme geben, wendet euch an mich.
Eigentlich dürfte es keine "alternative Lösung" geben, aber ...

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein
Horst_H
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 1652
Erhaltene Danke: 243

WIN10,PuppyLinux
FreePascal,Lazarus
BeitragVerfasst: Sa 22.12.18 09:45 
Hallo,

zu den Tetraden habe ich ein Programm gepinselt.Es wird eine zufällige Lösung ausgegeben, indem ich die Startaufstellung mische.

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
77:
78:
79:
80:
81:
82:
83:
84:
85:
86:
87:
88:
89:
90:
91:
92:
93:
94:
95:
96:
97:
98:
99:
100:
101:
102:
103:
104:
105:
106:
107:
108:
109:
110:
111:
112:
113:
114:
115:
116:
117:
118:
119:
120:
121:
122:
123:
124:
125:
126:
127:
128:
129:
130:
131:
132:
133:
134:
135:
136:
137:
138:
139:
140:
141:
142:
143:
144:
145:
146:
147:
148:
149:
150:
151:
152:
153:
154:
155:
156:
157:
158:
159:
160:
161:
162:
163:
164:
165:
166:
167:
168:
169:
170:
171:
172:
173:
174:
175:
176:
177:
178:
179:
180:
181:
182:
183:
184:
185:
186:
187:
188:
189:
190:
191:
192:
193:
194:
195:
196:
197:
198:
199:
200:
201:
202:
203:
204:
205:
206:
207:
208:
209:
210:
211:
212:
213:
214:
215:
program Aufgabe20;
//Spielsteine werden Reihe für Reihe von links nach rechts belegt und getestet
{$IFDEF FPC}{$MODE DELPHI}{$ENDIF}
//{$R+,O+}
type
 tKoor = record
           zeile,spalte:byte;
         end;
 tSpielstein  = array[0..1,0..1of byte;
 tpSpielstein  = ^tSpielstein;
 trow = array[0..7of byte;
 tSpielfeld = array[0..7of trow;
 tpRow = ^trow;
 tSpielFeldPos = array[0..15of tKoor;
 tSpielsteine = array[0..15of tSpielstein;
 tReihenfolge = array[0..15of byte;
 tbelegt = array[0..15of boolean;
var
  SpielFeld:tSpielFeld;
  SpielFeldPos :tSpielFeldPos;
  Spielsteine : tSpielsteine;
  Reihenfolge : tReihenfolge;
  belegt : tBelegt;

  gblCount : NativeInt;
  HabeFertig: Boolean;

procedure SwapElem(FeldNr,i:NativeInt);inline;
var
  tmp : byte;
begin
  tmp:= Reihenfolge[FeldNr];
  Reihenfolge[FeldNr]:= Reihenfolge[i];
  Reihenfolge[i] := tmp;
end;

procedure InitSpielsteine;
var
 i,row,col :NativeInt;
Begin
  fillchar(SpielSteine,SizeOf(SpielSteine),#0);
//Spielsteine[0]
  Spielsteine[1][0,0] := 1;
  Spielsteine[2][0,1] := 1;
  Spielsteine[3][1,0] := 1;
  Spielsteine[4][1,1] := 1;

  Spielsteine[5][0,0] := 1;
  Spielsteine[5][0,1] := 1;
  Spielsteine[6][0,0] := 1;
  Spielsteine[6][1,0] := 1;

  Spielsteine[7][0,0] := 1;
  Spielsteine[7][1,1] := 1;

  //invertieren
  For i := 8 to 15 do
    For row := 1 downto 0 do
      For col := 1 downto 0 do
        Spielsteine[i][row,col] := 1-Spielsteine[i-8][row,col];

  i := 0;
  //Auf welchem Platz wird ein Spielstein abgelegt ( linke obere Ecke )
  For row := 0 to 3 do
    For col := 0 to 3 do
    Begin
      with SpielFeldPos[i] do
      Begin
        zeile := 2*row;
        spalte := 2*col;
      end;
      inc(i);
    end;

  For i := 0 to 15 do
    Reihenfolge[i]:= i;
  randomize;
  For i := 15 downto 1 do
  Begin
    col:= random(i+1);
    SwapElem(i,col);
  end;

  HabeFertig := false;
  gblCount := 0;
end;

function TesteSpielStein(SpFdPos:NativeInt):boolean;
var
 pRow1,pRow2 :tpRow;
 row,col :NativeInt;
Begin
  result := true;

  with SpielFeldPos[SpFdPos] do
  begin
    row := zeile;
    col := spalte;
  end;
  pRow1 := @Spielfeld[row];
  //teste darueber, wenn nicht oberste Zeile
  If row >0 then
    Begin
      //pRow2:=@Spielfeld[row-1];
      pRow2 := pRow1;
      dec(pRow2);
      result := (pRow1^[col]=pRow2^[col]) AND (pRow1^[col+1] =pRow2^[col+1]);
      IF NOT(Result) then
        EXIT;
    end;

  //teste links, wen nicht linke Spalte
  If col>0 then
    Begin
    //pRow2:=@Spielfeld[row+1];
    pRow2 := pRow1;
    inc(pRow2);
    result := (pRow1^[col-1] =pRow1^[col]) AND (pRow2^[col-1] =pRow2^[col]);
  end;
end;

procedure SetzeSpielStein(SpFdPos:NativeInt;SpStNr:NativeInt);
var
 pSp:tpSpielstein;
 pRow :tpRow;
 col :NativeInt;
Begin
  pSp := @Spielsteine[SpStNr];
  belegt[SpFdPos]:= true;
  with SpielFeldPos[SpFdPos] do
  begin
    pRow := @Spielfeld[zeile];
    col := spalte;
  end;

  pRow^[col] := pSp^[0,0];
  pRow^[col+1] := pSp^[0,1];
  inc(pRow);
  pRow^[col] := pSp^[1,0];
  pRow^[col+1] := pSp^[1,1];
end;

procedure LoescheSpielStein(SpFdPos:NativeInt);
var
 pRow : tpRow;
 col :NativeInt;
Begin
  belegt[SpFdPos]:= false;
  with SpielFeldPos[SpFdPos] do
  begin
    pRow := @Spielfeld[zeile];
    col := spalte;
  end;
  pRow^[col] := 0;
  pRow^[col+1] := 0;
  inc(pRow);
  pRow^[col] := 0;
  pRow^[col+1] := 0;
end;

procedure Ausgabe;
var
  col,row :NativeInt;
  pRow : tpRow;
Begin
  pRow := @Spielfeld[0];
  For row := 0 to 7 do
  Begin
    iF Not(Odd(row)) then
      writeln;
    For col := 0 to 7 do
    begin
      iF Not(Odd(col)) then
        write('.');
      write(pRow^[col]);
    end;
    writeln;
    inc(pRow);
  end;
  writeln;
end;

procedure Rekurs(FeldNr:nativeInt);
var
  i : NativeInt;
Begin
  IF FeldNr <=  High(tSpielsteine) then
  Begin
    For i := FeldNr to High(tSpielsteine) do
    begin
      SwapElem(FeldNr,i);
      SetzeSpielStein(FeldNr,Reihenfolge[FeldNr]);
      IF TesteSpielStein(FeldNr) then
        Rekurs(FeldNr+1);
      LoescheSpielStein(FeldNr);
      SwapElem(FeldNr,i);
    end
  end
  else
  Begin
    inc(gblCount);
    IF NOT(Habefertig) then
    Begin
      Ausgabe;
      HabeFertig:= true;
    end;
  end;
end;

begin
  InitSpielsteine;
  Rekurs(0);
  Writeln('Es gibt ',gblCount,' Anordnungen');
  readln;
end.


Mit der Ausgabe
ausblenden Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
{ Eine moegliche Ausgabe }
.01.11.11.11
.10.00.01.10

.10.00.01.10
.10.00.00.00

.10.00.00.00
.01.11.10.01

.01.11.10.01
.01.11.11.11

Es gibt 800 Anordnungen


Gruß Horst

Für diesen Beitrag haben gedankt: Mathematiker, Orakel_von_Delphi, Schestex
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 22.12.18 10:36 
Zum Schachrätsel:

Sehe ich das richtig, dass man nicht davon ausgehen darf, auf dem 4er-Feld eine Figur steht?

Wenn da eine Figur stehen soll, hätte ich eine Lösung, die nicht erkannt wird. Sonst muss ich weiter probieren. ;-)

_________________
We are, we were and will not be.
pzktupel
Hält's aus hier
Beiträge: 129
Erhaltene Danke: 30



BeitragVerfasst: Sa 22.12.18 10:42 
@Gausi

Die Felder mit den Zahlen bleiben unbesetzt.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 22.12.18 10:55 
Das ist klar. Meine Frage ist, ob ich auf dem 4er-Feld eine gegnerische Figur annehmen kann, die eine der zu setzenden Figuren am "durchlaufen" hindert.

_________________
We are, we were and will not be.
Mathematiker
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 2622
Erhaltene Danke: 1447

Win 7, 8.1, 10
Delphi 5, 7, 10.1
BeitragVerfasst: Sa 22.12.18 11:03 
Es gibt keine weiteren Figuren als die genannten 6, also auch keine gegnerischen.

_________________
Töten im Krieg ist nach meiner Auffassung um nichts besser als gewöhnlicher Mord. Albert Einstein

Für diesen Beitrag haben gedankt: Gausi
pzktupel
Hält's aus hier
Beiträge: 129
Erhaltene Danke: 30



BeitragVerfasst: Sa 22.12.18 11:09 
Gausi, das 4er Feld ist jenes, was 4mal von den Figuren gleichzeitig attackiert wird.
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8535
Erhaltene Danke: 473

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 22.12.18 11:21 
Das ist mir klar. Aber wenn auf dem Feld eine gegnerische Figur stünde, dann hätte ich weniger Probleme damit, die Attacken von Turm und Dame auf die 0-Felder zu blocken.

Deswegen frage ich. ;-)

Edit: hat sich erledigt. :D

_________________
We are, we were and will not be.


Zuletzt bearbeitet von Gausi am Sa 22.12.18 13:41, insgesamt 1-mal bearbeitet
Aviator
Hält's aus hier
Beiträge: 1



BeitragVerfasst: Sa 22.12.18 13:01 
Tag zusammen!

Ich habe jetzt nicht alle 13 Seiten des Threads durchgelesen, da ich die Lösungen zu den Rätseln nicht sehen wollte.

Aber ich wollte mir gerade mit etwas Verspätung die 2018er Version runterladen, bekam diese aber nicht entpackt. GData schlägt an und sagt mir, dass es ein Trojaner sei. Mit ein paar Ausnahmen auf der Datei funktioniert es zwar jetzt, aber ich musst etwas tricksen, da die Datei ja gar nicht erst erstellt/entpackt wurde.

Wollte das hier nur mal als Info da lassen. Aber trotz allem eine super Anwendung und viel Arbeit. Danke dafür. :)


Ich wünsche allen eine frohe Weihnachtszeit und einen guten Rutsch.
Narses Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Administrator
Beiträge: 10181
Erhaltene Danke: 1254

W10ent
TP3 .. D7pro .. D10.2CE
BeitragVerfasst: Sa 22.12.18 13:48 
Moin!

user profile iconAviator hat folgendes geschrieben Zum zitierten Posting springen:
die 2018er Version runterladen, bekam diese aber nicht entpackt. GData schlägt an und sagt mir, dass es ein Trojaner sei. Mit ein paar Ausnahmen auf der Datei funktioniert es zwar jetzt, aber ich musst etwas tricksen, da die Datei ja gar nicht erst erstellt/entpackt wurde.

Wollte das hier nur mal als Info da lassen.
Danke für den Hinweis, ist aber (leider) alles schon bekannt. Die Heuristiken sprechen leider sehr oft (eigentlich grundlos) auf Delphi-Executables an, die Netzwerkfunktionen nutzen. :nixweiss: Da leider Delphi bei Malware-Entwicklern sehr „beliebt“ ist, müssen wir dieses Los mittragen... :?

Ich versichere hiermit offiziell, dass der Kalender das Vertrauen verdient und wir keine Malware verteilen!

cu
Narses

_________________
There are 10 types of people - those who understand binary and those who don´t.
Schestex
Hält's aus hier
Beiträge: 18
Erhaltene Danke: 6

Win10 & Debian(Server)
Perl, Bash, TCL, C, python
BeitragVerfasst: Sa 22.12.18 13:59 
Zitat:
Ich versichere hiermit offiziell, dass der Kalender das Vertrauen verdient und wir eine Malware verteilen!

+k oder?

Für diesen Beitrag haben gedankt: BenBE, Narses