Matematik

Algoritme til Excel

08. maj 2014 af SuneChr - Niveau: A-niveau

For alle ai skal gælde,  1 ≤ ai ≤ 10SP 0805141648.PNG

Vedhæftet fil: SP 0805141648.PNG

Brugbart svar (0)

Svar #1
08. maj 2014 af hesch (Slettet)

Hej Sune.

Excel ?   Det ligner jo noget man ville programmere i C, eller lignende, evt. med en tilsats af assembler, for nu at lade beregningerne løbe lidt hurtigere. Excel har jeg kun et minimum af erfaring med.

Opgaven ligner også noget, der kunne ligne en spillestrategi for et spil. Fx havde man i fordums tid et spil, hvor man lagde tændstikker op på bordet i fire grupper ved:

         I

      I  I  I

   I  I  I  I  I

I  I  I  I  I  I  I

Spillerne skiftedes så til at fjerne een eller flere tændstikker som samlet gruppe, og den som fjernede den sidste tændstik var taber, og måtte give en bajer. Spillet var meget populært i værtshusmiljøer i starten af firserne, og alle havde deres strategi for, hvordan dette spil skulle spilles. Der var regler som: Antallet af grupper + antal af resterende tændstikker skal give et lige tal, osv. 

En dag satte jeg mig for at knække nødden, og lavede et program der kunne udregne korrekte kombinationer med korrekte gruppestørrelser, således at man altid vandt. De korrekte regler viste sig at være ret komplicerede, og kombinationerne måtte derfor læres udenad. Når jeg blev udfordret til et spil, sagde jeg: Lad være, jeg vinder altid. Og det gjorde jeg så, hvis udfordreren ikke bakkede ud.

Men det ligner opgaven altså, men vil du virkelig have alle kombinationerne skrevet ud, for 4≤n≤17 ?  Hvor mange blækpatroner ligger du inde med ?    :)

PS:  Har endog drevet græske bartendere til vanvid.


Svar #2
08. maj 2014 af SuneChr

# 1  Tak for indlægget.
Nej, jeg skal ikke ha' skrevet det ud for alle fjorten mulige n værdier.
Jeg skal kun, for et givet n i intervallet, bestemme alle mængderne, som indeholder n elementer, - nogle med evt. gentagelse(r), - og hvis sum er et givet tal σn . Det er en algoritme, hvori man indsætter n og σn  jeg efterlyser.


Brugbart svar (0)

Svar #3
08. maj 2014 af hesch (Slettet)

#2:  En algoritme bliver nok en kompliceret sag. Men mere enkelt kan man jo lave en tæller i base-11 ( 0..10 ), der bare hamrer derudaf.  Ved efterfølgende inspektion frasorteres alle ugyldige kombinationer, og de resterende sorteres/frasorteres som følge af "gengangere"  ( 1,2,4,7,10,10 = 10,2,1,7,4,10  osv. ).

Det kræver noget RAM at håndtere disse datamængder, men det har nutidens PC'er jo masser af.

Man kan jo "komprimere" datamængden, når den fx overskrider 10MB, og herefter generere yderlige data.


Brugbart svar (0)

Svar #4
08. maj 2014 af hesch (Slettet)

Ovenstående lyder omstændeligt, men opgaven  ρ6 = 34 kan vel løses regnetidsmæssigt på omkring 50-100μs, bare det ikke er med Excel.


Svar #5
08. maj 2014 af SuneChr

Jeg kan konstruere en model af opgaven, som lyder:
På et brev, som skal frankeres med σn kr., skal der påsættes netop n frimærker.
Til rådighed har man
4 frimærker af hver af værdierne 1, 2, 3, ... , 9 kr.
og
16 frimærker hver af værdien 10 kr.
Hvor mange forskellige frankeringer er mulig, når rækkefølgen af påsætning af frimærkerne er ligegyldig?
 


Brugbart svar (0)

Svar #6
09. maj 2014 af hesch (Slettet)

#5: Jeg har mere hæftet mig ved opgavetypen, og ved et design af beregningsprogrammet. Jeg går meget op i sidstnævnte, hvilket er lidt IT-nørdet. Og nej, jeg har aldrig udviklet programmer til IC4-tog, til Skat, eller testprogrammer til Bornholms Politis efterforskning. Jeg ville være totalt malplaceret her.    :)

Jeg prøver bare at skitsere et design til løsning af nu mulige frimærkekombinationer, og finder ikke Excel-algoritmer for optimale. Iøvrigt kan jeg ikke være behjælpelig med Excel ( inkompetance ).    :)

Måske Post Danmark som kundeservice har en freeware Excel-løsning, men pas på !   Test det endeligt grundigt ( simulation ), inden praktisk ibrugtagning !  Det er en halvoffentlig institution, du har med at gøre her.


Brugbart svar (0)

Svar #7
12. juli 2014 af hesch (Slettet)

Hej Sune! 

Da jeg har nogle gamle Pascal-programmer, har jeg downloadet Borland Turbo Pascal, og skulle træne det gamle håndværk på dit eksempel ( frankeringsmodel ).

Eksemplet med  ρ6 = 34 giver 225 forskellige kombinationer og regnes ud på 1/100 sek. Du kan måske omskrive det til C-kode ?

Program og frankeringstabel vedhæftet


Brugbart svar (0)

Svar #8
12. juli 2014 af hesch (Slettet)

Tabel


Brugbart svar (0)

Svar #9
12. juli 2014 af hesch (Slettet)

Nå, det var lidt svært, prøver igen.

Vedhæftet fil:STAMPS.pdf

Brugbart svar (0)

Svar #10
12. juli 2014 af hesch (Slettet)

Og her tabel:

Vedhæftet fil:TABEL.pdf

Skriv et svar til: Algoritme til Excel

Du skal være logget ind, for at skrive et svar til dette spørgsmål. Klik her for at logge ind.
Har du ikke en bruger på Studieportalen.dk? Klik her for at oprette en bruger.