Principles Of Algorithm Design I  - CSCI  1320 Tentative Schedule - Fall 2000
 Class 
Topic(s)
 Reading Assignments 
& Handouts
 Laboratory 
Assignments 
1/11
 Introduction To Class
Questionnaire (Lab I-5 points)
Distribute & Discuss Course Outline
Log Out Of UNIX - To NT
Log Out of NT To UNIX
Operating System
ASCII
bit, byte
Telnet
janus01.cs.trinity.edu - 
ls, ls -l, ls -a, ls -al
 Introduction To UNIX

Introduction To VI

Course Outline

  Questionnaire
1/13
 Collect Questionnaire (Not In Binder)
Mother Board
Power Supply
Keyboard
Bus
ASCII
Telnet Continued
UNIX Continued
yppasswd
cp
mv
rm
clear
ls P*, ls *.jpg
rmdir
vi
cat
man 
cd
mkdir
rmdir
 Telnet Computer Listing
  VI Lab
 UNIX Lab
1/18
 Operating System - UNIX - Linux
bit, byte
rmdir, mkdir, cd, cd.., 
ruptime, ls
vi editing
Launch Terminal Window 
Launch gedit Application
# include libraries [iostream.h]
main (int argc, char * argv[])
cout << "Hello" << endl;
cout << 2 << "  " << 3 <<  endl;
cout << 2 * 3 << endl;
variable int
declaration: int No;
assignment: No = 5;
cout << "No = " << No << endl;
return 0;
{ } - begin & end of program
To Compile : g++ First.cpp (produce a.out binary)
To Esecute: a.out
High Level Language: C++ ==> First.cpp
Machine Language: binary ==> a.out
decimal numeration system (0-9)
binary numeration system (0-1)
counting in decimal
counting in binary
convert binary to decimal
convert decimal to binary
storage of integers
 
Log on To Janus system
Red Hat Linux
Create a directory 1320
Create Me.cpp in directory 1320
(program to display your name)
You may use vi or gedit Application
Compile: g++ Me.cpp   [in Terminal Window]
Execute: a.out    [in Terminal Window]
1/20
 Quiz on Lectures 1 & 2 & UNIX & vi
Collect Notebook 
decimal numeration system (0-9)
binary numeration system (0-1)
octal numeration system (0-7)
counting in decimal
counting in binary
counting in octal
convert binary to decimal
convert binary to octal
convert decimal to binary
convert decimal to octal
convert octal to binary
convert octal to decimal
storage of integers (int)
storage of integers (short int)
storage of integers (long int)
selecting the right container for your data
 
Numeration Systems Lab
1/25
 4 Steps In The Software Design Cycle
Analyze The Probelm
Design An Algorithm To Solve The Problem
Implement The Algorithm
Test The Program

Review Storage of Integers
Allocate Space for A Single Character
char  Ch;
Allocate Space for A 50-Character String
char  Name[50]
Storage Of Characters
ASCII Table - Appendix A

Program Comments
Algorithm
Hierarchy Chart - Structure Chart
Flow Chart
PseudoCode

Read Chapter 1
 In Class Lab - Area Triangle

Problem Soving C++ Lab 1

1/27
 Collect Notebook 
Surprise Quiz On Numeration Systems & Chapter 1
Study Questions and Terms
Quiz Should Help Prepare Us For Exam I

Terms & Symbols for Chapter 1
// , << ,\n , address, algorithm,
ALU, analysis, argument,
arithmetic/logic unit,
assembler language,
binary digit, bit, black box,
body, bug, call, case sensitive,
central processing unit
code, coding, comment,
compile-time error, compiler,
computer system, control unit,
cout, CPU, data,
data structure, debug,
declaration statement,
declare, design, disk, editor,
executable statement,
execute, fetch,
fetch/execute cycle,
file, free format, function,
function prototype, hardware,
header, header file,
hierarchy diagram,
high-level language, identifier,
implementation, input,
input unit, invoke,
iostream.h, keyword, 
left brace, library, linker,
logic error, low-level language,
machine dependent, main,
main memory, maintenance,
modular programming,
module, newline character,
nonexecutable statement,
object code, operation system,
output, output unit,
peripheral equipment,
portable code, preprocessor,
preprocessor directive,
primary storage, process,
program, pseudocode, return,
right brace, run, run-time error,
secondary storage unit,
sequential computer, software,
source code, source program, statement,
stream , string constant,
string literal, structure chart,
syntax, syntax error,
tape, text editor,, test, top-down design,
void, walkthrough, warning message

Scan Chapter 2 
 Questions 1 Lab
2/1
 Parameters, Arguments
Pass By Reference
Pass By Value
Prototypes
Preprocessing Defines 
Preprocessing Includes 
 
 
2/3
 Collect Folders
Parameters, Arguments
Pass By Reference
Pass By Value
Prototypes
Preprocessing Defines 
Preprocessing Includes 
 Read About 
Pass By Reference
By Value
 Quadratic Lab
2/8
 PreTest Loops
PostTest  Loops
Fixed Repetition Loops
 Read About 
Loops
 
2/10
 PreTest Loops
PostTest  Loops
Fixed Repetition Loops
Collect Folders
 
 Loop Practice
2/15
Review PreTest/PostTest/
Fixed RepetitionLoops
Intro To Random Number Calls
Rand()
Rand() / 2,147,483,647.1 * 6
(int) Rand() / 2,147,483,647.1 * 52 + 1

 Guess My Number Game

 
 Guess My Number Lab
2/17
Practice Loops & Decision Making
More Random Numbers
 Read About 
Arrays
 
2/22
 Introduction To Arrays
#define MAX
int Array[MAX+1], ActNo

DisplayIntArray(Array, ActNo, Max)
InitializeIntArray(Array, ActNo, Max)
FillIntSequential(Array, ActNo, Max)

 
  Array I Lab
2/24
 More With Arrays
#define MAX
int Array[MAX+1], ActNo

DisplayIntArray(Array, ActNo, Max)
InitializeIntArray(Array, ActNo, Max)
FillIntSequential(Array, ActNo, Max)
Discuss Exam

 
 
2/29
 Exam I
 
 
3/2
 Review Exam
Arrays Revisited
 
 
3/7
 Spring Break
 
 
3/9
 Spring Break
 
 
3/14
 Introduction To Classes
private
public
constructor

class Student
Student Student1
Student1.Display
Student1.Get
Student1.Set

 
  Class Lab
3/16
 Individually Work With Pardoner On 
Class Lab
 Read About Classes
 
3/21
Convert Array 1 Lab To Class
 
 Array 2 Lab
Due 3/28/00
3/23
Functions With Explicit Returns 
Functions Low & High
FillSequential
FillRandom

Prototypes In Class Description
Class Methods Coded Outside Class

 
 
3/28
 Bubble Sort

Default Arguments Passed To Function

 
 
4/4
 Binary Search
Sequential Search

Order N
Order N*N
Order N log N

 
 Array 3 Lab
Due 4/11/00
4/6
 Sequential 
Files
Reading Character File
Reading Numerical File
 
 
4/11
Quiz -LongIntArray 
Sequential 
Files
istream InputFile
ostream OutputFile
InputFile.open("In.txt")
InputFile.open("In.txt")
InputFile.close( )
InputFile.close()
InputFile.get(Ch)
InputFile >> No;
 
 File Practice Lab

Will Collect Notebooks 4/20

4/13
Discuss Quiz
Quiz -LongIntArray
Review LongIntArray Class
Review Functions
File Copy Program
Fill Array From File
 
 Array 4 Lab
Finish By 4/18/00
End Of Final Project
Get Help Mon if need it!
Will Collect Notebooks 4/20
4/18
 Quiz -LongIntArray

stdio.h
printf
scanf

int -> %d
long -> %ld
float -> %f
char -> %c
string -> %s

 
 Part Class Lab
 Due 4/27/00
4/20
 Collect Notebooks
Function Overload Review
 
 
4/25
 Review For Exam
 
 Array 5 - Final Testing (Optional) Lab
4/27
 Exam II
 
  Extra Credit Optional Lab
5/2
 Recursion
.hpp and .cpp file separation
   
5/3 & 5/4
Reading Days
 
 
There Will Be A Final Project!  There Will Not Be A Comprehensive Final Exam During Exam Week!