---
# System prepended metadata

title: Programmering 1 - Instuderingsfrågor prov 2025

---

# Programmering 1 - Instuderingsfrågor prov 2025

1. Förklara vad varje variabeltyp används för:
* string
* int
* float
* bool
* Vector2
* Transform
* Rigidbody2D

2. När vill du använda "==" och när vill du använda "="?

2. Vad är skillnaden mellan en for-loop och en while-loop?

1. Förklara när följande unity-metoder körs:
* `Start`
* `Update`
* `OnTriggerEnter`



3. Förklara vad ordet "public" gör framför en variabel i ett C#-skript.

4. Förklara vad följande kod gör:

```csharp
Rigidbody2D rb;

void Start(){
	rb = GetComponent<Rigidbody2D>();
}
```

5. Vad gör "Instantiate()" funktionen i Unity? Vilka argument kan du skicka till Insantiate-funktionen?

6. Förklara vad en lista är och ge ett exempel på vad de kan användas till i Unity/spelprogrammering.

7. Givet att du har en variabel av typen `GameObject` som heter `ball`, skriv några rader kod som sätter det objektets position till en slumpad plats. Tips: använd `Random.Range(min,max)` för att skapa en slumpgenerad siffra.

8. Förklara vad följande kod gör:

```csharp
float timer = 0f;

void Update(){
	timer += Time.deltaTime;
	if(timer > 5f){
		print("hej!");
	}

}
```

9. Förklara vad följande kod gör:

```csharp
public TextMeshProUGUI textbox;


void Update(){
	if(Input.GetKey(KeyCode.Space)){
		textbox.text = "A";
	}else{
		textbox.text = "B";
	}
}
```

10. Förklara vad följande kod gör:

```csharp
void OnCollisionEnter2D(Collision2D collision)
{
	if (collision.gameObject.name == "Player")
	{
		Destroy(gameObject);
	}
}
```


11. Förklara vad följande kod gör:
```csharp
void Update()
{
	transform.position += new Vector3(2,0,0) * Time.deltaTime;
}
```


12. Förklara vad följande kod gör:
```csharp
public GameObject cube;

void Start()
{
	for(int i = 0; i < 5; i++){
		Instantiate(cube, new Vector3(i,0,0), Quaternion.identity);
	}
}
```


13. Vad kommer följande kod skriva ut till konsolen?

```csharp
void Start()
{
	List<string> namnLista = new List<string>();

	namnLista.Add("Alice");
	namnLista.Add("Bob");
	namnLista.Add("Charlie");


	print(namnLista[2]);
}
```

14. Förklara vad följande kod gör:

```csharp
public List<GameObject> objects;
int index = 0;

void Update(){

	if(Input.GetKeyDown(KeyCode.Tab)){
		SpriteRenderer spriteRend = objects[index].GetComponent<SpriteRenderer>();
		spriteRend.color = Color.White;
		
		index += 1;
		if(index == objects.Count){
			index = 0;
		}
		
		SpriteRenderer nextSpriteRend = objects[index].GetComponent<SpriteRenderer>();
		nextSpriteRend.color = Color.Red;
	}
}
```