Gå til innhold

variabler, int - noen som kan?


Anbefalte innlegg

Driver å forbereder meg til eksamen. har en oppgave som jeg står litt fast på. kan noen hjelpe meg litt? her er oppgaven...

Betrakt koden nedenfor:

int num1, num2;

num1 = 50;

num2 = 15;

num1 = num2;

a) Hvilken verdi er lagret i variabelen num1 i henhold til denne koden?

b) Hvilken verdi vil være lagret i num1 dersom vi utvider programmet med linjen

  num2    =  num2 + 10;

c) Vil programmet fortsatt kompilere dersom vi legger til linjen

  num3 = num2;

  ?

Lenke til kommentar
Videoannonse
Annonse

Hvis du ikke klarer denne oppgaven selv, får du heller stryke på eksamen. Noe sier meg at du ikke har tatt faget særlig alvorlig.

 

Dette har heller ingenting med Java å gjøre, så vidt jeg kan se.

 

Werner

Lenke til kommentar
Hvis du ikke klarer denne oppgaven selv, får du heller stryke på eksamen.  Noe sier meg at du ikke har tatt faget særlig alvorlig.

 

Dette har heller ingenting med Java å gjøre, så vidt jeg kan se.

 

Werner

8733709[/snapback]

 

 

Jeg spør bare om litt hjelp til en oppgave. Det har med java å gjøre jo, så ikke si at jeg ikke har tatt det seriøst. ;)

Lenke til kommentar

Vi må i det minste forvente litt engasjement fra din side også, hvis vi skal ha noe ønske om å hjelpe deg. Og det klarer jeg ikke å spore i din melding. Husk, vi bruker jo av vår egen dyrebare tid, som vi kunne brukt til mye annet fornuftig.

 

Hvis du lurer på hva jeg mener med engasjement, så skal jeg utdype:

 

Har du prøvd å kjøre programmet ditt? Isåfall, fikk du noen feil? Og hvis det siste var tilfelle, hvilke feilmeldinger var det snakk om?

 

Det koster så lite å lage en enkel Java-klasse, putte inn de få linjene med kode inn i main-metoden til klassen, sette noen breakpoints og så kjøre en debug, for så å steppe gjennom koden og se på innholdet i variablene. Dette må du ha lært.

 

Werner

Lenke til kommentar

Ja, jeg vet... Nå er det ikke min maskin jeg bruker, jeg er på besøk og låner en gammel haug pga min er krasjet. Hun har ikke bluej, eller noe på den maskinen også kjører hun linux. :hrm: Oppgaven står på papir, så jeg prøver å løse den der.

 

Okay, jeg skal prøve å si hvordan jeg tenker med fare for å drite meg ut.

 

num1 = 50;

 

tallene i dataverden starter vel på 0 så 50 er vel det samme som 51?

 

num1 = 15;

 

da blir det vel 16?

 

num1 = num2;

 

blir det num1 + num2? Altså 67?

 

hvis vi får num2 = num2 + 10;

 

Det blir 51+16+11 altså 78?

 

og om det vil kompilere når vi legger til den num3 vet jeg ikke...

 

Slik, her er det jeg har tenkt uten å få prøve det.

 

 

EDIT: En som var kjappere enn meg, så jeg dumma meg ut ja... Redd for at det blir stryk ja, men så tok jeg bare dette faget på gøy for å se om det var noe jeg har lyst til å gå videre med, noe jeg ikke skal. Ja, ja... Det er kjekt å stå på eksamen uansett da.

Endret av lizza-krissa
Lenke til kommentar

Programmering er kommunisme, ergo tildeles verdier fra høyre til venstre.

 

num1 = num2; er derfor det samme som num1 = 15; (verdien til num1 overskrives når man bare sier =).

 

Variablene har for øvrig akkurat den verdien det står at de har, og ikke én mer fordi verdiene begynner på 0. 0 er 0, 1 er 1 og 70 er 70. Hvis du tenker på arrays, derimot, er det sånn at et array på 20 celler/felter går fra 0-19, det var sikkert dette du tenkte på.

 

--

 

Såeeh... Du er NITH'er?

Lenke til kommentar
Programmering er kommunisme, ergo tildeles verdier fra høyre til venstre.

 

num1 = num2; er derfor det samme som num1 = 15; (verdien til num1 overskrives når man bare sier =).

 

Variablene har for øvrig akkurat den verdien det står at de har, og ikke én mer fordi verdiene begynner på 0. 0 er 0, 1 er 1 og 70 er 70. Hvis du tenker på arrays, derimot, er det sånn at et array på 20 celler/felter går fra 0-19, det var sikkert dette du tenkte på.

 

--

 

Såeeh... Du er NITH'er?

8734301[/snapback]

 

Ah, tusen takk... :)

 

Går på UIB ;)

Lenke til kommentar
Ai, lykke til! Håper det er INF100, og ikke noe høyere. Hvordan har du stått de obligatoriske oppgavene? "Gruppearbeid"?

8736236[/snapback]

 

Info132, Grunnkurs i programmering... Eksamen tror jeg gikk greit fikk nesten bare det jeg kunne best. :) Jeg klarte meg fint på de obligatoriske oppgavene. Gjorde nesten alt selv. Jeg klarer meg fint hvis jeg ser på eksempeloppgaver og får litt hint av asaistentene. Og når jeg sitter med all koden framfor meg i blueJ så er det ikke så vanskelig å prøve seg fram til det riktige. Jeg har bare så dårlig hukomelse på slike ting. Med en gang jeg er ferdig med noe som jeg ikke liker så godt så er nesten all kunnskapen borte. "Litt" satt på spissen da, men dere skjønner sikkert. :p

Lenke til kommentar
... er på besøk og låner en gammel haug pga min er krasjet. Hun har ikke bluej, eller noe på den maskinen også kjører hun linux. ...

8734190[/snapback]

 

1. Linux? For ei kul jenta!! :cool:

 

2. Det er berre å leggja inn Java då - er ikkje vanskeleg. Dessutan hev ho nok allereie ein enkel java inne, og når eg ser på den oppgåva der so vil ein ikkje trenga noko anna enn ein enkel Java.

 

3. BlueJ? Wtf? (ser på det) Æsj... Jaja, det er i Java, so det er jo berre å leggja inn å køyra.

 

Elles er eg heilt utruleg overraska yver at du hadde eit problem med denne oppgåva. Det må jo stå noko i lærebøkene um dette? Det er jo det fyrste ein lærer. Godt eg ikkje valde å gå informatikk på UiB.

Lenke til kommentar

UiB har nok som alle skoler et meget varierende nivå når det gjelder programmeringskunnskaper. Kan ikke si at dette nivået gjelder samtlige, men det gjelder nok dessverre de som blir "tvunget" til å ta faget som en del av deres IKT-utdannelse.

Lenke til kommentar

Jeg kan se at det kanskje kan være litt forvirring mellom int/Integer, siden opgave b ville vært 25 dersom det var Integer og ikke int-verdier.

Sikkert fort gjort å blingse på noe slikt om man ikke har gjort en del praktiske oppgaver..

Lenke til kommentar
For å svare...

 

 

a)

15.

 

b)

Fremdeles 15.

 

c)

Nei.

 

Men dette er jo så grunnleggende som det går an, blir nok stryk på eksamen for deg.

8734178[/snapback]

 

 

Jeg skjønte B og C nå tror jeg, men hvorfor er A 15?

8734260[/snapback]

 

Jo det skal jeg si deg du;

 

int num1, num2;

--Her deklareres bare variablene, slik at koden kompileres (noe som gjør at C) blir feil, fordi det ikke finnes noen "int num3;" noen steder).

 

num1 = 50;

Her settes num1 til 50.

 

num2 = 15;

Her settes num2 til 15.

 

num1 = num2;

Det som gjøres her er at num1 settes til verdien av num2. Det som egentlig står er "num1 = 15". Det "overskriver" tallet 50 som allerede lå der, så nå er både num1 og num2 15.

 

Grunnen til at A) er 15, er jo pga. det jeg skrev ovenfor. B) er 15 fordi num1 ikke har noe som helst å gjøre med spørsmålet, det står jo "num2 = num2 + 10" -- ingen num1 her. Det som egentlig står er "num2 = 15 + 10". Det som står til venste for "=" er navnet på variabelen, og det som kommer etter er verdien, som Mr. Berg sier. Derfor blir dette num2 = verdien_av_num2(15) + 10.

 

edit: Jeg går ut i fra at B)-koden legges til i slutten av programmet, da har det jo ingenting med num1 å gjøre. Dersom det legges slik:

 

num1 = 50;

num2 = 15;

num2 = num2 + 10; <-- num2 = 15 + 10;

num1 = num2;

 

Blir jo da svaret 25.

Endret av Thomas`
Lenke til kommentar
Programmering er kommunisme, ergo tildeles verdier fra høyre til venstre.

 

num1 = num2; er derfor det samme som num1 = 15; (verdien til num1 overskrives når man bare sier =).

 

Variablene har for øvrig akkurat den verdien det står at de har, og ikke én mer fordi verdiene begynner på 0. 0 er 0, 1 er 1 og 70 er 70. Hvis du tenker på arrays, derimot, er det sånn at et array på 20 celler/felter går fra 0-19, det var sikkert dette du tenkte på.

 

--

 

Såeeh... Du er NITH'er?

8734301[/snapback]

Negativ hentydning til NITH ? :)

Lenke til kommentar
Siden oppgaven var "veldig" lik den aller første teorioppgaven vi(på NITH) fikk på den første programmeringseksamen på introkurset stusset han vel på om vedkommende og er student der ;)

8763068[/snapback]

 

Hehe...begynner å bli en stund siden jeg hadde det kurset, så jeg husker ikke helt :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...