CSE1320-001-Fall2013 INTERMEDIATE PROGRAMMING

advertisement
Dr. Sajib Datta
CSE@UTA
Jan 15, 2014

Instructor: Sajib Datta
◦ Office Location: ERB 336
◦ Email Address: sajib.datta@mavs.uta.edu
◦ Web Site: http://crystal.uta.edu/~datta/teaching/cse13201/cse-1320-001-spring-2014.html
◦ Office Hours: MoWe: 12:00 PM - 1:30 PM
TuTh: 3:30 PM - 5:00 PM

TA and his office hours: TBA




Learn to program in C at a level beyond an
introductory programming course.
Exposure to basic data structures
Learn the concept of object-oriented
programming in C++
Learn to use the Linux operating system



W. D. Foster and L. S. Foster: C By Discovery
(4th Edition)
Herbert Schildt: C: The Complete Reference
(4th Edition)
http://en.wikibooks.org/wiki/C_Programming





All labs (4) will be posted on the course
website and announced in class.
Each lab will be distributed one week before
the due time.
No late Labs will be accepted except for
university-excused absences with
documentation submitted before or less than 3
calendar days after the due date.
Two exams and
Final exam
◦ Comprehensive





Attendance/Quizzes 10% (Tentative)
Labs 30% (Tentative)
Exams 30% (to average 2 exams) (Tentative)
Final Exam 30% (Tentative)
Final grades are based on the standard ranges
of A: 90–100, B: 80–89, C: 70–79, D: 60–69, F:
0–59
Instructor reserves the right to change the distribution


Practice!!!
Test code (debug)

What is computer programming?
◦ Interpretation of a task or algorithm in a computer
language.

What is an algorithm?
◦ A set of instructions for accomplishing a task.
◦ Input and Output

How about preparing salad?
◦ Steps:
 Clean and cut vegetables
 Put sauce & cheese
 Stir



The algorithm for sorting three integers in
ascending order, given 20, 5, 8.
Steps: 5, 8, 20
To determine the concrete steps involved in
solving a problem, we may
◦ Logically represent the problem
◦ Implement the logic in computer languages (c, c++,
java, python, perl…)

Given a thousand integers?

Manually operating – not possible
◦ Google search engine (Searching in a File)

The website is up.

Course lectures will be uploaded there
◦ Check regularly for assignments and update


CPU – central processing unit
RAM – random access memory
◦ Computer data storage
◦ Integrated circuits – randomly access with constant
time


Permanent memory – hard disk
Computer peripheral – mouse, keyboard


For omega access, each student that needs to
have access to it will need to contact the help
desk and request it. The best way is to call
them at 817-272-2208 and ask to have
omega access added to your NetID account.
Visual Studio download information:
◦ http://www.uta.edu/oit/cs/software/microsoft/visu
al-studio-2010/index.php
A Linux server
 Get an account!
 http://www.uta.edu/oit/cs/web/omegaweb.php
 Provides C, C++, Lisp, Prolog, Cobol, and
Fortran language compilers
 Connect using SSH

http://www.uta.edu/oit/cs/files/sftp/ssh/index.php



Windows users: download SSH client from OIT
http://www.uta.edu/oit/cs/unix/ssh/SecureShell-Client.php

omega.uta.edu

Applications -> Utilities -> Terminal

Login:
◦ $ ssh your_netID@omega.uta.edu

Logout:
◦ $ logout<Return>

# include <stdio.h>
◦ Tell compiler to include the information included in
studio.h

int main( )
◦ A function name
◦ C programming consists of one or more functions
(basic modules)
◦ Parenthesis identify a function
◦ Similar to the function defined in math
◦ Arguments and return

/* a … */
◦ Enclose comments (block), “//” – single line
◦ Intended for the reader and ignored by the compiler


{ - the beginning of the function body
(statements separated by “;”)
int num;
A declaration statement
num is an identifier
Declare a variable before using it
Traditionally, declare it at the beginning
Lowercase letters, uppercase letters, digits, the
underscore
◦ First character must be a letter or an underscore
◦ Not key words
◦
◦
◦
◦
◦

num = 1;
◦ an assignment statement
◦ Set space in memory
◦ Reassign later

printf(“ ”)
◦ Part of the standard C library, a function

\n
◦ Start a new line

%d
◦ Placeholder/format specifier - where and in what
form to print


return - a return statement of a function
} – the end of the function

There are different criteria by which one
program may be considered better than
another. Some examples are:
◦
◦
◦
◦
Readability – collaborative work
Maintainability – self-updated
Scalability – large-scale data set
Performance (e.g., how fast it runs or how much
memory it uses)
Download