3. Lær at programmere: Variable og tildelinger

Variable og tildelinger 

 Variable og tildelinger


Indtil nu, når vi har  'puts'et' en streng eller et tal vil det vi har skrevet ud - det vi har puts'et -  være forsvundet. Det jeg mener er, at hvis vi ville skrive den samme ting igen, ville vi være nødt til at skrive det hele igen:

puts '...og du kan skrive det igen ...'
puts '...og du kan skrive det igen ...'


...og du kan skrive det igen...
...og du kan skrive det igen...


Det ville være rart hvis vi kunne skrive det en gang, og så på en eller anden måde have det ... gemme det et eller andet sted. Og hurra! det kan vi, ellers ville jeg selvfølgelig ikke have skrevet om det.

For at gemme en streng i computerens hukommelse må vi give strengen et navn. Programmører siger at de 'tildeler' strengen til et navn, en variabel. Variablen, navnet, kan være næsten enhver række af bogstaver og tal, det første bogstav skal dog være et lille bogstav. Lad os prøve at lave det sidste program igen men denne gang vil jeg give strengen navnet 'minStreng' (selvom jeg lige så godt kunne have givet den navnet minEgenLilleStreng eller kronprinsFrederik)

minStreng = '...og du kan skrive det igen...'
puts minStreng
puts minStreng


...og du kan skrive det igen...
...og du kan skrive det igen...


Såsnart du gør noget med minStreng, vil programmet i stedet gøre det med '...og du kan skrive det igen...". Man kan forestille sig at variablen minStreng 'peger' på strengen '...og du kan skrive det igen...'. 

Her er et lidt mere interessant eksempel:

navn = 'Simon Philip Frederik Gunner Carstens'
puts 'Mit navn er  ' + navn + '.'
puts 'Wow!  ' + navn + ' er godtnok et langt navn!'



Mit navn er Simon Philip Frederik Gunner Carstens
Wow Simon Philip Frederik Gunner Carstens eer godtnok et langt navn!


Ligesom vi kan tildele ét objekt til en variabel, så kan vi senere tildele et ándet objekt til den variabel. (Det er derfor vi kalder dem variabel: det de peger på kan variere)..



komponist = 'Mozart'
puts komponist + ' var "den sejeste", da han levede.'

komponist = 'Beethoven'
puts 'Men jeg foretrækker faktisk  ' + komponist


Variable  kan selvfølgelig pege på alle slags objekter, ikke bare strenge:

var = 'en helt almindelig ' + 'streng'
puts var

var = 5 * (1+2)
puts var


en helt almindelig streng

15

Faktisk kan variable pege på næsten alting... undtagen andre variable. Så hvad sker der hvis vi prøver?
var1 = 8
var2 = var1
puts var1
puts var2

puts ''


var1 = 'otte'
puts var1
puts var2



8
8

otte
8


Så først da vi prøvede at få var2 til at pege på var1, så pegede den i virkeligheden bare på '8' (ligesom var1 gjorde). Vi fik så var1 til at pege på 'otte' men da var2 aldrig rigtig pegede på var1 så bliver den ved med at pege på '8'.

Så nu hvor vi har set på variable, tal og strenge kan vi gå i gang med at blande dem godt og grundigt sammen.
                                                                                                                

 

Af Chris Pine

oversat af Gunner Carstens

Original tekst

Indledning

Kapitel 1 - Tal

Kapitel 2 -Bogstaver

Kapitel 3 Variable og tildelinger

Kapitel 4 Blande det hele sammen

Kapitel 5 Mere om metoder

Kapitel 6 Kontrol med strømmen

Kapitel 7 Sæt og Gentagere

Kapitel 8 Skriv dine egne metoder

Kapitel 9 Klasser

Kapitel 10 Blokke og Procs

Kapitel 11 Hvad nu?







Opgavedel

irclog fra kurset