Tegel24 34
Postad: 18 feb 2023 17:55 Redigerad: 18 feb 2023 17:57

R: Hur sparar jag till en vektor i en if-else sats?

Skriv en for-loop som skriver ut alla heltal som är jämt delbara med 3 som finns mellan 1 och 200. Förutom att skriva ut dessa tal ska de även sparas i en vektor. Men bara de tal som är udda ska vara med. Använd en villkorssats för att göra den förändringen. Om ett av talen är jämt, så skriv ut texten "Intresserar mig inte".

 

Något sånt här borde väl den se ut till en början?

for(i in 1:200) {
if(i %% 3 == 0) {
print(i)
}
}

Hondel 1390
Postad: 18 feb 2023 21:59

Du har svarat på först delen, att skriva ut ut alla tal som är delbara med 3. Nu kan du fortsätta med nästa steg, att spara talet i en vektor. Om du definierar en vektor numbers = c() innan din for loop kan du, efter att du printat talet skriva numbers = c(numbers, i). Detta utökar vektorn numbers med talet i.

Hur tror du att du kan införa villkoret att bara udda tal ska sparas, och jämna tal ska printa ”intresserar mig inte”?

Tegel24 34
Postad: 19 feb 2023 15:17 Redigerad: 19 feb 2023 15:18

Det är där jag fastnar.

 

För udda

if(i %% 2 == 1)
print(i)

 

För jämna

if(i %% 2 == 0)
print("Intresserar mig inte")

 

Förstår hur jag ska skriva ut dessa men inte hur den ska sparas till vektorn

Hondel 1390
Postad: 19 feb 2023 20:28

Du kan i din första if-sats lägga till en rad där du sparar till vektor som jag försökte beskriva innan. Alltså 

if(i %% 2 == 1){
   print(i)

   numbers = c(numbers, i)

}

Svara
Close