torsdag 30. september 2010

ALTERNATIVE ALGORITMER

De tradisjonelle algoritmene bygger alle på utnyttelse av plassverdisystemet. Ian Thompson mener at barns forståelse av flersifrede tall mer bygger på forståelse av mengde enn av kolonneverdi. Dette synes spesielt godt i muntlig matematikk, og det har blitt avslørt i diverse tester. Thompson anbefaler derfor algoritmer som bygger på denne mengdeforståelsen[1].

Alternativ addisjonsalgoritme


Når vi bruker standardalgoritmene, regner vi fra høyre mot venstre. Å bygge på mengdebegrepet fører til at man regner fra venstre mot høyre, altså med leseretningen, og slik man vil gjøre når man regner i hodet. La oss se på noen eksempler.


   36
+ 48
   70
   14
= 84
Tierne og enerne legges sammen hver for seg, tierne først. Å legge sammen 70 og 14 kan by på problemer, men ikke store. Legg merke til at i siste steg kan man legge sammen kolonnevis fra venstre mot høyre.


    234
 + 788
    900
    110
      12
=1022
Hundrere, tiere og enere legges sammen hver for seg. Metoden stiller krav til hoderegningsferdigheter, men ikke større enn det man bør ha fått god trening i på det tidspunktet regning med slike tall introduseres.









    4645
 + 7567
  11000
    1100
      100
        12
=12212
Metoden går også greit med større tall.



Ved store tall kan det bli problemer, men det er ikke så ofte vi regner med mangesifrede tall på denne måten. Det er egentlig heller ingen store problemer med å ta i bruk metoden på desimaltall. La oss se på et eksempel.


    657,25
 + 726,82
  1300
      70
      13
        1 0
             7
=1384,07
Det punktet som kan by på størst problemer er nok å få plassert summen av 2 tideler og 8 tideler riktig. Men systemet er det samme som for øvrige mengder, at når man har 10 eller mer, så må man rykke fram en plass med første siffer. Metoden synliggjør jo faktisk veldig godt sammenhengen mellom desimalene og de hele.



Subtraksjon


Når betjeningen i en kiosk eller en kafé skal gi igjen penger, teller de alltid oppover fra prisen til det beløpet du leverer. De bruker en "telle opp" – strategi. Metoden blir brukt over alt, også blant barn (se over), og den er enkel å forstå. Det er fullt mulig å konstruere en algoritme som bygger på dette prinsippet. Den kan se tungvinn ut ved første øyekast, for den krever en del skriving, men det er til gjengjeld enkelt å følge med på hva som foregår til enhver tid.         
         I det praktiske liv vil som regel minuenden være et rundt tall, da du leverer runde penger som du skal ha igjen på.


  200
- 143
      7 ® 150
    50 ® 200
    57
Vi legger først til 7 for å komme til nærmeste tier, nemlig 150. Så legger vi til 150 for å komme til minuenden, 200. Til slutt må vi legge sammen det vi har lagt til. Det blir 57


Hvis vi holder oss til tosifrede tall, vil regnestykkene se slik ut med den metoden som er vist over:


  22
- 17
    3 ® 20
    2 ® 22
    5



Her unnlater vi å bruke den tradisjonelle lånemetoden. Noen vil sikkert mene at vi bør vektlegge innlæringen av veksling og låning. Metoden over er imidlertid helt i tråd med hva som er sagt om elevers forståelse av flersifrede tall.
         Legg for øvrig merke til at bruk av konkreter i slike tilfelle ikke nødvendigvis støtter opp under verken den tradisjonelle metoden eller den ”regn oppover”-metoden som er omtalt her. Dersom man legger ut 22 kuler og fjerner 17 av dem, gjenstår bare å telle opp resten. Det hele reduseres til en telleøvelse, men hensikten med algoritmene jo er å komme forbi tellestadiet, og å øke innsikten i vårt tallsystem. Dessuten er det aldri noe interessant problem å finne ut hvor mange som er igjen. Derimot kan det være av interesse å finne ut hvor mange man for eksempel har mistet, dersom man vet hvor mange man hadde og hvor mange som er igjen, og man skal lete etter dem man mistet. Hvor mange skal man lete etter?
Dersom man skal gjøre noe konkret som støtter opp under den vanlige algoritmen med tierovergang, må man ha samlinger av dekadiske enheter som kan veksles inn eller deles til trinnet under. Man kan for eksempel illustrere tallet 22 ved hjelp av to bunter pinner med 10 i hver og to løse pinner. Så kan man løse opp den ene bunten slik at man har i alt 12 enere og en tierbunt. Da kan man ta fra hverandre tierne og enerne for seg og få 5 enere (og 0 tiere). Det er også nyttig å presisere at man bruker samme vekslingsrate høyere oppe i tallsystemet, dvs. at det er ti tiere i ett hundre, ti hundrer i ett tusen osv. Da er det også greit å forstå for eksempel at det er hundre tiere i ett tusen.
Begrepet ”å låne” er et uklart begrep. Det kan fort gi inntrykk av at sifrene i et flersifret tall utgjør ulike tall, i stedet for å få fram at det er ett tall man opererer med. Det er bedre å bruke uttrykkene ”veksle inn” eller ”omgruppere”. Uttrykket ”å omgruppere” forteller langt mer direkte hva som egentlig foregår enn uttrykket ”å låne”. Dessuten er det nær sammenheng mellom slik veksling ved subtraksjon og det man gjør når man adderer tall med tierovergang. Da veksler man jo også inn, bare i motsatt retning. Omgrupperinger av ulike slag brukes dessuten naturlig i mange sammenhenger, som for eksempel når man utfører addisjoner eller multiplikasjoner i hodet.


La oss bruke algoritmen vår på et litt mer krevende eksempel.


  424
- 176
      4 ® 180
    20 ® 200
  200 ® 400
    20 ® 420
      4 ® 424
  248

Vi skal regne oss oppover fra 176 til 424. Beregningen begynner med å gå opp til nærmeste tier, det vil si fra 176 til 180. Da må vi legge til 4. Til høyre skriver vi hvor langt vi har kommet oppover mot målet. Neste steg er å bevege seg opp til nærmeste hundre, så til nærmeste tier igjen, og til slutt enerne opp til minuenden. Helt til slutt må vi addere alt vi har lagt til. (Når man gir tilbake penger, sløyfer man vanligvis det siste steget, men her kan vi selvfølgelig ikke gjøre det).

                           
Prosedyren er som sagt noe omstendelig, men den bygger opp under tallfølelsen, og den er i tråd med virkeligheten utenfor skoleporten. Med litt trening vil det også være mulig å gå litt fortere fram, noe man ikke bør hindre elever i å gjøre i dette tilfellet, hvis de beherske det de driver med. Det er også et spørsmål om man behøver å skrive opp mellomstasjonene, slik som det gjort i eksemplene over.
         Hvis minuenden inneholder mange nuller, er metoden enkel, sammenlignet med den tradisjonelle algoritmen.

  20005
-     308
        92      ®          400
      600      ®        1000
  19000      ®      20000
          5       ®      20005
Det er trolig atskillig lettere å forstå dette enn den tradisjonelle algoritmen, der man må låne gjentatte ganger.

  19697

La oss også se på et par eksempler med desimaltall.

  14,7
-   8,9
    0,1 ®   9,0
    5,0 ® 14,0
    0,7 ® 14,7
    5,8
Det er ingen ting i veien for å bruke metoden også her.


Svært mange elever sliter med å forstå desimaltall. Undersøkelser viser at misforståelser er svært utbredt. Jeg vil tro at en slik regnemetode som vist her, kan bidra til å bygge opp bedre forståelse hos dem.
Mange vil mene at når man er kommet så langt som til desimaltall, bør man uansett ha gått over til å bruke standardalgoritmer. Om så skulle være tilfelle, kan det likevel være lurt å plukke fram igjen den algoritmen som er vist her. Å gå grundig inn på desimaltallene ligger imidlertid utenfor temaet til denne boka, så jeg skal ikke gå nærmere inn på det her, bare vise et mer krevende eksempel.


  12,345
-   8,468
           2 ®   8,470 (= 8,47)
         30 ®   8,500 (= 8,5)
       500 ®   9,000 (= 9)
    3        ® 12,000 (=12)
       345 ® 12,345
    3,877
 
  12,345
-   8,468
    0,002 ®   8,470 (= 8,47)
    0,030 ®   8,500 (= 8,5)
    0,500 ®   9,000 (= 9)
    3,000 ® 12,000 (=12)
    0,345 ® 12,345
    3,877
I eksempelet til venstre har jeg laget to versjoner, ett der kommaet er sløyfet i mellomregningene og ett der det er tatt med hele veien.

Vi ser at metoden kan brukes også her, men det krever god innsikt i desimaltallenes oppbygging.



Multiplikasjon


Den algoritmen som foreslås her foreslås for multiplikasjon er ikke så veldig forskjellig fra standardalgoritmen å se til, men selve virkemåten er mye klarere. Algoritmen bygger på de grunnprinsippene som er nevnt over. Vi regner fra venstre mot høyre, og vi regner med mengder, ikke med rene plassverdier. Som vi ser av eksempelet under, fører dette til at rekkefølgen for delproduktene snus, men ellers ser regnestykket ut som vi er vant til.
                           

23 × 7
140   (20 × 7)
  21     (3 × 7)
161
Først tar vi 20 sju ganger og får 140. Deretter tar vi for oss enerne. 3 sju ganger blir 21. Til sammen blir dette lik 161

                           
I eksempelet over har jeg fulgt den rekkefølgen for faktorene som ligger nærmest opp til den norske standardalgoritmen. Det tradisjonelle er da å skrive multiplikator bak multiplikand. Dette er imidlertid det motsatte av hva vi gjør når vi introduserer multiplikasjon som gjentatt addisjon. Da skriver vi at 5 × 3 = 3 + 3 + 3 + 3 + 3, det vil si med multiplikator først og multiplikand bakerst[2]. Dersom vi skal være konsekvente, burde vi gjort det samme i vår nye multiplikasjonsalgoritme, som da vil se slik ut:


7 × 23
   140                   (20 × 7)
     21                  (3 × 7)
   161

         Hva skjer hvis også multiplikator er tosifret? La oss se på et eksempel.


27 × 43
     800       (20 × 40)
       60       (20 × 3)
     280       (7 × 40)
       21       (7 × 3)
   1161 
Også dette går fint. Vi regner med mengder slik som før, og fra venstre mot høyre.



         Utregningen i eksempelet over er nøyaktig lik den man mest naturlig vil bruke om man prøver å regne i hodet. Det naturlige da er jo å splitte faktorene i tiere og enere:
        
Legg merke til at vi her bruker samme struktur som i algebra. Vi må sette parentes rundt faktorer som inneholder en sum eller en differens, og vi må gange hvert ledd i den ene parentesen med hvert ledd i den andre. Bruk av algoritmen over har derfor stor overføringsverdi til algebra, mens den tradisjonelle algoritmen ikke har det. Nettopp dette med parenteser og multiplikasjon av dem, er ofte en stor anstøtsstein for mange elever i ungdomsskole og videregående skole. Vi ville gjøre disse elevene en stor tjeneste ved å lære dem algoritmen over.
         Ellers er det også fint å illustrere produktet mellom tosifrede tall geometrisk. Slik får vi knyttet en fin forbindelse mellom aritmetikk, algebra og geometri.
 
Ved multiplikasjon med større tall, er det imidlertid vanskelig å bruke den nye algoritmen. Dersom man for eksempel skal multiplisere 243 med 618, blir metoden over altfor komplisert. Det vil likevel være nyttig å ha jobbet på den måten først, for det vil gjøre det langt lettere for elevene å forstå hvordan standardalgoritmen fungerer.

Tradisjonell norsk algoritme:
               243 · 618
             1944
             2430
         145800           
         150174

Alternativ 1:
               243 · 618
                      1854
                    24720
                  123600           
                  150174

Alternativ 2:
               243 · 618
                      123600
                        24720
                          1854           
                      150174
Egentlig multipliserer vi jo her først 243 med 8, så med 10 og til slutt med 600. Dette er helt i tråd med metoden over, bortsett fra at vi multipliserer fra høyre mot venstre.



Slik sett kunne det vært naturlig å gange motsatt vei, dvs. å multiplisere 618 med henholdsvis 3, deretter med 40 og så med 200
(alternativ 1).


Dersom vi skulle følge mønsteret fra vår algoritme mer nøye, der vi regner fra venstre mot høyre, burde vi multiplisere med 200 først,
så med 40 og så med 1
(alternativ 2).

Vanligvis har alle ”overflødige” nuller blitt sløyfet når man har regnet for hånd. Dette er nok opprinnelig et rent rasjonaliseringstiltak. Fordelen med å sløyfe nullene er tvilsom, om hensikten er å gi elevene forståelse for hva som skjer.

Tradisjonell norsk algoritme:
               243 · 618
             1944
             243
         1458           
         150174

Alternativ 1:
               243 · 618
                      1854
                    2472
                  1236           
                  150174


Alternativ 2:
               243 · 618
                      1236
                        2472
                          1854           
                      150174

Dersom man skal gi elevene forståelse av disse oppstillingene uten å gå veien om oppstillinger der nullene er med, må man bruke plassverdiprinsippet på en ganske snedig måte. Tallene i 2. rekke (243 eller 2472) må betraktes som et visst antall 10-ere, mens tallene i tredje rekke (1458 eller 1236) er hundrer. Siste siffer i tierne plasseres rett under tierplassen i multiplikanden og tilsvarende med hundrene. Legg merke til at her er man helt avhengig av korrekt vertikal plassering. Dersom nullene er med i regnestykket, er dette mindre påkrevet.
         Et godt argument for å jobbe med nettopp denne måten å se oppstillingen på, er imidlertid at dette kan være et fint tidspunkt for å se nøyere på plassverdisystemet. Det er dessuten sterke forbindelser mellom denne kunnskapen og det som trengs for å kunne multiplisere og dividere med dekadiske enheter. I virkeligheten er det samme kunnskap. Å se at 2472 tiere skal plasseres på tierplassen, er det samme som å vite at 2472 · 10 = 24720. Det finnes et utall slike forbindelser. Noen av dem er nevnt i et eget avsnitt lengre ut i teksten. Etter min mening kan man aldri få diskutert slike sammenhenger ofte nok. Nettopp derfor kan det være fint å variere bruk av algoritmer, eller i hvert fall bruke flere trinn i prosessen fram mot en standardalgoritme.
Hva så med desimaltall? Dersom man skal multiplisere desimaltall med hverandre, er nettopp arealer en fin måte å forklare hva som foregår på. Da er det jo vanskelig å bruke forklaringen med gjentatt addisjon, selv om de nok er mulig, dersom man gjør om tallene til brøk. La oss bruke de samme sifrene som over, men ta 2,7 × 4,3 i stedet for 27 × 43. For å illustrere dette, må vi gå litt grundigere til verks. Det kan for eksempel gjøres som i figuren under.

Om vi vil, kan vi skrive 8,00 + 0,60 + 2,80 + 0,21. Da går det tydeligere fram at ei lita rute er lik 0,01.
         Dersom vi bruker algoritmen vår, vil det se slik ut:


2,7 × 4,3
     8,00      (2 × 4)
     0,60      (2 × 0,3)
     2,80      (0,7 × 4)
     0,21      (0,7 × 0,3)
   11,61 
Eller
2,7 × 4,3
     8            (2 × 4)
     0,6        (2 × 0,3)
     2,8        (0,7 × 4)
     0,21      (0,7 × 0,3)
   11,61 


Også her finner vi naturligvis igjen de samme elementene som i figuren over, og de samme som vi ville finne om vi regnet ut .

Divisjon


Divisjon er den regningsarten elever synes er vanskeligst, i hvert fall når vi har med litt store tall å gjøre. Standardalgoritmen for divisjon er nok også den som ligger lengst unna den måten vi naturlig vil gjøre overslag eller regne i hodet på. La oss illustrere dette ved et eksempel, 96 : 6.

Standardalgoritme

96 : 6 = 16
6
36
36
Ny algoritme

  96 : 6
- 60            10 × 6
  36
- 36              6 × 6
    0
Svar:          16

Den nye algoritmen kan se omstendelig ut, men den følger en naturlig tankegang. Først ser vi hvor mange hele tiere hver av seks personer kan få hvis de skal dele 90 stk. likt mellom seg. Det blir 1, og da har vi tatt ut 60, slik at vi har 36 igjen. Det er akkurat nok til 6 stk. på hver av de seks.
         Dette er kanskje den algoritmen der det er minst å tjene i forhold til den tradisjonelle, men den har likevel sine fordeler. Man kan for eksempel dele divisjonen i flere deler, uten å måtte bekymre seg for rester som er større enn divisor.


108 : 12
  60            5 × 12
  48            4 × 12
  48           
Svar:          9
I denne divisjonen kan det være enklere å dele den opp slik som til venstre, heller enn å måtte ta 9 ganger med det samme. Enda mer nærliggende kan dette være dersom divisjonen ikke går opp, som for eksempel i 110 : 12.


Metoden kan også brukes i divisjon med desimaltall, uten at man behøver å utvide divisjonen.


32,4 : 0,9
  9               10 × 0,9
23,4
18              20 × 0,9
  5,4
  5,4             6 × 0,9
Svar:          36
I dette eksempelet har jeg valgt å vise at man kan prøve med 10 ganger først, for så å ta 20 i neste steg. Logisk sett er flere varianter like gode.



Det er altså mulig å innføre algoritmer som er i tråd med hoderegning og med stor overføringsverdi til algebra, for alle de fire regningsartene, uten at man behøver å renonsere vesentlig på effektiviteten. Med den frie tilgangen man har til elektroniske regneverktøy i våre dager, bør dette være attraktive metoder.

Multiplikasjon og divisjon med dekadiske enheter


I eksemplene over har vi hele tiden forutsatt at elevene behersker multiplikasjon med dekadiske enheter, dvs. med 10, 100 osv. Men det er ingen selvfølge at elevene kan dette. Å vite at man bare kan føye til en null når man skal finne for eksempel produktet 27 · 10, er også en forutsetning for å bruke at 20 · 3 = 60 eller at 300 · 40 = 12000 i en videre sammenheng. Egne erfaringer viser at mange elever i ungdomsskolen er ukjente med dette. De stiller gjerne opp algoritmisk:

         300 · 40
         000
     1200
     12000

Ofte kan de gå surr i alle nullene og få feil. Å arbeide med denne kunnskapen er derfor essensielt, og ikke bare av hensyn til algoritmeregning, men også for hoderegning og dermed diverse slags overslagsberegninger.
         Like viktig som å kunne gange med de dekadiske enhetene, er det å kunne dele med dem. Men har eleven først fått tak i multiplikasjonen, så går divisjonen greit, spesielt hvis man har arbeidet bevisst med at multiplikasjon og divisjon er motsatte regningsarter.
         Spesielt viktig er det selvsagt å arbeide med de dekadiske enhetene når man skal regne med desimaltall. Målet må være at elever uten problemer kan skrive rett ned slike ting som at

2,43 · 10 = 24,3                    2,43 : 10 = 0,243                  2,43 · 100 = 243                  
24,3 · 100 = 2430       243 : 100 = 2,43                   24,3 : 10 = 2,43
2,43 · 1000 = 2430     2,43 : 1000 = 0,00243  osv. osv.

Én forutsetning for å forstå dette er sammenhengen mellom de dekadiske enhetene som er behandlet tidligere i teksten.     Det er også viktig å framheve at det å føye til eller stryke nuller og å flytte komma ikke er det essensielle når vi multipliserer eller dividerer et tall med en dekadisk enhet. Det essensielle er at alle sifrene i tallet flyttes til en ny posisjon. Nuller er bare plassholdere, og desimalkommaet er bare et tegn som markerer plasseringen av enerne.




[1] Thompson 2003: 181 - 190
[2] Begrunnelsen for å bruke denne rekkefølgen er språklig. Fem "ganger" tre, man tar tre fem ganger.

Ingen kommentarer:

Legg inn en kommentar