# [R] Beginner problem - using mod function to print odd numbers

David Carlson dc@r|@on @end|ng |rom t@mu@edu
Sun Jun 6 21:21:34 CEST 2021

```There is really no need for a loop:

num <- 1:100
num[ifelse(num %% 2 == 1, TRUE, FALSE)]

[1]  1  3  5  7  9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49
[26] 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99

David L Carlson

On Sat, Jun 5, 2021 at 2:05 PM William Michels via R-help
<r-help using r-project.org> wrote:
>
> > i <- 1L; span <- 1:100; result <- NA;
> > for (i in span){
> + ifelse(i %% 2 != 0, result[i] <- TRUE, result[i] <- FALSE)
> + }
> > span[result]
>  [1]  1  3  5  7  9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43
> 45 47 49 51 53 55 57
> [30] 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99
> >
>
> HTH, Bill.
>
> W. Michels, Ph.D.
>
>
> On Sat, Jun 5, 2021 at 12:55 AM Stefan Evert <stefanML using collocations.de> wrote:
> >
> > >
> > > I don't understand. --
> > >
> > > 7%%2=1
> > > 9%%2=1
> > > 11%%2=1
> > >
> > > What aren't these numbers printing ?
> > >
> > > num<-0
> > > for (i in 1:100){
> > >  num<-num+i
> > > if (num%%2 != 0)
> > >  print(num)
> > > }
> >
> > Your code tests the numbers
> >
> >         1, 3, 6, 10, 15, 21, 28, 36, 45, 55, 66, …
> >
> > and correctly prints the odd ones among them.
> >
> > But I suppose that's not what you wanted to do?
> >
> > ______________________________________________
> > R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> > https://urldefense.com/v3/__https://stat.ethz.ch/mailman/listinfo/r-help__;!!KwNVnqRv!Qe700OYnXI-Qe4XYE55MkVqMX3g4Ic4YFx87U-moxnT0xKw7m-rbNqU-EZd5ixk\$