1 Data Exploration: The 2016 Summer Olympics

Size: px
Start display at page:

Download "1 Data Exploration: The 2016 Summer Olympics"

Transcription

1 CS 1132 Fall 2016 Assignment 2 due 9/29 at 11:59 pm Adhere to the Code of Academic Integrity. You may discuss background issues and general strategies with others and seek help from course staff, but the implementations that you submit must be your own. In particular, you may discuss general ideas with others but you may not work out the detailed solutions with others. It is never OK for you to see or hear another student s code and it is never OK to copy code from published/internet sources. If you feel that you cannot complete the assignment on you own, seek help from the course staff. When submitting your assignment, follow the instructions summarized in Section 3 of this document. Do not use the break or continue statement in any homework or test in CS Data Exploration: The 2016 Summer Olympics We return to the data from the 2016 Summer Olympics, but this time we give you the full set of data instead of the subset of data for only the medal winning countries. The given data files have been pre-processed only minimally, so you will get to work with a set of data files that is not perfectly simplified a realistic scenario! You need to process the files import data, manipulate, and compute and then answer a set questions and produce a couple visualizations. These answers and visualizations must be achieved programmatically and not hard-coded. I.e., you need to write code to read the data and solve the problems and not pre-determine the answers by personally reading the data files and then hardcoding the answers and graphs. In other words, if we run your functions using a different set of data files that follow the same file format (e.g., data from the Games of a different year), your functions should provide correct answers based on the actual data set used. 1.1 Data files There are three data files, each containing plain text and each has the same number of rows of data; each row contains data for one country. allmedaldata.txt This file contains medal data for all countries that competed, ordered in rows from most medals won to fewest medals won. Columns 1, 2, and 3 store the medal counts for gold, silver, and bronze, respectively. (This is the data file from which the partial medal data of Assignment 1b was obtained.) countries.txt This file lists on each row the name of one country that competed, ordered from most medals won to fewest medals won, i.e., same order as the medals data. Note that a country may just be a grouping for athletes who do not or cannot claim a country. Two such countries in our data are Refugee Olympic Athletes and Independent Olympic Athletes ; we will treat them as countries. athletesbycountry.txt This file lists on each row a country name and the number of competing athletes from that country, e.g., Angola,25. The data in this file is alphabetized by the country names, i.e., the order of the rows is different from the country name data (and medals data) but the set of country names is the same. Take a look at each data file using any text editor, e.g., the Matlab editor (double-click on the filename within the Matlab desktop). If data from another year will be provided, you can expect that they will have the same format as described above: the medals data and country data are ordered from most medals won to fewest medals won, the athletes data is ordered by the alphabetized country names, and the the data files have the same number of rows indicating the number of countries that competed in that year s game. 1

2 1.2 Required, allowed, and forbidden functions You will submit three function files: exactmatches.m and partialmatches.m each contains an independent function, analyzeolympic.m includes the top function analyzeolympic and several subfunctions. The given file splitintwo.m is a completed function that you can download and use Matching strings Implement the following two functions: function idx= exactmatches(c, s) % C is a 1-d cell array of strings. Find all cells in C that match % string s exactly other than case. % idx is a vector of the indices of C where the matches occur. % E.g., if C is { Mat ; uses ; Matlab ; on ; a ; mat } % and s is Mat, then idx is [1 6]. % If there is no match then idx is []. % DO NOT use built-in functions strfind, findstr, or find. function [idx, matches]= partialmatches(c, s) % Find all occurrences of string s in a 1-d cell array C. % C is a 1-d cell array of strings. % s is a string. % idx is a vector of indices of C where s occurs, regardless of case. % matches is a 1-d cell array of the strings in C that match s. % E.g., if C is { Matt ; uses ; Matlab ; on ; a ; mat } % and s is mat, % then idx is [1 3 6] and matches is { Matt Matlab mat } % If s does not occur in C then idx is [] and matches is {}. % DO NOT use built-in functions strfind, findstr, or find. Built-in function strcmp is case-sensitive while strcmpi is case-insensitive. In this assignment we will use case-insensitive comparisons. Be sure to work on and test your functions one at a time! The example in each function comment is a test that you can use; you should create other tests as well. Make effective use of these functions in the remaining parts of the assignment Reading data files Download the file analyzeolympic.m and read carefully the given function headers and specifications and the given code. You already can run this partially implemented function with the following function call: alldata= analyzeolympic( allmedaldata.txt, countries.txt, athletesbycountry.txt ); One line of output should be displayed in the Command Window. From this point on, as you add code, keep running this function to ensure that it remains executable. Now implement the three specified subfunctions by replacing the stubs, i.e., the given dummy code in the subfunctions, with the appropriate code. Do not modify any given function headers. Below is a list of useful functions for implementing the subfunctions countriesformedaldata and combinenumericdata. Use only the built-in functions listed below for handling characters, strings and files. You may not need all of them. You can of course still use general built-in functions not related specifically to strings and files, such as length, zeros, cell, etc. You can use: fopen, fclose, feof, fgetl for file handling, str2double for converting from digits (characters) to a numeric value and strcmpi for comparing strings. 2

3 You must not use built-in functions find, strfind, findstr in this assignment. The document readfile.pdf posted along with this assignment description explains how to use the above functions to read a text file; be sure to read it. There are two other functions that you may find useful: the given function splitintwo for splitting a string into two parts at a delimiting character. Read the function specification and code to learn more. (This is a function that you should be able to write; we provided it only to save you time.) built-in function isempty can be used to determine whether an array (simple or cell array) is empty. E.g., isempty([]) returns 1 (true) while isempty( a ) returns 0 (false). Test each of your implemented subfunctions! Start with just executing analyzeolypmic as shown above. If there s no run-time error, then add some code to print several components of cnames and alldata. Do they look correct? Test some more to confirm your subfunctions correctness and then move on Writing data files You need to implement subfunction dispcountrydata so that it writes the medals and athletes data of specified countries either to the Command Window or to a data file. To do that we need to learn more about function fprintf: outopt= 1; % Output destination: 1 means the screen (Command Window) str1= apple ; str2= pie ; val=pi; fprintf(outopt, %s%10s%6.2f\n, str1, str2, val); If you execute the above code in Matlab you ll see the screen output apple pie 3.14 Did you notice the first argument to fprintf? It s an optional argument for specifying the location to which to print. We haven t used it in the past because all we needed to do was to print to the screen. Now that we want to direct the printing to either the screen or to an output file, we need to use this extra argument: the value 1 sends the printing to the screen; a file identifier obtained by using the fopen command will send the printing to that opened file. The following example code fragment writes a line, same as the example above, to a file named myfile.txt: fid= fopen( myfile.txt, w ); % fid is the file identifier str1= apple ; str2= pie ; val=pi; fprintf(fid, %s%10s%6.2f\n, str1, str2, val); fclose(fid); % Must remember to close the file! The second argument w to the fopen function above specifies that the file is being opened for writing. If the named file already existed in the current folder it would be overwritten; if a file by that name didn t already exist then one would be created. Now add code to the top function analyzeolympic in order to do some testing. For example: dispcountrydata({ Cuba, Russia }, alldata, cnames, 1) Does the above function call print two lines of data to the Command Window, one for Cuba and the other for Russia? Our output looks like this: Cuba 5 gold 2 silver 4 bronze 120 athletes 0.09 medals/athlete Russia 19 gold 18 silver 19 bronze 265 athletes 0.21 medals/athlete We may or may not be showing you the correct medal and athlete values above it s just a demonstration of the neat (nicely lined-up) printing. You should check that your printed values are correct. Next try a non-existent country name instead of Cuba : dispcountrydata({ Disneyland, Russia }, alldata, cnames, 1) Is the print output correct? (One line should say that there s no data for Disneyland and the other line should be the data for Russia.) 3

4 Next test printing to a file: fid= fopen( myfile.txt, w ); dispcountrydata({ Cuba, Russia }, alldata, cnames, fid) Is there a file myfile.txt in your current directory? Is its content correct? Now let s additionally involve function partialmatches in the testing: [idx, namesarray]= partialmatches(cnames, united ); dispcountrydata(namesarray, alldata, cnames, 1) Is the printed output in the Command Window correct? Keep your test code in analyzeolympic as a record of your tests but comment them out once you are satisfied with the testing. 1.3 Answer questions on and make visualizations from the data Add code to analyzeolympic to answer the following questions and make the requested visualizations (draw figures). Your code should print a descriptive answer to the Command Window so that it s clear what question is being answered. Include the question number in the screen output. Observe that question 1 has been answered for you in the provided code as an example. If the question statement says to display the country data then (part of) your answer should be produced by calling the dispcountrydata subfunction. Computation will be required for most of these questions you are not just writing print statements. Except for question 9 below, do not use built-in functions max, min, or sort. You may write additional subfunctions in the file; indeed you are encouraged to use subfunctions to avoid redundancy. 1. How many countries sent athletes to compete? 2. How many medals did North America (Canada, United States, and Mexico) win? Display the total North American medals and the data of the three countries. 3. How did the countries whose names include the word island or islands do? Display their country data. 4. How did the countries whose names include the substring stan do? Display their country data. 5. Which country has the most medals per athlete? (Assume there is only one such country.) Display the country data. 6. Of the countries that sent fewer than 100 athletes, which has the most medals per athlete? (Assume there is only one such country.) Display the country data. 7. Which country won the most gold medals? (Assume there is only one such country.) Display the country data. 8. Which countries, if any, won more gold medals than silver and bronze combined? Display the data of those countries. 9. If the gold, silver, and bronze medals are each worth 3, 2, and 1 points, respectively, which country (or countries) earned the most points? Display the maximum points earned and the associated country data. Youmaylookup andusebuilt-in functionmaxforthis question, but you llget moreprogramming practice if you write your own code to determine the countries that have the max point value. 10. Consider the top three countries who won the most medals; what fraction of all medals did those three countries together take? Display the fraction and the data of the three countries. 11. Write a file MedalWinners.txt that contains the medal and athlete data of all the countries that won at least one medal. Call subfunction dispcountrydata to do this task. No answer needs to be displayed in the Command Window. 12. Draw a bar graph in a figure window showing the number of medals taken by the top 6 medal winning countries. The x-axis should show the country names (unlike the use of country indices in Assignment 1b). Here s a bar graph example: 4

5 xdat= 1:4; ydat=[ ]; bar(xdat, ydat) % 4 bars with heights specified by ydat % The bars are located at x coordinates xdat. The bar graph in Matlab uses numeric axes. If you want to have text labels (country names) on the horizontal axis, then you need to add the following code: barnames= { Name1 Name2 Name3 Name4 }; % cell array containing the bar names set(gca, XTick, xdat, XTickLabel, barnames); % set and gca are built-in functions % XTick and XTickLabel are built-in property names of the graph Be sure to label the x- and y-axes and give your graph a title. Note that if neighboring bar names are long, they may overlap when viewed in the default size figure window. Do not worry about this one can always maximize the figure window when viewing the graph. 13. Look up Matlab documentation on how to draw a pie chart. Then design and draw in a second figure window a meaningful pie chart based on (some part of) the data on medals, countries, and athletes. Have fun! Be sure to label the graph appropriately. 2 Self-check list The following is a list of the minimum necessary criteria that your assignment must meet in order to be considered satisfactory. Failure to satisfy any of these conditions will result in an immediate request to resubmit your assignment. Save yourself and the graders time and effort by going over it before submitting your assignment for the first time. Note that, although all of these are necessary, meeting all of them might still not be sufficient to consider your submission satisfactory. We cannot list everything that could be possibly wrong with any particular assignment! Comment your code! If any of your functions is not properly commented, regarding function purpose and input/output arguments, you will be asked to resubmit. Suppress all unnecessary output by placing semicolons (;) appropriately. At the same time, make sure that all output that your program intentionally produces is formatted in a user-friendly way. Make sure your functions names are exactly the ones we have specified, including case. Check that the number and order of input and output arguments for each of the functions matches exactly the specifications we have given. Test each one of your functions independently, whenever possible, or write short scripts to test them. Check that your scripts do not crash (i.e., end unexpectedly with an error message) or run into infinite loops. Check this by running each script several times in a row. Before each test run, you should type the commands clear all; close all; to delete all variables in the workspace and close all figure windows. 3 Submission instructions 1. Upload files exactmatches.m, partialmatches.m, and analyzeolympic.m to CMS in the submission area corresponding to Assignment 2 before the deadline. 2. When the scores are released, read the grader s feedback carefully. 3. If you need to resubmit, fix all the problems and go back to Step 1! Otherwise you are done with this assignment. Well done! 5

CS1132 Spring 2016 Assignment 2 Due Apr 20th

CS1132 Spring 2016 Assignment 2 Due Apr 20th CS1132 Spring 2016 Assignment 2 Due Apr 20th Adhere to the Code of Academic Integrity. You may discuss background issues and general strategies with others and seek help from course staff, but the implementations

More information

CS1132 Fall 2009 Assignment 1. 1 The Monty Hall Dillemma. 1.1 Programming the game

CS1132 Fall 2009 Assignment 1. 1 The Monty Hall Dillemma. 1.1 Programming the game CS1132 Fall 2009 Assignment 1 Adhere to the Code of Academic Integrity. You may discuss background issues and general solution strategies with others and seek help from course staff, but the homework you

More information

MATLAB User-defined functions, Data Input/Output. Edited by Péter Vass

MATLAB User-defined functions, Data Input/Output. Edited by Péter Vass MATLAB User-defined functions, Data Input/Output Edited by Péter Vass User-defined functions Although, MATLAB provides a wide range of built-in functions it may often be necessary to create and use an

More information

CMSC 201 Spring 2018 Project 3 Minesweeper

CMSC 201 Spring 2018 Project 3 Minesweeper CMSC 201 Spring 2018 Project 3 Minesweeper Assignment: Project 3 Minesweeper Due Date: Design Document: Friday, May 4th, 2018 by 8:59:59 PM Project: Friday, May 11th, 2018 by 8:59:59 PM Value: 80 points

More information

% Close all figure windows % Start figure window

% Close all figure windows % Start figure window CS1112 Fall 2016 Project 3 Part A Due Monday 10/3 at 11pm You must work either on your own or with one partner. If you work with a partner, you must first register as a group in CMS and then submit your

More information

MATLAB INTRODUCTION. Matlab can be used interactively as a super hand calculator, or, more powerfully, run using scripts (i.e., programs).

MATLAB INTRODUCTION. Matlab can be used interactively as a super hand calculator, or, more powerfully, run using scripts (i.e., programs). L A B 6 M A T L A B MATLAB INTRODUCTION Matlab is a commercial product that is used widely by students and faculty and researchers at UTEP. It provides a "high-level" programming environment for computing

More information

Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia

Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia Matlab for FMRI Module 1: the basics Instructor: Luis Hernandez-Garcia The goal for this tutorial is to make sure that you understand a few key concepts related to programming, and that you know the basics

More information

Using files. Computer Programming for Engineers (2014 Spring)

Using files. Computer Programming for Engineers (2014 Spring) Computer Programming for Engineers (2014 Spring) Using files Hyoungshick Kim Department of Computer Science and Engineering College of Information and Communication Engineering Sungkyunkwan University

More information

Lastly, in case you don t already know this, and don t have Excel on your computers, you can get it for free through IT s website under software.

Lastly, in case you don t already know this, and don t have Excel on your computers, you can get it for free through IT s website under software. Welcome to Basic Excel, presented by STEM Gateway as part of the Essential Academic Skills Enhancement, or EASE, workshop series. Before we begin, I want to make sure we are clear that this is by no means

More information

1.a) Go to it should be accessible in all browsers

1.a) Go to  it should be accessible in all browsers ECO 445: International Trade Professor Jack Rossbach Instructions on doing the Least Traded Product Exercise with Excel Step 1 Download Data from Comtrade [This step is done for you] 1.a) Go to http://comtrade.un.org/db/dqquickquery.aspx

More information

How to... make the most of your smartphone during the Summer of Sport

How to... make the most of your smartphone during the Summer of Sport How to... make the most of your smartphone during the Summer of Sport In partnership with The BBC s Olympic websites have all the latest news, events schedules, results, and the background to the Olympic

More information

CIT 590 Homework 5 HTML Resumes

CIT 590 Homework 5 HTML Resumes CIT 590 Homework 5 HTML Resumes Purposes of this assignment Reading from and writing to files Scraping information from a text file Basic HTML usage General problem specification A website is made up of

More information

Tips from the experts: How to waste a lot of time on this assignment

Tips from the experts: How to waste a lot of time on this assignment Com S 227 Spring 2018 Assignment 1 100 points Due Date: Friday, September 14, 11:59 pm (midnight) Late deadline (25% penalty): Monday, September 17, 11:59 pm General information This assignment is to be

More information

How To Test Your Code A CS 1371 Homework Guide

How To Test Your Code A CS 1371 Homework Guide Introduction After you have completed each drill problem, you should make it a habit to test your code. There are good ways of testing your code and there are bad ways of testing your code. This guide

More information

C mini reference. 5 Binary numbers 12

C mini reference. 5 Binary numbers 12 C mini reference Contents 1 Input/Output: stdio.h 2 1.1 int printf ( const char * format,... );......................... 2 1.2 int scanf ( const char * format,... );.......................... 2 1.3 char

More information

2. All answers should go on blank paper that will be provided. Very carefully number and draw lines separating each solution!

2. All answers should go on blank paper that will be provided. Very carefully number and draw lines separating each solution! Final Exam Held on 4/5th May, 2009 Computer Programming for Engineering and Science (CSCE 150E, Spring 2009) 4/5 May, 2009 Name : Course No : CSCE150E Instructions: 1. There are two parts to this exam.

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 2 nd Term 2014 Program 5: FCITbook Assigned: Thursday, May 1 st, 2014 Due: Thursday, May 15

More information

MATLAB Demo. Preliminaries and Getting Started with Matlab

MATLAB Demo. Preliminaries and Getting Started with Matlab Math 250C Sakai submission Matlab Demo 1 Created by G. M. Wilson, revised 12/23/2015 Revised 09/05/2016 Revised 01/07/2017 MATLAB Demo In this lab, we will learn how to use the basic features of Matlab

More information

CS1100: Excel Lab 1. Problem 1 (25 Points) Filtering and Summarizing Data

CS1100: Excel Lab 1. Problem 1 (25 Points) Filtering and Summarizing Data CS1100: Excel Lab 1 Filtering and Summarizing Data To complete this assignment you must submit an electronic copy to Blackboard by the due date. Use the data in the starter file. In this lab you are asked

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS202, 1 st Term 2016 (Fall 2015) Program 5: FCIT Grade Management System Assigned: Thursday, December

More information

Instructions on Adding Zeros to the Comtrade Data

Instructions on Adding Zeros to the Comtrade Data Instructions on Adding Zeros to the Comtrade Data Required: An excel spreadshheet with the commodity codes for all products you want included. In this exercise we will want all 4-digit SITC Revision 2

More information

Spring 2010 Instructor: Michele Merler.

Spring 2010 Instructor: Michele Merler. Spring 2010 Instructor: Michele Merler http://www1.cs.columbia.edu/~mmerler/comsw3101-2.html Type from command line: matlab -nodisplay r command Tells MATLAB not to initialize the visual interface NOTE:

More information

LAB 2: Linear Equations and Matrix Algebra. Preliminaries

LAB 2: Linear Equations and Matrix Algebra. Preliminaries Math 250C, Section C2 Hard copy submission Matlab # 2 1 Revised 07/13/2016 LAB 2: Linear Equations and Matrix Algebra In this lab you will use Matlab to study the following topics: Solving a system of

More information

Statement of integrity: I did not, and will not, violate the rules of academic integrity on this exam.

Statement of integrity: I did not, and will not, violate the rules of academic integrity on this exam. CS100M Fall 2007 Prelim 2 CIS121 Final Exam Oct 16 7:30 9:00pm Name: (Legibly print last name, first name, middle name) NetID: Statement of integrity: I did not, and will not, violate the rules of academic

More information

How to use Pivot table macro

How to use Pivot table macro How to use Pivot table macro Managing Pivot Tables Table Filter and Charts for Confluence add-on allows you to summarize your table data and produce its aggregated view in the form of a pivot table. You

More information

Tips from the experts: How to waste a lot of time on this assignment

Tips from the experts: How to waste a lot of time on this assignment Com S 227 Spring 2018 Assignment 1 80 points Due Date: Friday, February 2, 11:59 pm (midnight) Late deadline (25% penalty): Monday, February 5, 11:59 pm General information This assignment is to be done

More information

Lab 4 CSE 7, Spring 2018 This lab is an introduction to using logical and comparison operators in Matlab.

Lab 4 CSE 7, Spring 2018 This lab is an introduction to using logical and comparison operators in Matlab. LEARNING OBJECTIVES: Lab 4 CSE 7, Spring 2018 This lab is an introduction to using logical and comparison operators in Matlab 1 Use comparison operators (< > = == ~=) between two scalar values to create

More information

Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9

Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9 Survey of Math: Excel Spreadsheet Guide (for Excel 2016) Page 1 of 9 Contents 1 Introduction to Using Excel Spreadsheets 2 1.1 A Serious Note About Data Security.................................... 2 1.2

More information

Matlab Programming Arrays and Scripts 1 2

Matlab Programming Arrays and Scripts 1 2 Matlab Programming Arrays and Scripts 1 2 Mili I. Shah September 10, 2009 1 Matlab, An Introduction with Applications, 2 nd ed. by Amos Gilat 2 Matlab Guide, 2 nd ed. by D. J. Higham and N. J. Higham Matrix

More information

Importing and Exporting Data

Importing and Exporting Data Class14 Importing and Exporting Data MATLAB is often used for analyzing data that was recorded in experiments or generated by other computer programs. Likewise, data that is produced by MATLAB sometimes

More information

CMPSCI 187 / Spring 2015 Sorting Kata

CMPSCI 187 / Spring 2015 Sorting Kata Due on Thursday, April 30, 8:30 a.m Marc Liberatore and John Ridgway Morrill I N375 Section 01 @ 10:00 Section 02 @ 08:30 1 Contents Overview 3 Learning Goals.................................................

More information

Code Standards As before, please include the following header at the top of all your submission files, with the various fields filled in.

Code Standards As before, please include the following header at the top of all your submission files, with the various fields filled in. Instructions The purpose of this assignment is to help you gain experience in writing scripts that make use of vectors and strings. Remember: You are allowed to discuss the homework with other people in

More information

CS 051 Homework Laboratory #2

CS 051 Homework Laboratory #2 CS 051 Homework Laboratory #2 Dirty Laundry Objective: To gain experience using conditionals. The Scenario. One thing many students have to figure out for the first time when they come to college is how

More information

Programming in Mathematics. Mili I. Shah

Programming in Mathematics. Mili I. Shah Programming in Mathematics Mili I. Shah Starting Matlab Go to http://www.loyola.edu/moresoftware/ and login with your Loyola name and password... Matlab has eight main windows: Command Window Figure Window

More information

CS 1510: Intro to Computing - Fall 2017 Assignment 8: Tracking the Greats of the NBA

CS 1510: Intro to Computing - Fall 2017 Assignment 8: Tracking the Greats of the NBA CS 1510: Intro to Computing - Fall 2017 Assignment 8: Tracking the Greats of the NBA Code Due: Tuesday, November 7, 2017, by 11:59 p.m. The Assignment The purpose of this assignment is to give you more

More information

To practice overall problem-solving skills, as well as general design of a program

To practice overall problem-solving skills, as well as general design of a program Programming Assignment 5 Due March 27, 2015 at 11:59 PM Objectives To gain experience with file input/output techniques To gain experience with formatting output To practice overall problem-solving skills,

More information

a. Download for personal use

a. Download for personal use Importing Gradebook Data 1. Go to the grade book (EEE website) 2. Click on the Summary tab, and under Column Options check only the following boxes: a. Student name on official record b. HWs, Midterms

More information

MATLAB - Lecture # 4

MATLAB - Lecture # 4 MATLAB - Lecture # 4 Script Files / Chapter 4 Topics Covered: 1. Script files. SCRIPT FILE 77-78! A script file is a sequence of MATLAB commands, called a program.! When a file runs, MATLAB executes the

More information

Blackboard for Faculty: Grade Center (631) In this document:

Blackboard for Faculty: Grade Center (631) In this document: 1 Blackboard for Faculty: Grade Center (631) 632-2777 Teaching, Learning + Technology Stony Brook University In this document: blackboard@stonybrook.edu http://it.stonybrook.edu 1. What is the Grade Center?..

More information

Computer Science Foundation Exam

Computer Science Foundation Exam Computer Science Foundation Exam August 6, 017 Section I A DATA STRUCTURES SOLUTIONS NO books, notes, or calculators may be used, and you must work entirely on your own. Question # Max Pts Category Passing

More information

CS : Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September

CS : Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September CS 1313 010: Programming for Non-majors, Fall 2018 Programming Project #2: Census Due by 10:20am Wednesday September 19 2018 This second assignment will introduce you to designing, developing, testing

More information

Chapter 11 Input/Output (I/O) Functions

Chapter 11 Input/Output (I/O) Functions EGR115 Introduction to Computing for Engineers Input/Output (I/O) Functions from: S.J. Chapman, MATLAB Programming for Engineers, 5 th Ed. 2016 Cengage Learning Topics Introduction: MATLAB I/O 11.1 The

More information

CS1100: Excel Lab 1. Problem 1 (25 Points) Filtering and Summarizing Data

CS1100: Excel Lab 1. Problem 1 (25 Points) Filtering and Summarizing Data CS1100: Excel Lab 1 Filtering and Summarizing Data To complete this assignment you must submit an electronic copy to BlackBoard by the due date. Use the data in the starter file. In this lab you are asked

More information

CMSC 201 Spring 2018 Project 2 Battleship

CMSC 201 Spring 2018 Project 2 Battleship CMSC 201 Spring 2018 Project 2 Battleship Assignment: Project 2 Battleship Due Date: Design Document: Friday, April 13th, 2018 by 8:59:59 PM Project: Friday, April 20th, 2018 by 8:59:59 PM Value: 80 points

More information

Homework #2: Introduction to Images Due 4 th Week of Spring 2018 at the start of lab CSE 7, Spring 2018

Homework #2: Introduction to Images Due 4 th Week of Spring 2018 at the start of lab CSE 7, Spring 2018 Homework #2: Introduction to Images Due 4 th Week of Spring 2018 at the start of lab CSE 7, Spring 2018 Before beginning this homework, create a new Notepad++ file in your cs7sxx home directory on ieng6

More information

Lab 1: Setup 12:00 PM, Sep 10, 2017

Lab 1: Setup 12:00 PM, Sep 10, 2017 CS17 Integrated Introduction to Computer Science Hughes Lab 1: Setup 12:00 PM, Sep 10, 2017 Contents 1 Your friendly lab TAs 1 2 Pair programming 1 3 Welcome to lab 2 4 The file system 2 5 Intro to terminal

More information

An Introduction to MATLAB

An Introduction to MATLAB An Introduction to MATLAB Day 1 Simon Mitchell Simon.Mitchell@ucla.edu High level language Programing language and development environment Built-in development tools Numerical manipulation Plotting of

More information

ACT WorkKeys NCRC RegiSTAR System User Guide

ACT WorkKeys NCRC RegiSTAR System User Guide 2017-2018 ACT WorkKeys NCRC TM RegiSTAR System User Guide www.act.org How to Contact ACT For questions regarding ACT WorkKeys online testing and the RegiSTAR TM system: Address ACT WorkKeys Operations

More information

Com S 227 Spring 2018 Assignment points Due Date: Thursday, September 27, 11:59 pm (midnight) "Late" deadline: Friday, September 28, 11:59 pm

Com S 227 Spring 2018 Assignment points Due Date: Thursday, September 27, 11:59 pm (midnight) Late deadline: Friday, September 28, 11:59 pm Com S 227 Spring 2018 Assignment 2 200 points Due Date: Thursday, September 27, 11:59 pm (midnight) "Late" deadline: Friday, September 28, 11:59 pm (Remember that Exam 1 is MONDAY, October 1.) General

More information

1 Introduction to Using Excel Spreadsheets

1 Introduction to Using Excel Spreadsheets Survey of Math: Excel Spreadsheet Guide (for Excel 2007) Page 1 of 6 1 Introduction to Using Excel Spreadsheets This section of the guide is based on the file (a faux grade sheet created for messing with)

More information

Low-Level File I/O. 1. Open a file. 2. Read or write data into the file. 3. Close the file. Zheng-Liang Lu 1 / 14

Low-Level File I/O. 1. Open a file. 2. Read or write data into the file. 3. Close the file. Zheng-Liang Lu 1 / 14 Low-Level File I/O Low-level file I/O functions allow the most control over reading or writing data to a file. However, these functions require that you specify more detailed information about your file

More information

CS52 - Assignment 8. Due Friday 4/15 at 5:00pm.

CS52 - Assignment 8. Due Friday 4/15 at 5:00pm. CS52 - Assignment 8 Due Friday 4/15 at 5:00pm https://xkcd.com/859/ This assignment is about scanning, parsing, and evaluating. It is a sneak peak into how programming languages are designed, compiled,

More information

If you click the links in this document or on the class website and get a logon screen:

If you click the links in this document or on the class website and get a logon screen: Introduction The enclosed information is required reading by the end of the first day of class. Hopefully it will answer your questions and get you on the right track for successfully completing the course.

More information

Homework 1 Excel Basics

Homework 1 Excel Basics Homework 1 Excel Basics Excel is a software program that is used to organize information, perform calculations, and create visual displays of the information. When you start up Excel, you will see the

More information

CS4120/4121/5120/5121 Spring /6 Programming Assignment 4

CS4120/4121/5120/5121 Spring /6 Programming Assignment 4 CS4120/4121/5120/5121 Spring 2016 Programming Assignment 4 Intermediate Code Generation Due: Friday March 18, 11:59pm This programming assignment requires you to implement an IR generator for the Xi programming

More information

CS : Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June

CS : Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June CS 1313 010: Programming for Non-majors, Summer 2007 Programming Project #2: Census Due by 12:00pm (noon) Wednesday June 20 2007 This second assignment will introduce you to designing, developing, testing

More information

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department

King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department King Abdulaziz University Faculty of Computing and Information Technology Computer Science Department CPCS204, 3 rd Term 2014 (Summer) Program 2: FCIT Mobily (Linked Lists) Assigned: Wednesday, June 18

More information

Black Problem 2: Huffman Compression [75 points] Next, the Millisoft back story! Starter files

Black Problem 2: Huffman Compression [75 points] Next, the Millisoft back story! Starter files Black Problem 2: Huffman Compression [75 points] Copied from: https://www.cs.hmc.edu/twiki/bin/view/cs5/huff manblack on 3/15/2017 Due: 11:59 PM on November 14, 2016 Starter files First, here is a set

More information

CMSC 201 Fall 2016 Homework 6 Functions

CMSC 201 Fall 2016 Homework 6 Functions CMSC 201 Fall 2016 Homework 6 Functions Assignment: Homework 6 Functions Due Date: Wednesday, October 26th, 2016 by 8:59:59 PM Value: 40 points Collaboration: For Homework 6, collaboration is not allowed

More information

Chapter 9. Above: An early computer input/output device on the IBM 7030 (STRETCH)

Chapter 9. Above: An early computer input/output device on the IBM 7030 (STRETCH) Chapter 9 Above: An early computer input/output device on the IBM 7030 (STRETCH) http://computer-history.info/page4.dir/pages/ibm.7030.stretch.dir/ Io One of the moon s of Jupiter (A Galilean satellite)

More information

Using the fprintf command to save output to a file.

Using the fprintf command to save output to a file. Using the fprintf command to save output to a file. In addition to displaying output in the Command Window, the fprintf command can be used for writing the output to a file when it is necessary to save

More information

Introduction to MATLAB

Introduction to MATLAB Introduction to MATLAB This note will introduce you to MATLAB for the purposes of this course. Most of the emphasis is on how to set up MATLAB on your computer. The purposes of this supplement are two.

More information

NENS 230 Assignment 4: Data Visualization

NENS 230 Assignment 4: Data Visualization NENS 230 Assignment 4: Data Visualization Due date: Tuesday, October 20, 2015 Goals Get comfortable manipulating figures Familiarize yourself with common 2D and 3D plots Understand how color and colormaps

More information

Com S 227 Assignment Submission HOWTO

Com S 227 Assignment Submission HOWTO Com S 227 Assignment Submission HOWTO This document provides detailed instructions on: 1. How to submit an assignment via Canvas and check it 3. How to examine the contents of a zip file 3. How to create

More information

Decision Logic: if, if else, switch, Boolean conditions and variables

Decision Logic: if, if else, switch, Boolean conditions and variables CS 1044 roject 4 Summer I 2007 Decision Logic: if, if else, switch, Boolean conditions and variables This programming assignment uses many of the ideas presented in sections 3 through 5 of the course notes,

More information

TI Connect CE Software

TI Connect CE Software TI Connect CE Software This guidebook applies to version 5.2. To obtain the latest version of the documentation, go to education.ti.com/guides. Legal Information Important Information Texas Instruments

More information

CSCE155N Matlab Examination 3 Solution. March 29, 2013

CSCE155N Matlab Examination 3 Solution. March 29, 2013 CSCE155N Matlab Examination 3 Solution March 29, 2013 Name: NUID: This examination consists of 4 questions and you have 50 minutes to complete the test. Show all steps (including any computations/explanations)

More information

MATLAB Introduction to MATLAB Programming

MATLAB Introduction to MATLAB Programming MATLAB Introduction to MATLAB Programming MATLAB Scripts So far we have typed all the commands in the Command Window which were executed when we hit Enter. Although every MATLAB command can be executed

More information

Depending on the computer you find yourself in front of, here s what you ll need to do to open SPSS.

Depending on the computer you find yourself in front of, here s what you ll need to do to open SPSS. 1 SPSS 11.5 for Windows Introductory Assignment Material covered: Opening an existing SPSS data file, creating new data files, generating frequency distributions and descriptive statistics, obtaining printouts

More information

Project 1 Balanced binary

Project 1 Balanced binary CMSC262 DS/Alg Applied Blaheta Project 1 Balanced binary Due: 7 September 2017 You saw basic binary search trees in 162, and may remember that their weakness is that in the worst case they behave like

More information

Spring CS Homework 3 p. 1. CS Homework 3

Spring CS Homework 3 p. 1. CS Homework 3 Spring 2018 - CS 111 - Homework 3 p. 1 Deadline 11:59 pm on Friday, February 9, 2018 Purpose CS 111 - Homework 3 To try out another testing function, check-within, to get more practice using the design

More information

Style and Submission Guide

Style and Submission Guide Style and Submission Guide 1 Assignment Style Guidelines The code you submit for assignments, as with all code you write, can be made more readable and useful by paying attention to style. This includes

More information

Part III Appendices 165

Part III Appendices 165 Part III Appendices 165 Appendix A Technical Instructions Learning Outcomes This material will help you learn how to use the software you need to do your work in this course. You won t be tested on it.

More information

ScholarOne Manuscripts. COGNOS Reports User Guide

ScholarOne Manuscripts. COGNOS Reports User Guide ScholarOne Manuscripts COGNOS Reports User Guide 1-May-2018 Clarivate Analytics ScholarOne Manuscripts COGNOS Reports User Guide Page i TABLE OF CONTENTS USE GET HELP NOW & FAQS... 1 SYSTEM REQUIREMENTS...

More information

Fö 6: Filhantering. DN1212 Numeriska metoder och grundläggande programmering. Pawel Herman. KTH/CB

Fö 6: Filhantering. DN1212 Numeriska metoder och grundläggande programmering. Pawel Herman. KTH/CB Fö 6: Filhantering DN1212 Numeriska metoder och grundläggande programmering paherman@kth.se KTH/CB 22 februari Pawel 2013Herman Lecture outline Recapitulation of what we already know about I/O Matlab format

More information

CS2110 Assignment 3 Inheritance and Trees, Summer 2008

CS2110 Assignment 3 Inheritance and Trees, Summer 2008 CS2110 Assignment 3 Inheritance and Trees, Summer 2008 Due Sunday July 13, 2008, 6:00PM 0 Introduction 0.1 Goals This assignment will help you get comfortable with basic tree operations and algorithms.

More information

CMPSCI 187 / Spring 2015 Hangman

CMPSCI 187 / Spring 2015 Hangman CMPSCI 187 / Spring 2015 Hangman Due on February 12, 2015, 8:30 a.m. Marc Liberatore and John Ridgway Morrill I N375 Section 01 @ 10:00 Section 02 @ 08:30 1 CMPSCI 187 / Spring 2015 Hangman Contents Overview

More information

Due Friday, March 20 at 11:59 p.m. Write and submit one Java program, Sequence.java, as described on the next page.

Due Friday, March 20 at 11:59 p.m. Write and submit one Java program, Sequence.java, as described on the next page. CS170 Section 5 HW #3 Due Friday, March 20 at 11:59 p.m. Write and submit one Java program, Sequence.java, as described on the next page. The assignment should be submitted on the Math/CS system (from

More information

COMP 105 Homework: Type Systems

COMP 105 Homework: Type Systems Due Tuesday, March 29, at 11:59 PM (updated) The purpose of this assignment is to help you learn about type systems. Setup Make a clone of the book code: git clone linux.cs.tufts.edu:/comp/105/build-prove-compare

More information

The American University in Cairo. Academic Computing Services. Excel prepared by. Maha Amer

The American University in Cairo. Academic Computing Services. Excel prepared by. Maha Amer The American University in Cairo Excel 2000 prepared by Maha Amer Spring 2001 Table of Contents: Opening the Excel Program Creating, Opening and Saving Excel Worksheets Sheet Structure Formatting Text

More information

Our second exam is Thursday, November 10. Note that it will not be possible to get all the homework submissions graded before the exam.

Our second exam is Thursday, November 10. Note that it will not be possible to get all the homework submissions graded before the exam. Com S 227 Fall 2016 Assignment 3 300 points Due Date: Wednesday, November 2, 11:59 pm (midnight) Late deadline (25% penalty): Thursday, November 2, 11:59 pm General information This assignment is to be

More information

Lab Exercise 6: Abstract Classes and Interfaces CS 2334

Lab Exercise 6: Abstract Classes and Interfaces CS 2334 Lab Exercise 6: Abstract Classes and Interfaces CS 2334 September 29, 2016 Introduction In this lab, you will experiment with using inheritance in Java through the use of abstract classes and interfaces.

More information

CHAPTER 4: MICROSOFT OFFICE: EXCEL 2010

CHAPTER 4: MICROSOFT OFFICE: EXCEL 2010 CHAPTER 4: MICROSOFT OFFICE: EXCEL 2010 Quick Summary A workbook an Excel document that stores data contains one or more pages called a worksheet. A worksheet or spreadsheet is stored in a workbook, and

More information

TRAINING GUIDE. Advanced Crystal 1

TRAINING GUIDE. Advanced Crystal 1 TRAINING GUIDE Advanced Crystal 1 Using Crystal Reports with Lucity Advanced Examples 1 The fifth of a seven-part series, this workbook is designed for Crystal Reports users with some experience, who wish

More information

Assignment 5 Audio & Files in MATLAB Due Friday, November 16, 11:59 pm

Assignment 5 Audio & Files in MATLAB Due Friday, November 16, 11:59 pm Assignment 5 Audio & Files in MATLAB Due Friday, November 16, 11:59 pm Remember to comment your.m files using % or Matlab Text Comment. help and doc is your friend. Submit the indicated files via email

More information

Microsoft Project 2007 Level 2. MICROSOFT PROJECT 2007 Level 2

Microsoft Project 2007 Level 2. MICROSOFT PROJECT 2007 Level 2 Contents MICROSOFT PROJECT 2007 Level 2 Contents CONTENTS LESSON 1 - ORGANISING PROJECT DATA... 4 Using the AutoFilter Feature... 5 Filtering Data... 5 Sorting a View... 6 Creating a Custom Sort... 6 Grouping

More information

Introduction to CS databases and statistics in Excel Jacek Wiślicki, Laurent Babout,

Introduction to CS databases and statistics in Excel Jacek Wiślicki, Laurent Babout, One of the applications of MS Excel is data processing and statistical analysis. The following exercises will demonstrate some of these functions. The base files for the exercises is included in http://lbabout.iis.p.lodz.pl/teaching_and_student_projects_files/files/us/lab_04b.zip.

More information

Project 2 Reliable Transport

Project 2 Reliable Transport Project 2 Reliable Transport UC Berkeley CS 168, Fall 2014 Version 1.0 Due: 11:59am (noon), November 2nd, 2014 In this project, you will build a simple reliable transport protocol, BEARS TP (BTP). Your

More information

Assignment 1: Entity-Relationship Model Solution

Assignment 1: Entity-Relationship Model Solution Data odelling and Databases Exercise dates: arch /arch 2, 208 Ce Zhang, Gustavo Alonso Last update: arch 08, 208 Spring Semester 208 Head TA: Ingo üller Assignment : Entity-Relationship odel Solution This

More information

Printing Batch Unofficial Transcripts

Printing Batch Unofficial Transcripts Printing Batch Unofficial Transcripts On occasion, you may need to print unofficial transcripts for several students at one time. The Batch Transcripts process allows you to upload a text file containing

More information

SECTION 2: PROGRAMMING WITH MATLAB. MAE 4020/5020 Numerical Methods with MATLAB

SECTION 2: PROGRAMMING WITH MATLAB. MAE 4020/5020 Numerical Methods with MATLAB SECTION 2: PROGRAMMING WITH MATLAB MAE 4020/5020 Numerical Methods with MATLAB 2 Functions and M Files M Files 3 Script file so called due to.m filename extension Contains a series of MATLAB commands The

More information

Sorting Fields Changing the Values Line Charts Scatter Graphs Charts Showing Frequency Pie Charts Bar Charts...

Sorting Fields Changing the Values Line Charts Scatter Graphs Charts Showing Frequency Pie Charts Bar Charts... Database Guide Contents Introduction... 1 What is RM Easiteach Database?... 1 The Database Toolbar... 2 Reviewing the License Agreement... 3 Using Database... 3 Starting Database... 3 Key Features... 4

More information

Microsoft Excel 2010 Training. Excel 2010 Basics

Microsoft Excel 2010 Training. Excel 2010 Basics Microsoft Excel 2010 Training Excel 2010 Basics Overview Excel is a spreadsheet, a grid made from columns and rows. It is a software program that can make number manipulation easy and somewhat painless.

More information

There is also a more in-depth GUI called the Curve Fitting Toolbox. To run this toolbox, type the command

There is also a more in-depth GUI called the Curve Fitting Toolbox. To run this toolbox, type the command Matlab bootcamp Class 4 Written by Kyla Drushka More on curve fitting: GUIs Thanks to Anna (I think!) for showing me this. A very simple way to fit a function to your data is to use the Basic Fitting GUI.

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

EOSC 352 MATLAB Review

EOSC 352 MATLAB Review EOSC 352 MATLAB Review To use MATLAB, you can either (1) type commands in the window (i.e., at the command line ) or (2) type in the name of a file you have made, whose name ends in.m and which contains

More information

Practical 2: Ray Tracing

Practical 2: Ray Tracing 2017/2018, 4th quarter INFOGR: Graphics Practical 2: Ray Tracing Author: Jacco Bikker The assignment: The purpose of this assignment is to create a small Whitted-style ray tracer. The renderer should be

More information

Homework #1 From C to Binary

Homework #1 From C to Binary Homework #1 From C to Binary Last updated: 2016-05-22 (updates in blue with footnotes) Due date: see course website Directions: For short-answer questions, submit your answers in PDF format as a file called

More information

Intermediate Microsoft Excel 2010

Intermediate Microsoft Excel 2010 P a g e 1 Intermediate Microsoft Excel 2010 ABOUT THIS CLASS This class is designed to continue where the Microsoft Excel 2010 Basics class left off. Specifically, we will cover additional ways to organize

More information

Blackboard 8 Grade Center

Blackboard 8 Grade Center Blackboard 8 Grade Center Donna M. Dickinson E-Learning Center Borough of Manhattan Community College Grade Center Revised user interface (Web 2.0 style) New toolbar Inline editing More flexibility in

More information