CS11002 Programming and Data Structures Spring 2008...

127
Introduction Title page CS11002 Programming and Data Structures Spring 2008 Introduction Goutam Biswas Abhijit Das Dipankar Sarkar Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Jan 04, 2008

Transcript of CS11002 Programming and Data Structures Spring 2008...

Page 1: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Title page

CS11002 Programming and Data StructuresSpring 2008

Introduction

Goutam BiswasAbhijit Das

Dipankar Sarkar

Department of Computer Science & EngineeringIndian Institute of Technology, Kharagpur

Jan 04, 2008

Page 2: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus

Page 3: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus

Introduction to digital computers

Page 4: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus

Introduction to digital computersBasic programming constructs

Variables and simple data typesAssignmentsInput/outputConditions and branchingLoops and iterationIterative searching and sorting algorithms

Page 5: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus

Introduction to digital computersBasic programming constructs

Variables and simple data typesAssignmentsInput/outputConditions and branchingLoops and iterationIterative searching and sorting algorithms

Advanced programming constructsFunctions and recursionRecursive sorting algorithmsArrays and stringsStructuresPointers and dynamic memory allocation

Page 6: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus (contd.)

Page 7: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus (contd.)

Performance analysis of programs

Page 8: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus (contd.)

Performance analysis of programsData structures

Abstract data typesOrdered listsStacks and queues

Page 9: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Syllabus

Syllabus (contd.)

Performance analysis of programsData structures

Abstract data typesOrdered listsStacks and queues

Programming language: C

Page 10: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On C

Textbooks and references

Page 11: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On C

Textbooks and references

Use any standard textbook on ANSI C

Page 12: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On C

Textbooks and references

Use any standard textbook on ANSI C

Do not use books written on specific C compilers (Turbo C, gcc)

Page 13: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On C

Textbooks and references

Use any standard textbook on ANSI C

Do not use books written on specific C compilers (Turbo C, gcc)

1 Brian W. Kernighan and Dennis M. Ritchie, The CProgramming Language, Prentice Hall of India.

2 E. Balaguruswamy, Programming in ANSI C, TataMcGraw-Hill.

3 Byron Gottfried, Schaum’s Outline of Programming with C,McGraw-Hill.

4 P. Dey and M. Ghosh, Programming in C, Oxford UniversityPress.

Page 14: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On data structures

Textbooks and references

Page 15: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On data structures

Textbooks and references

5 Seymour Lipschutz, Data Structures, Schaum’s OutlinesSeries, Tata McGraw-Hill.

6 Ellis Horowitz, Satraj Sahni and Susan Anderson-Freed,Fundamentals of Data Structures in C, W. H. Freeman andCompany.

7 R. G. Dromey, How to Solve it by Computer, Prentice-Hallof India.

Page 16: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

References

On data structures

Textbooks and references

5 Seymour Lipschutz, Data Structures, Schaum’s OutlinesSeries, Tata McGraw-Hill.

6 Ellis Horowitz, Satraj Sahni and Susan Anderson-Freed,Fundamentals of Data Structures in C, W. H. Freeman andCompany.

7 R. G. Dromey, How to Solve it by Computer, Prentice-Hallof India.

8 http://www.facweb.iitkgp.ernet.in/∼pds/notes/

Page 17: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Page 18: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Page 19: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Mid-semester test: 30

Page 20: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Mid-semester test: 30

End-semester test: 50

Page 21: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Mid-semester test: 30

End-semester test: 50

Final marks of a student: M = m × α, where

Page 22: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Mid-semester test: 30

End-semester test: 50

Final marks of a student: M = m × α, where

m = Total marks obtained in 100, and

Page 23: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Marks distribution

Marks distribution

Two class tests: 10 × 2 = 20

Mid-semester test: 30

End-semester test: 50

Final marks of a student: M = m × α, where

m = Total marks obtained in 100, andα = Classes attended / Total number of classes.

Page 24: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Test schedule

Tentative schedule of theory tests

Page 25: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Test schedule

Tentative schedule of theory tests

Class Test 1: February 06, 2008 (Wednesday)

Page 26: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Test schedule

Tentative schedule of theory tests

Class Test 1: February 06, 2008 (Wednesday)

Mid-semester Test: February 22–29, 2008 (Friday to Friday)

Page 27: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Test schedule

Tentative schedule of theory tests

Class Test 1: February 06, 2008 (Wednesday)

Mid-semester Test: February 22–29, 2008 (Friday to Friday)

Class Test 2: April 02, 2008 (Wednesday)

Page 28: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Test schedule

Tentative schedule of theory tests

Class Test 1: February 06, 2008 (Wednesday)

Mid-semester Test: February 22–29, 2008 (Friday to Friday)

Class Test 2: April 02, 2008 (Wednesday)

End-Semester Test: April 21–29, 2008 (Monday to Tuesday)

Page 29: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Lab schedule

Tentative schedule for the laboratory

Page 30: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Lab schedule

Tentative schedule for the laboratory

Lab test 1: February 15–21, 2008 (Friday to Thursday)

Page 31: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Lab schedule

Tentative schedule for the laboratory

Lab test 1: February 15–21, 2008 (Friday to Thursday)

Lab Test 2: April 04–10, 2008 (Friday to Thursday)

Page 32: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Lab schedule

Tentative schedule for the laboratory

Lab test 1: February 15–21, 2008 (Friday to Thursday)

Lab Test 2: April 04–10, 2008 (Friday to Thursday)

Marks distributionLab Test 1: 25Lab Test 2: 35Daily Performance: 40

Page 33: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Coverage schedule

Tentative schedule for coverage

Page 34: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Coverage schedule

Tentative schedule for coverage

Before Class Test 1: Until “iterations” (all loop constructs)

Page 35: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Coverage schedule

Tentative schedule for coverage

Before Class Test 1: Until “iterations” (all loop constructs)

Before MidSem Test: Until “introduction to pointers”

Page 36: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Coverage schedule

Tentative schedule for coverage

Before Class Test 1: Until “iterations” (all loop constructs)

Before MidSem Test: Until “introduction to pointers”

Before Class Test 2: Until “linked structures”

Page 37: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Coverage schedule

Tentative schedule for coverage

Before Class Test 1: Until “iterations” (all loop constructs)

Before MidSem Test: Until “introduction to pointers”

Before Class Test 2: Until “linked structures”

Before EndSem Test: Everything

Page 38: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

Page 39: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

Instructors

Page 40: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

InstructorsSections 1,2: Goutam Biswas, CSE-207, [email protected]://www.facweb.iitkgp.ernet.in/∼goutam/

Page 41: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

InstructorsSections 1,2: Goutam Biswas, CSE-207, [email protected]://www.facweb.iitkgp.ernet.in/∼goutam/

Sections 3,4: Abhijit Das, CSE-123, [email protected]://www.cse-web.iitkgp.ernet.in/∼abhij/

Page 42: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

InstructorsSections 1,2: Goutam Biswas, CSE-207, [email protected]://www.facweb.iitkgp.ernet.in/∼goutam/

Sections 3,4: Abhijit Das, CSE-123, [email protected]://www.cse-web.iitkgp.ernet.in/∼abhij/

Sections 5,6: Dipankar Sarkar, CSE-115, [email protected]://www.facweb.iitkgp.ernet.in/∼ds/

Page 43: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Contacts

Contacts

InstructorsSections 1,2: Goutam Biswas, CSE-207, [email protected]://www.facweb.iitkgp.ernet.in/∼goutam/

Sections 3,4: Abhijit Das, CSE-123, [email protected]://www.cse-web.iitkgp.ernet.in/∼abhij/

Sections 5,6: Dipankar Sarkar, CSE-115, [email protected]://www.facweb.iitkgp.ernet.in/∼ds/

Course web-page:http://www.facweb.iitkgp.ernet.in/∼pds/

http://www.facweb.iitkgp.ernet.in/∼pds/notes/

Page 44: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

How to write C programs

Skeleton of a C program

Page 45: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

How to write C programs

Skeleton of a C program

Include header files

Page 46: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

How to write C programs

Skeleton of a C program

Include header files

Declare global variables, constants and function prototypes

Page 47: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

How to write C programs

Skeleton of a C program

Include header files

Declare global variables, constants and function prototypes

Function bodies

Page 48: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

How to write C programs

Skeleton of a C program

Include header files

Declare global variables, constants and function prototypes

Function bodies

There must be a main function in any C program.

Page 49: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Structure of a C program

An example

A complete example

#include <stdio.h>

#define PI_4_BY_3 4.1887902048

double radius = 10;

double sphereVol ( double r ){

return PI_4_BY_3 * r * r * r;}

main (){

double area;area = sphereVol(radius);printf("Radius = %lf, volume = %lf.\n", radius, area);

}

Page 50: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The traditional starter

The traditional starter

#include <stdio.h>

main (){

printf("Hello, world!\n");}

Page 51: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The traditional starter

The traditional starter

#include <stdio.h>

main (){

printf("Hello, world!\n");}

This program takes no input, but outputs the string“Hello, world!”

in a line.

Page 52: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The short-circuit program

The short-circuit program

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",n);

}

Page 53: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The short-circuit program

The short-circuit program

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",n);

}

This program accepts an integer as input and outputs the sameinteger.

Page 54: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The square finder

The square finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",n*n);

}

Page 55: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The square finder

The square finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",n*n);

}

This program takes an integer n as input and outputs thesquare n2 of n.

Page 56: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

A faulty reciprocal finder

A faulty reciprocal finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",1/n);

}

Page 57: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

A faulty reciprocal finder

A faulty reciprocal finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",1/n);

}

The division 1/n is of integers (quotient).

Page 58: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

A faulty reciprocal finder

A faulty reciprocal finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%d\n",1/n);

}

The division 1/n is of integers (quotient).

The format %d is for printing integers.

Page 59: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

Some simple C programs

The correct reciprocal finder

The correct reciprocal finder

#include <stdio.h>

main (){

int n;

scanf("%d",&n);printf("%f\n",1.0/n);

}

Page 60: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Log in

Getting started

Page 61: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Log in

Getting started

Switch on your monitor .

Page 62: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Log in

Getting started

Switch on your monitor .

Switch on your PC.

Page 63: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Log in

Getting started

Switch on your monitor .

Switch on your PC.

Allow the machine to boot . Wait until the log in promptcomes.

Page 64: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Log in

Getting started

Switch on your monitor .

Switch on your PC.

Allow the machine to boot . Wait until the log in promptcomes.

Supply your log-in and password :Login: s<nn>

Password: s<nn>

Here s is your section (a for 1, b for 2, and so on)<nn> is the number of your PC.

This opens your window manager (usually KDE) withicons , the bottom panel , and so on. You are now ready tostart your work.

Page 65: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Page 66: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Page 67: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Edit your program (new or already existing) by an editor.emacs myprog.c &

Page 68: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Edit your program (new or already existing) by an editor.emacs myprog.c &

Write your program in the editor and save it.

Page 69: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Edit your program (new or already existing) by an editor.emacs myprog.c &

Write your program in the editor and save it.

Go to the shell and compile your program:cc myprog.c

If compilation is successful, an executable called a.out

will be created.

Page 70: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Edit your program (new or already existing) by an editor.emacs myprog.c &

Write your program in the editor and save it.

Go to the shell and compile your program:cc myprog.c

If compilation is successful, an executable called a.out

will be created.

Run your program:./a.out

Page 71: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Edit, compile and run

Getting started

Click on the terminal icon to open a shell (commandprompt).

Edit your program (new or already existing) by an editor.emacs myprog.c &

Write your program in the editor and save it.

Go to the shell and compile your program:cc myprog.c

If compilation is successful, an executable called a.out

will be created.

Run your program:./a.out

Continue your edit-compile-debug-run-debug cycle.

Page 72: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Shut down

Getting started

Page 73: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Shut down

Getting started

Close all the windows you opened.

Page 74: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Shut down

Getting started

Close all the windows you opened.

Log out from your window manager. This leaves you againin the log-in console.

Page 75: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Shut down

Getting started

Close all the windows you opened.

Log out from your window manager. This leaves you againin the log-in console.

Select the item to shut down the machine. Wait until themachine completely shuts down.

Page 76: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Shut down

Getting started

Close all the windows you opened.

Log out from your window manager. This leaves you againin the log-in console.

Select the item to shut down the machine. Wait until themachine completely shuts down.

Switch off your monitor.

Page 77: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

Page 78: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Page 79: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Page 80: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Page 81: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keys

Page 82: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keysSave your file before closing emacs.

Page 83: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keysSave your file before closing emacs.

“File -> Save (Current buffer)”

Page 84: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keysSave your file before closing emacs.

“File -> Save (Current buffer)”Click the save button (disk)

Page 85: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keysSave your file before closing emacs.

“File -> Save (Current buffer)”Click the save button (disk)“File -> Save buffer as” (to another file)

Page 86: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using emacs

Using emacs

emacs is a powerful text editor.

Run emacs as: emacs myprog.c &

Type in your program in the text area

Navigate with mouse and cursor keysSave your file before closing emacs.

“File -> Save (Current buffer)”Click the save button (disk)“File -> Save buffer as” (to another file)

Save your file once in every 15 minutes.

Page 87: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

Page 88: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Page 89: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Page 90: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

Page 91: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Page 92: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Hit Esc to exit insert mode

Page 93: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Hit Esc to exit insert mode

When in doubt, it is safe to hit Esc several times to comeback to view mode

Page 94: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Hit Esc to exit insert mode

When in doubt, it is safe to hit Esc several times to comeback to view mode

Navigate with mouse and cursor keys

Page 95: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Hit Esc to exit insert mode

When in doubt, it is safe to hit Esc several times to comeback to view mode

Navigate with mouse and cursor keys

You need to save the file by clicking on the appropriateicon (disk).

Page 96: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using gvim

Using gvim

gvim is another powerful text editor.

Run gvim as: gvim myprog.c

Hit Insert before you start typing matter

You will exit the insert mode if you hit Insert when you arealready in the insert mode

Hit Esc to exit insert mode

When in doubt, it is safe to hit Esc several times to comeback to view mode

Navigate with mouse and cursor keys

You need to save the file by clicking on the appropriateicon (disk).

Save your file once in every 15 minutes.

Page 97: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

A practice program

A practice program

#include <stdio.h>

char name[100];int i;

main (){

printf("Hello, may I know your full name? ");scanf("%s",name);printf("Welcome %s.\n",name);printf("Your name printed backward is : ");for (i=strlen(name)-1; i>=0; --i)

printf("%c",name[i]);printf("\n");

}

Page 98: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

A corrected version

A practice program (corrected)

#include <stdio.h>

char name[100];int i;

main (){

printf("Hello, may I know your full name? ");fgets(name,100,stdin);name[strlen(name)-1] = ’\0’;printf("Welcome %s.\n",name);printf("Your name printed backward is : ");for (i=strlen(name)-1; i>=0; --i)

printf("%c",name[i]);printf("\n");

}

Page 99: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Page 100: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .

Page 101: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

Page 102: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Page 103: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.

Page 104: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

Page 105: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/

Page 106: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/http://www.facweb.iitkgp.ernet.in/∼pds/notes/

Page 107: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/http://www.facweb.iitkgp.ernet.in/∼pds/notes/http://www.facweb.iitkgp.ernet.in/∼adas/

Page 108: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/http://www.facweb.iitkgp.ernet.in/∼pds/notes/http://www.facweb.iitkgp.ernet.in/∼adas/http://www.facweb.iitkgp.ernet.in/∼adas/course/lab/PDS/Spring06/

Page 109: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/http://www.facweb.iitkgp.ernet.in/∼pds/notes/http://www.facweb.iitkgp.ernet.in/∼adas/http://www.facweb.iitkgp.ernet.in/∼adas/course/lab/PDS/Spring06/http://sit.iitkgp.ernet.in/∼chitta/courses/pds/slides/starter.html

Page 110: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Using a web browser

Using a web browser

Open a web browser: mozilla or konqueror .Set a proxy :

144.16.192.213:8080144.16.192.216:7777144.16.192.245:8080144.16.192.247:8080

Bypass proxy for local machines.Type in a URL (web address) in the location field

http://www.facweb.iitkgp.ernet.in/∼pds/http://www.facweb.iitkgp.ernet.in/∼pds/notes/http://www.facweb.iitkgp.ernet.in/∼adas/http://www.facweb.iitkgp.ernet.in/∼adas/course/lab/PDS/Spring06/http://sit.iitkgp.ernet.in/∼chitta/courses/pds/slides/starter.htmlhttp://10.14.0.4/ wbcm/

Page 111: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Page 112: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Click the link on the day’s assignment.

Page 113: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Click the link on the day’s assignment.

If your assignment is a PDF file, save it to your machine.

Page 114: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Click the link on the day’s assignment.

If your assignment is a PDF file, save it to your machine.

Use xpdf in order to view PDF files.xpdf newassgn.pdf

Page 115: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Click the link on the day’s assignment.

If your assignment is a PDF file, save it to your machine.

Use xpdf in order to view PDF files.xpdf newassgn.pdf

http://www.facweb.iitkgp.ernet.in/∼pds/2007s/notes.html

http://sit.iitkgp.ernet.in/∼chitta/courses/pds/slides/

Page 116: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Assignments and submissions

Assignments and submissions

Click the link on the day’s assignment.

If your assignment is a PDF file, save it to your machine.

Use xpdf in order to view PDF files.xpdf newassgn.pdf

http://www.facweb.iitkgp.ernet.in/∼pds/2007s/notes.html

http://sit.iitkgp.ernet.in/∼chitta/courses/pds/slides/

Consult your lab instructor to know how to submit yourprograms.

Page 117: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Page 118: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Page 119: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Page 120: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

Page 121: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

Page 122: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Page 123: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Copy a file to another: cp file1.c file2.c

Page 124: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Copy a file to another: cp file1.c file2.c

Copy a file to a directory: cp file1.c progs/file3.c

Page 125: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Copy a file to another: cp file1.c file2.c

Copy a file to a directory: cp file1.c progs/file3.c

Move a file to another: mv file1.c file2.c

Page 126: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Copy a file to another: cp file1.c file2.c

Copy a file to a directory: cp file1.c progs/file3.c

Move a file to another: mv file1.c file2.c

Move a file to a directory: mv file1.c progs/file3.c

Page 127: CS11002 Programming and Data Structures Spring 2008 ...cse.iitkgp.ac.in/pds/semester/2008s/intro-slides.pdf · Introduction Title page CS11002 Programming and Data Structures Spring

Introduction

PDS laboratory

Some useful Unix commands

Some useful Unix commands

Create a directory: mkdir progs

Go to a new directory: cd progs/

Go to the parent directory: cd ../

List all files in a directory: ls -lF

View a file: cat filename

Copy a file to another: cp file1.c file2.c

Copy a file to a directory: cp file1.c progs/file3.c

Move a file to another: mv file1.c file2.c

Move a file to a directory: mv file1.c progs/file3.c

Delete a file: rm filename