Skip to content

nyu-cs201-s18/rec2_solutions

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

Computer Systems Organization : Recitation 02

Some of these exercises have multiple ways to solve them.

Basic Unix usage

    mkdir unix/backup
    cp unix/foo.txt unix/backup/
    mv unix/foo.txt unix/answers.txt
    mkdir -p multiple/directories
    touch multiple/directories/test.txt
    echo "Hello!" > multiple/directories/test.txt
    less multiple/directories/test.txt
    rm -r multiple/
    wget https://raw.githubusercontent.com/torvalds/linux/master/kernel/reboot.c
    wc reboot.c

There are 584 lines and 14176 characters.


C Programming

Staircase

void staircase(int n) {
	if(n <= 0)
	    return;
	int i, j;
	for (i = 0; i < n; ++i) {
	    for (j = n; j > i+1; j--) {
	        printf(" ");
	    }
	    for (; j > 0; j--){
	        printf("#");
	    }
	    printf("\n");     
	}
}

Kangaroo

char* kangaroo(int x1, int v1, int x2, int v2) {
    if(v1 == v2){
        if(x1 != x2)
            return "NO";
        return "YES";
    }
    if((x1-x2)%(v2-v1) == 0 && (x1-x2)*(v2-v1) >= 0)
        return "YES";
    return "NO";
}

Sum of even and odd

int sum_of_even(int a_size, int* a) {
    int ret = 0;
    for(int i=0; i < a_size; ++i)
    	if (a[i] % 2 == 0 ) 
            ret += a[i];
    return ret;
}

int sum_of_odd(int a_size, int* a) {
    int ret = 0;
    for(int i=0; i < a_size; ++i)
    	if (a[i] % 2 != 0 ) 
            ret += a[i];
    return ret;
}

or, for a more efficient version,

int sum_of_even(int a_size, int* a) {
    int ret = 0;
    for(int i=0; i < a_size; ++i)
        ret += ( (a[i] & 1) ? 0 : a[i]);
    return ret;
}

int sum_of_odd(int a_size, int* a) {
    int ret = 0;
    for(int i=0; i < a_size; ++i)
        ret += ( (a[i] & 1) ? a[i] : 0);
    return ret;
}

Find max of 2

int find_max(int n1, int n2) {
    return ((n1 > n2) ? n1 : n2);
}

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published