ONE DIMENSIONAL ARRAYS AND RANDOM NUMBERS. Introduction In addition to arrays and structures, C supports creation and manipulation of the following data.

Slides:



Advertisements
Similar presentations
Copyright © 2002 Pearson Education, Inc. Slide 1.
Advertisements

Introduction to C Programming
Chapter 10 C Structures, Unions, Bit Manipulations and Enumerations Acknowledgment The notes are adapted from those provided by Deitel & Associates, Inc.
C Structures What is a structure? A structure is a collection of related variables. It may contain variables of many different data types---in contrast.
C How to Program, 6/e © by Pearson Education, Inc. All Rights Reserved.
Unions The storage referenced by a union variable can hold data of different types subject to the restriction that at any one time, the storage holds data.
1 Arrays Chapter 9. 2 Outline  The array structure (Section 9.1)  Array declaration  Array initialization  Array subscripts  Sequential access to.
Chapter 5: Elementary Data Types Properties of types and objects –Data objects, variables and constants –Data types –Declarations –Type checking –Assignment.
Chapter 5 C Functions The best way to develop and maintain a large program is to divide it into several smaller program modules, each of which is more.
Chapter 7 - Functions. Functions u Code group that performs single task u Specification refers to what goes into and out of function u Design refers to.
Arrays An array is a sequence of objects all of which have the same type. The objects are called the elements of the array and are numbered consecutively.
Memory Arrangement Memory is arrange in a sequence of addressable units (usually bytes) –sizeof( ) return the number of units it takes to store a type.
Computer programming1 Arrays. Computer programming2 ARRAYS Motivation Introduction to Arrays Static arrays Arrays and Functions Arrays, Classes, and typedef.
Arrays Hanly - Chapter 7 Friedman-Koffman - Chapter 9.
Programming Assignment 8 CS113 Spring Programming Assignment 8 Implement the sorting routine of your choice. Compare average performance of your.
 2007 Pearson Education, Inc. All rights reserved C Functions.
Engineering H192 - Computer Programming The Ohio State University Gateway Engineering Education Coalition Lect 11P. 1Winter Quarter Arrays Lecture 11.
1 Lecture 9  Arrays  Declaration  Initialization  Applications  Pointers  Declaration  The & and * operators  NULL pointer  Initialization  Readings:
1 Random numbers Random  completely unpredictable. No way to determine in advance what value will be chosen from a set of equally probable elements. Impossible.
Arrays Data Structures - structured data are data organized to show the relationship among the individual elements. It usually requires a collecting mechanism.
1 CSCE 1030 Computer Science 1 Arrays Chapter 7 in Small Java.
Pointers Applications
1 CISC181 Introduction to Computer Science Dr. McCoy Lecture 19 Clicker Questions November 3, 2009.
Programming Languages -1 (Introduction to C) arrays Instructor: M.Fatih AMASYALI
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 122 – Data Structures Custom Templatized Data Structures.
C Tokens Identifiers Keywords Constants Operators Special symbols.
JAVA: An Introduction to Problem Solving & Programming, 5 th Ed. By Walter Savitch and Frank Carrano. ISBN © 2009 Pearson Education, Inc., Upper.
Arrays Module 6. Objectives Nature and purpose of an array Using arrays in Java programs Methods with array parameter Methods that return an array Array.
Lec 6 Data types. Variable: Its data object that is defined and named by the programmer explicitly in a program. Data Types: It’s a class of Dos together.
GUIDED BY- A.S.MODI MADE BY- 1. SHWETA ALWANI 2. PRIYANKA.
Lecture Set 9 Arrays, Collections and Repetition Part C - Random Numbers Rectangular and Jagged arrays.
CMSC 1041 Functions II Functions that return a value.
Nirmalya Roy School of Electrical Engineering and Computer Science Washington State University Cpt S 122 – Data Structures Pointers.
 2008 Pearson Education, Inc. All rights reserved Case Study: Random Number Generation C++ Standard Library function rand – Introduces the element.
Data TypestMyn1 Data Types The type of a variable is not set by the programmer; rather, it is decided at runtime by PHP depending on the context in which.
C++ Programming Lecture 10 Functions – Part II
Copyright 2005, The Ohio State University 1 Pointers, Dynamic Data, and Reference Types Review on Pointers Reference Variables Dynamic Memory Allocation.
 2007 Pearson Education, Inc. All rights reserved C Structures, Unions, Bit Manipulations and Enumerations.
Understanding Data Types and Collections Lesson 2.
Types(1). Lecture 52 Type(1)  A type is a collection of values and operations on those values. Integer type  values..., -2, -1, 0, 1, 2,...  operations.
Introduction to Programming Lecture 11. ARRAYS They are special kind of data type They are special kind of data type They are like data structures in.
Section 5 - Arrays. Problem solving often requires information be viewed as a “list” List may be one-dimensional or multidimensional List is implemented.
Introduction to C Programming Lecture 6. Functions – Call by value – Call by reference Arrays Today's Lecture Includes.
Chapter 10 Structures, Unions, Bit Manipulations, and Enumerations Associate Prof. Yuh-Shyan Chen Dept. of Computer Science and Information Engineering.
+ Structures and Unions. + Introduction We have seen that arrays can be used to represent a group of data items that belong to the same type, such as.
1 One Dimensional Arrays Chapter 11 2 "All students to receive arrays!" reports Dr. Austin. Declaring arrays scores :
JAVA: An Introduction to Problem Solving & Programming, 6 th Ed. By Walter Savitch ISBN © 2012 Pearson Education, Inc., Upper Saddle River,
Chapter 7 Arrays. Introductions Declare 1 variable to store a test score of 1 student. int score; Declare 2 variables to store a test score of 2 students.
 2008 Pearson Education, Inc. All rights reserved. 1 Arrays and Vectors.
1 Chapter 12 Arrays. 2 C++ Data Types structured array struct union class address pointer reference simple integral enum char short int long bool floating.
+ Arrays & Random number generator. + Introduction In addition to arrays and structures, C supports creation and manipulation of the following data structures:
1D Arrays and Random Numbers Artem A. Lenskiy, PhD May 26, 2014.
Arrays.
COMPUTER PROGRAMMING. Array C++ provides a data structure, the array, which stores a fixed-size sequential collection of elements of the same type. An.
JAVA: An Introduction to Problem Solving & Programming, 5 th Ed. By Walter Savitch and Frank Carrano. ISBN © 2008 Pearson Education, Inc., Upper.
Instructor: Alexander Stoytchev CprE 185: Intro to Problem Solving (using C)
Module 1: Array ITEI222 - Advance Programming Language.
Arrays Chapter 7. MIS Object Oriented Systems Arrays UTD, SOM 2 Objectives Nature and purpose of an array Using arrays in Java programs Methods.
REEM ALMOTIRI Information Technology Department Majmaah University.
Function Call Stack and Activation Frame Stack Just like a pile of dishes Support Two operations push() pop() LIFO (Last-In, First-Out) data structure.
SEQUENTIAL AND OBJECT ORIENTED PROGRAMMING Arrays.
Programming Logic and Design Fifth Edition, Comprehensive Chapter 6 Arrays.
Chapter 7 - Functions. Functions u Code group that performs single task u Specification refers to what goes into and out of function u Design refers to.
Chapter INTRODUCTION Data Types and Arithmetic Calculations.
Arrays An array is a sequence of objects all of which have the same type. The objects are called the elements of the array and are numbered consecutively.
C LANGUAGE UNIT 3. UNIT 3 Arrays Arrays – The concept of array – Defining arrays – Initializing arrays.
C Structures, Unions, Bit Manipulations and Enumerations
Lecture 18 Arrays and Pointer Arithmetic
Arrays Chapter 8 Copyright © 2008 W. W. Norton & Company.
Introduction to Data Structure
Presentation transcript:

ONE DIMENSIONAL ARRAYS AND RANDOM NUMBERS

Introduction In addition to arrays and structures, C supports creation and manipulation of the following data structures: Linked lists Stackes Queues Trees Data Types Derived typesFundamental typesUser-defined types Arrays Functions Pointers Integral types Float types Character types Structures Unions Enumerations

Introduction An array is a fixed-size sequenced collection of elements of the same data type. List of temperatures recorded every hour in a day, or a month, or a year. List of employees in an organization. List of products and their cost sold by a store. Test scores of a class of students. List of customers and their telephone numbers Table of daily rainfall data.

Arrays : Declaration An array declaration tells the compiler how many elements the array contains and what the type is for these elements. The number enclosed in the brackets indicates the number of elements in the array. The numbering starts with 0. Candy[0] is the first element. Candy[364] is the 365th and last element. Arrays : Initialization power[0]1 power[1]2 power[2]4 power[3]6 power[4]8 power[5]16 power[6]32 power[7]64

Arrays : Run-time initialization Month 1 has 31 days. Month 2 has 28 days. Month 3 has 31 days. Month 4 has 30 days. Month 5 has 31 days. Month 6 has 30 days. Month 7 has 31 days. Month 8 has 31 days. Month 9 has 30 days. Month 10 has 31 days. Month 11 has 30 days. Month 12 has 31 days. Using const with Arrays The program treat each element in the array as a constant Array can be explicitly initialized at run time.

Arrays : Not initialized If an array is not initialized, the elements might have any value. The compiler just uses whatever values were already present at those memory locations i no_data[i] i some_data[i] Not initialized Partially initialized If an array is initialized partially, the remaining elements are set to 0. The compiler is not so forgiving if you have too many list values. This overgenerosity is considered an error.

Arrays : Initialization When you use empty brackets to initialize an array, the compiler counts the number of items in the list and makes the array that large. The sizeof operator gives the size, in bytes, of the object, or type, following it. So sizeof days is the size, in bytes, of the whole array, and sizeof days[0] is the size, in bytes, of one element. Dividing the size of the entire array by the size of one element tells us how many elements are in the array. Month 1 has 31 days. Month 2 has 28 days. Month 3 has 31 days. Month 4 has 30 days. Month 5 has 31 days. Month 6 has 30 days. Month 7 has 31 days. Month 8 has 31 days. Month 9 has 30 days. Month 10 has 31 days. Month 11 has 30 days. Month 12 has 31 days.

Assigning Array Values nonvalid array assignment array assignment Array Bounds int doofi[20]; It's your responsibility to make sure the program uses indices only in the range 0 through 19, because the compiler won't check for you. …

The compiler doesn't check to see whether the indices are valid. The result of using a bad index is, in the language of the C standard, undefined. That means when you run the program, it might seem to work, it might work oddly, or it might abort.

Specifying an Array Size

Example

Random numbers generator A random number generator (RNG) is a computational or physical device designed to generate a sequence of numbers or symbols that lack any pattern, i.e. appear random. In C language library provides two function to generate random numbers: rand() return a pseudo-random integer between 0 and RAND_MAX (32767) srand(unsigned int seed) sets seed as the seed for a new sequence of pseudo-random integers to be return by rand();

Rand() rand() return a pseudo-random integer between 0 and RAND_MAX (32767) First run Second run

Seed definition Observation: The results of several runs are identical Explanation: The initial seed used by rand() is identical each time. The seed: Used for the generation of the random numbers. Explicitly specified using the srand function

srand() srand(unsigned int seed) sets seed as the seed for a new sequence of pseudo- random integers to be return by rand(); The sequences can be repeatable by calling srand() with the same seed value. The system time is a good choice as an argument for srand. It will be different each time the program is run. Thus, results will also be differnet.

rand() and srand() First run Second run

Example: Dices with rand() a[i] counts how many times a pair of dice rolled i. rand() % 6 produces random numbers in the range 0 to 5, rand() % produces random numbers in the range 1 to 6. First run Second run

Example: Dices with srand() a[i] counts how many times a pair of dice rolled i. rand() % 6 produces random numbers in the range 0 to 5, rand() % produces random numbers in the range 1 to 6. First run Second run

Problem