Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 6 odgovora
  • 6.660 pregleda

Najnovija ↓

Kako koristenjem brojeva 5 2 3 3 dobiti 100 14.07.2008. u 15:06 · pre 223 meseca #1
Dakle, ne smije se koristiti stepenovanje, vec samo osnovne racunske operacije, tj, + - x i /. Takodje svaki broj smijete koristiti samo jednom.
Re: Kako koristenjem brojeva 5 2 3 3 dobiti 100 14.07.2008. u 23:24 · pre 223 meseca #5
Citat:
adnanK: Dakle, ne smije se koristiti stepenovanje, vec samo osnovne racunske operacije, tj, + - x i /. Takodje svaki broj smijete koristiti samo jednom.


Ja cu definisati + kao

a+b=a\oplus 29 \oplus b
gde je \oplus sabiranje brojeva, a + neka osnovna operacija ovako definisana :)
5+2=36
36+3=68
68+3=100

Potpis
http://www.svijetfizike.com/
Re: Kako koristenjem brojeva 5 2 3 3 dobiti 100 14.07.2008. u 23:48 · pre 223 meseca #6
S ova 4 broja i 4 operacije može se dobiti najviše \frac{4!}{2!}\cdot 4^3\cdot C_3=3840 različitih rezultata (prvi činilac predstavlja broj mogućih rasporeda ova četiri broja, pri čemu delimo sa 2! jer se dva puta pojavljuje isti broj; drugi činilac prebraja operacije koje se mogu udenuti između određenog rasporeda datih brojeva; treći činilac je C_3=5, Katalanov broj, i on uračunava zagrade). Naravno, stvarni broj različitih rezultata je dosta manji (pre svega, neki od dobijenih izraza su ekvivalentni, a i možda i neki drugi daju isti rezultat), ali i ovo je dovoljno da se začas (računarom) testira može li se dobiti traženi broj. Štaviše, program dole (pisan u programskom paketu Mathematica) pronalazi sva rešenja: ima ih ukupno 270 (računajući i \infty), i među njima nema broja 100 (štaviše, najveći rezultat je 90, a najmanji -43).

Code:
Module[{Operacije, Permutacije, i, j, k, p, a, b, c, d, op1, op2, 
  op3},
 Resenja = {};
 Operacije = {"+", "-", "*", "/"};
 Permutacije = Permutations[{"5", "2", "3", "3"}];
 For[i = 1, i <= 4, i++,
  For[j = 1, j <= 4, j++,
   For[k = 1, k <= 4, k++,
    For[p = 1, p <= Length[Permutacije], p++,
     a = Permutacije[[p, 1]];
     b = Permutacije[[p, 2]];
     c = Permutacije[[p, 3]];
     d = Permutacije[[p, 4]];
     op1 = Operacije[[i]];
     op2 = Operacije[[j]];
     op3 = Operacije[[k]];
     Resenja = Join[Resenja, {
        ToExpression[
         StringJoin["((", a, op1, b, ")", op2, c, ")", op3, d]],
        ToExpression[
         StringJoin["(", a, op1, "(", b, op2, c, "))", op3, d]],
        ToExpression[
         StringJoin["(", a, op1, b, ")", op2, "(", c, op3, d, ")"]],
        ToExpression[
         StringJoin[a, op1, "((", b, op2, c, ")", op3, d, ")"]],
        ToExpression[
         StringJoin[a, op1, "(", b, op2, "(", c, op3, d, "))"]]
        }]
     ]
    ]
   ]
  ];
 Resenja = Union[Resenja]
 ]

Onda mi je palo na pamet da je autor zadatka možda prihvata i (unarnu) operaciju negacije. No, svaki tako dobijen broj već bi se morao nalaziti na dobijenom spisku, eventualno sa suprotnim znakom. Kako smo već konstatovali da je najmanji broj koji smo dobili -43, ni s ovim dodatkom ne možemo premašiti 90. Dodajmo samo da se u ovom slučaju dostiže 356 različitih rešenja.
Potpis
Ljubičice crvena, što si plava kô zelena trava.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme