Dr. John C.W.V.A. Marsaglia Fall Term, 2015

Professor of Computer Science

Western Oregon University


Contact Information

·        Office: ITC 309

·        Phone: 503-838-8991

·        Fax: 503-838-8332

·        E-Mail: jcm@wou.edu


·        S-Mail:

     Division of Computer Science
Western Oregon University
345 North Monmouth Avenue
Monmouth, Oregon  97361






Schedule for:

Dr. Marsaglia                     



Office Hours Link



Appointment Scheduling:

·       If you wish to make an appointment with me then you MUST email me with the time and day you select from my Office Hour chart.

·       You need to explain the REASON for your appointment request.

·       You MUST send your email more than a day before you wish to meet.

·       You MUST also get a response from me and only me guaranteeing that your appointment will be reserved.

·       I am the ONLY one who will create my appointments.


CS121 is hosted on Moodle


CS 272 Low-Level Programming (3cr)

CS 272 Syllabus


Use your last 3 digits of V#

CS 272 Grade Sheet


Individual Task #1 (not required)

Individual Task #2 (not required)




CS 272 Assignment #1

CS 272 Assignment #2

(you can also do music files for Assignment #2 if you want to).

CS 272 Assignment #3 first assembly program.

CS 272 Assignment #4 Palindrome code

CS 272 Assignment #5 Palindrome + Filter Due (email before class) Nov. 3rd

CS 272 Pairs Programming Assignment #6


CS 272 C Pointers – Extra Credit

The Pointer Assignment has now become an extra credit problem. It is a fairly complicated collection of referenced and de-referenced pointers (memory allocation techniques in C). You can progress from some intro examples up to this final example; you can always enter the code and run it to get the solution. So if you do this for extra credit then I will give you a small sample of output for you to create thru the same techniques (by hand) just to demonstrate your skill with the pointers. All this (the Pointer assign) will be due after Dead week by Dec. 7th @5pm. See the complete problem description on my web page.

Links for intro to C addressing techniques:

Lots of info-- http://cslibrary.stanford.edu/106/




Resources for CS272:

Emulator links:





On-Line Course Link:



CS 340 W Online Materials (3cr):



CS 340W Syllabus


CS 340W Grade Sheet




CS 340W Assignment #1

CS 340W Assignment #2

CS 340W Assignment #3

CS 340W Assignment #4

CS 340W Assignment #5

CS 340W Assignment #6 (read carefully)

CS 340W Assignment #7 (read carefully)

CS 340W Assignment #8


CS 340W Assignment #9 – Last Assignment

Your last paper for the entire course will be a one page opinion piece.  There will be no need for external references this paper will be entirely be based on your feelings, using your morals and ethics to define the response. Answer the following questions in a very small amount of words (more in a bit about the limits). The questions are;

“In what circumstance do you believe it is allowable to lie and avoid saying the truth when questioned? What are some examples of your personal boundaries?”

This final paper is intended to focus on being succinct. That is, to provide a complete, direct and well defined statement. This kind of writing has been defined as being “straight to the point”. To reinforce this process an upper limit of words of 450 with a lower bound of 425, are now the wording criteria. Then the other rubrics will be used for the overall grade (What you say, How you say it, and your Grammar).

This final assignment is due by December 7th @ 5 pm (Finals week). Turn this paper in the same as your past assignments, in a new email to me as a word attachment.



CS 607 Ethics & professional engineering (4cr)


 CS 607 Syllabus


CS 607 Grade Sheet





Review the “Code of Conduct” provided by the ACM. See URL below:

Code of Ethics (ACM):

ACM Code of Ethics and Professional Conduct 
Using the ACM Code of Ethics (pdf)
Software Engineering Code of Ethics and Professional Practice 


There will be a discussion between two groups:

                        Group #1 Specifies that the Code is all inclusive and should always be followed.

Group #2 Agrees to up hold the Code but suggests that there are some situations when breaking the Code is allowed.

Group #1 is

Calawa, David C.

Chen, Junhao

Osborne, Solveig

Abomouti, Mohammad A.

Group #2 is

Alinazi, Waleed H.

Alkhamis, Eman K.

Alzahrani, Salman M.

Du, Jinqiang

Xu, Junnan



Link for topics to choose for





Presentation Pairs:

Osborne, Solveig


Zhang, Wenqi

Calawa, David C.


Alkhamis, Eman K.




Alzahrani, Salman M.


Alinazi, Waleed H.

Xu, Junnan


Chen, Junhao




Abomouti, Mohammad A.



Du, Jinqiang







Additional Tools and Links:

·        WOU Final Exam Schedule 

·       Virginia Tech University Online Tutorials

·        Computer Science Department Home Page

·        Western Oregon University Home Page

·        IEEE Computer Society Home Page

·        ACM Home Page

·        ACM Technews (sponsored by Gateway)

·        java code conventions (SUN)

·        MSDN Alliance DreamSpark