Programmering (AU i IT)

Besvar quizzer og spørgsmål i nedenstående sektioner trin for trin.

Du må ikke få hjælp fra andre.

Hvis du mener at programmeringssproget spiller en rolle for et resultatet, så antag at sproget er Java eller C#.

Resultatet af denne afprøvning er ikke selve din realkompetencevurdering, men kun tænkt som input til den samlede process med at vurdere dine kompetencer inden for dette fagområde.

Trin 1 – Grundlæggende principper

Datatyper

1.

Anbring typerne i de tilhørende kategorier.

Value type
Array

Unselect

Object

Unselect

Bool

Unselect

Integer

Unselect

Value type
Array

Unselect

Object

Unselect

Bool

Unselect

Integer

Unselect

Reference type
Array

Unselect

Object

Unselect

Bool

Unselect

Integer

Unselect

Reference type
Array

Unselect

Object

Unselect

Bool

Unselect

Integer

Unselect

2.

Placer elementerne i den kategori hvor de hører til.

User
Method

Unselect

Attribute

Unselect

Attribute

Unselect

Type

Unselect

Constructor

Unselect

email
Method

Unselect

Attribute

Unselect

Attribute

Unselect

Type

Unselect

Constructor

Unselect

name
Method

Unselect

Attribute

Unselect

Attribute

Unselect

Type

Unselect

Constructor

Unselect

User()
Method

Unselect

Attribute

Unselect

Attribute

Unselect

Type

Unselect

Constructor

Unselect

Login()
Method

Unselect

Attribute

Unselect

Attribute

Unselect

Type

Unselect

Constructor

Unselect

3.

Vælg den rigtige (mest ideelle) datatype til nedenstående.

x = 2+2;
4.

Hvilke af metoderne kan tilgå de private attributter i klassen?

5.

Hvad er sandt omkring interfaces. Vælg de to korrekte svar.

6. Hvilken datatype skal x være?

x = 5 / 2;
7.

Du har en array ved navn myArray:

[33, 22, 100, 44, 23, 5, 44]

Hvordan overskrives værdien 100 med værdien 20?

8.

Hvilke er ikke tilladte identifikatorer/variabelnavne?

9.

Hvilke af følgende er tilladte heltal konstanter?

10.

Hvilke udsagn indeholder den korrekte syntaks for definere en decimaltals variabel kaldet grade med startværdi 4.0?

11.

Hvad er betydningen af returtypen void?

12.

Hvilke af de følgende datatyper kan indeholde negative tal?

13.

Du har en array med følgende værdier:

[33, 22, 100, 44, 23, 5, 44]

Hvad er længden af dette array?

0
14.

Du har følgende kode:

  int[] manyValues = {1, 2, 3, 4};
  int[] otherValues = manyValues;
  otherValues[3] = 0;
Hvilken værdi er lagret i manyValues[3]?

15.

Du har et array med følgende værdier:

    [33, 22, 100, 44, 23, 5]

Hvilket indeks har 23?

0

16.

Afslut klassen nedenfor ved at færdiggøre koden. Login-metoden skal ikke have nogle begrænsninger.

class User {

void Login(){}

private void Auth(){}

}

17.

Afslut klassen nedenfor ved at færdiggøre koden. Metoden Auth() skal begrænses til selve klassen.

Finish the class below by completing the access modifiers. The Auth() method should be restricted to the class itself.

class User
{
  public void Login(){}

   void Auth(){}

}
18.

Du har et array der hedder myArray med følgende værdier:

    [33, 22, 100, 44, 23, 5, 44]
Hvis du gerne vil overskrive værdien 100 med en den nye værdi 20, hvilken kode skal du så skrive?

 

Løkker

1. Når man i et programmeringssprog benytter variable block scope, hvor skal vi da indsætte de manglende ord?

De manglende ord er

int myInt = 0;
myInt
int

De skal indskrives på de rette pladser i koden herunder


for ( i = 0; i < 10; i++)
{

      += i;     
}

myInt += 10;
2. Hvad er værdien af tal når løkken har kørt?
int tal=0;

for (i = 0; i < 3; i+3) { 
  tal += i;
}
3.

Hvad er værdien af variablen sum når følgende kode er eksekveret?

int sum = 0;

for (int i = 0; i < 5 ; i = i + 1)
{
  sum = sum + i;
}
4.

Hvad er værdien af sum når følgende kode er eksekveret:

int sum = 0;
int limit = 5;

for (int i = 0; i < limit ; i = i + 1)
{
  sum = sum + i;
  limit = limit - 1;
}
5.

Hvad er værdien af count, når løkken har kørt?

int count = 10;

for (int i = 0; i < 11; i++)
{
      count += i;     
}
6.

Hvad er værdien af i efter løkken har kørt?


int i=1;
while(i<4)
{
i++;
}
7.

Hvad er værdien af i, efter løkken har kørt?

int i=1;

bool/boolean running = true;
while(i<4 && running)
{    running = false;
   i++;
}
8. Hvad er værdien af i, efter løkken har kørt?

int i=1; bool running = true; while(i<4 && running)
{
   if(i == 10)   {      running = false;   }
   i++;
}
9.

Hvad er værdien af i, efter løkken har kørt?

int i=1;

bool running = true;

while(i<4 || running)
{
   if(i == 10) {    running = false; }
   i++;
}
10.

Hvad er værdien af count, efter løkken har kørt?

int count = 10;

for (int i = 0; i < 11; i++)
{
      count += 1;     
}
11. Hvor mange gange kører løkken?
for(int i = 3; i < 10; i++)
{
    //Does something
}
12. Skriv en korrekt while løkke

13. Hvilken værdi har variablen x, efter kørsel af loop?
int x = 0;

do
{
    x++;
}
while( false )

 

Trin 2 – Klasser, metoder og abstraktionsmekanismer

Klasser og metoder

1. Skriv elementerne i listen herunder på de korrekte pladser i koden forneden for at lave en funktion.

  • public
  • void
  • DoSomething
  • string x
  ()
{
   // Do something
}

2. Færdiggør koden nedenfor ved at instantiere klassen.

Person person = {  };

 

Abstraktionsmekanismer

1.

Arv

Hvis du skal implementere klasserne Employee og Manager sådan at en Manager er en Employee, hvad skal forholdet mellem disse klasser være? Vælg det rette svar.
2.

Interfaces

Hvilket (hvis noget) skal tilføjes til klasse C, for at følgende kode kan kompileres. Vælg et korrekt svar.
public interface I {
  public void m1();
  public void m2();
}
public class C implements I {
  // code for class C
}

 

Trin 3 – Algoritmer og mønstre

1. Abstrakte klasserAntag at File er en abstrakt klasse der har metoden toFile().

ImageFile og BinaryFile er konkrete klasser baseret på den abstrakte klasse File.

Antag også at metoden toFile() er implementeret i både BinaryFile og ImageFile.

En File refererer til ImageFile objekt i hukommelsen og toFile() metoden bliver kaldt. Hvilken implementation af metoden vil blive kaldt?
2. Algoritme mønstre

Herunder er heltals array med tal.

int[] numbers = {4,7,13,24,51};
Hvis vi skal beregne summen, hvilken løsning er da den korrekte?
3. Design mønstreHvilke af følgende udsagn, er et kendt design mønster, til at hjælpe med at strukturere kode?
4. Hvad sker der når følgende program kompileres og kører? Vælg netop et korrekt svar.
public class ScopeExample {

public static void main(String[] args) {
  int x = 3;
  int y = 7;
  computeSum();
} 
public static void computeSum() {
  int sum = x + y;
  System.out.println("sum = " + sum);
}

}
5. Hvad sker der når følgende kode kompileres og kører? Vælg netop et korrekt svar.
public class ForLoopExample {

public static void main(String[] args) {

for (int i = 1; i <= 5; i++) {
  int squared = i * i;
  System.out.println(i + " squared = " + squared);
}
System.out.println("Last square = " + squared);

}

}

 

Trin 4 Programkvalitet og test

1. Placer klasserne i den korrekte orden: Generalisation ↑ <svar> ↓ Specialisation
  • Pattedyr
  • Hund
  • Terrier
2. I objektorienteret programmering (OOP) er der en designregel, der skal sikre høj kvalitet i koden. Hvad er det for en regel?
3. Hvad bliver output af følgende program?
public class X
{  
   public static void main(String [] args)
   {
       try
       {
           badMethod();  
           System.out.print("A");  
       }
       catch (RuntimeException ex)
       {
           System.out.print("B");
       }
       catch (Exception ex1)
       {
           System.out.print("C");
       }
       finally
       {
           System.out.print("D");
       }
    System.out.print("E");
    } 

    public static void badMethod() 
    { 
        throw new RuntimeException(); 
    } 
}

 

Trin 5 – Kompetenceafdækning

Her spørger vi til dine kompetencer

1.

Redegør for dine kompetencer (RKV AU i Informationsteknologi - Programmering)