Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Computer Programming & Utilization (GTU) Chapter 1-1 Introduction to Computer Programming 1 Introduction to Computer & Programming Syllabus : Programming Languages : Machine language, Assembly language, High level language, Compilers and interpreters Problem Solving using computers : Algorithms and flowcharts 1.1 Introduction : GTU - June 2010. A Computer is divided into 2 categories - software and hardware. Hardware is the physical component of the computer, where as software is the logical component of the computer. The computer is intelligent device, where intelligence depends on the software. The comparison between hardware and software is given below. Hardware Vs Software Sr. No. Hardware component Software 1. It is a physical computer. of the It is logical component of the computer system. 2. User can see and feel the hardware User cannot see the logical components but components. can feel it. 3. Hardware is divided into 3 part that are Software is divided into two categories that microprocessor, mother board, and are system software and application peripherals. software. 4. Hardware is the electronics components. Software is the collection of programs. So it So it is designed by the electronics is designed by computer engineer. engineer. 5. For maintenance of the computer For maintenance of the computer software , hardware , screw driver, tester, brush is testing software using set of input and required. output is required. Or they follow white box testing and Black box testing procedures. Computer Programming & Utilization (GTU) Sr. No. Hardware 1-2 Introduction to Computer Programming Software 6. For design of hardware, it requires special For design of the software, programmer software(chip designing software). requires set of system software. 7. Hardware is like car. 8. Example are keyboard mouse, screen Software are Microsoft word, paint brush , ,CPU , light pen, printer etc loader, linker etc. 1.1.1 Software is like driver. Computer Hardware : GTU - June 2009, Jan. 2010, June 2010. It includes all physical components which are touchable and sensible. It is mainly divided into 4 parts - CPU, input device, output device and auxiliary memory. CPU is the Central Processing Unit, which contains electronics circuits and used to execute instructions and also controls the operations of other input output devices. CPU is again divided into three parts ALU, CU, and memory . ALU (Arithmetic and Logical Unit) performs arithmetical operations like addition, subtraction, multiplication, division as well as logical operations like AND, OR,NOT operations. Fig. 1.1 : Block diagram of the computer Hardware system Computer Programming & Utilization (GTU) 1-3 Introduction to Computer Programming CU (Control Unit) controls each and every activity of processing of all connected devices. It acts as a brain. Its main function is to fetch instructions from main memory and execute it. Normally it executes instructions sequentially. But again this depends on specified instructions. Memory is also called as a main memory or primary memory or internal memory. It is mainly used to store instructions or information in the form of zero’s and one’s. Control unit fetches instructions from the main memory. This memory is also called as a semiconductor memory because it is constructed by the semiconductor material like silicon. This memory is again divided into various types that are RAM, ROM, PROM, EPROM, EEPROM. o RAM (Random Access Memory) can hold data till power is on. So it is called as a volatile memory (that means temporary memory). o ROM (Read Only Memory) can hold data permanently. Ordinary user can not store his information into the ROM only manufacturer of the ROM chip can store data into it. It consist of programs which can control IO devices (BIOS), booting procedures, programs of some mathematical functions like sin, cos, tan etc. So it is called as a non volatile memory (that means permanent memory). o PROM(Programmable Read Only Memory) can hold data permanently. Programmer can store his information into the PROM but only once. After that modification is not allowed. So it is called as a non volatile memory (that means permanent memory). o EPROM (Erasable Programmable Read Only Memory) can hold data permanently. User can store his information into the EPROM but only once. After that bit modification is not allowed. User can delete all the contents of the chip using ultra violet rays and again rewrite information on the EPROM chip. So it is called as a non volatile memory (that means permanent memory). o EEPROM (Electrically Erasable Programmable Read Only Memory) can hold data permanently. User can store his information into the EEPROM and bit modification is allowed. So it is called as a non volatile memory (that means permanent memory). But till now it is not used as a secondary memory because of its cost. CPU accepts information from user through input device. There are many input devices like keyboard, mouse, mice, tracker ball, touch screens etc. CPU conveys information to user through output device. There are many output devices like monitor, LCD, printers, plotters, speakers etc. Auxiliary memory is also called as a secondary memory or external memory or magnetic memory. This is permanent memory. User can store data (programs or documents or pictures etc.) permanently on this type of memory. It can be modified. There are many types of secondary memory. That are hard disk, floppy disk, CDROM, pen drive etc. Computer Programming & Utilization (GTU) 1.1.2 1-4 Introduction to Computer Programming Computer Software : GTU - June 2009. Program is the collection of instructions, which performs particular task, and collection of programs which accomplishes application (that means number of tasks) is called as a software. This software is classified into two categories - System software and Application software. System software directly interacts with computer hardware, whereas Application software is only designed to solve user problems as per users requirement. Following block diagram describes the roll of computer software and hardware. Fig. 1.2 : Layers of the computer software System Software : System software is classified into 3 categories : (1) Operating system (2) System support software and (3) System development software. Operating system manages hardware as well as interacts with user, and provides different services to users. There are many operating systems like DOS, Windows-XP,VISTA, LINUX etc. System support software manages hardware more efficiently, for example drivers of the IO devices or antivirus software’s o Drivers of the IO device consists of interfacing programs which can interacts with IO device. Every IO devices has its own driver programs. o Viruses are the programs which can start misuse of the resources thus there is mismanagement in the system. Virus infected systems lose their data as well as systems start doing some illegal operations. o Antivirus programs remove viruses from the systems and some time recover systems from major data loss. System development software supports programming development environment to user. It include editor, pre-processors, compiler, interpreter, loader etc. Computer Programming & Utilization (GTU) 1-5 Introduction to Computer Programming o Editor is the software , which is used to create programs as well as it is used for modification of existing programs. o Pre-processor is the software which is used before translators (that means compiler or editors) , which is used to replace some segments of code with some another segment. It is also called as an expansion. o Compilers are the software which can translate high level programs into low level programs. o Interpreters are the software which can translate line by line high level programs into low level programs. o Loaders are the software which can load object codes into the main memory and execute it. Compilers Vs Interpreters Sr. No. Interpreter Compiler 1. Translates and executes line by line of Translates whole source code into object source code. code. 2. User can see the result of program at User cannot see the result of program at translation time. translation time. 3. Interpreter is suitable for beginners. Compiler is not suitable for beginners. 4. It requires more memory because at the time of translation it places object code into main memory and executes it and produce the result. It requires less main memory because at the time of translation it place object code into secondary memory. Execution is not the job of compiler. This is the job of loader. 5. At first time the process of getting the results from source code is much faster than compilation because it not require loading time it requires only translation time. At first time the process of getting the results from source code is slower than interpretation because it requires loading time for loading object code from secondary device to main memory for execution. 6. It cannot produce any object code. Thus, it Once object code is created then does not needs translation process for every require translation, it only requires to load execution. object code into the memory. That is loading process. 7. So this process consuming. 8. Debugging facilities can be easily provided When compiler provides debugging facility by the interpreter. then logic becomes more complicated. 9. Size of Interpreter program is larger than Size of compiler program is smaller than compiler because it contain two tasks interpreter because it contain only translation as well as loading. translation procedure. 10. Now a days, there are two types of Here portability can be achieved through interpreter that is pure interpreter and bootstrapping process i.e. cross compilation impure interpreter. Impure interpreter of the object code. becomes more popular because of their portability. 11. Interpreters is easily lengthy supports and time This process is faster than interpreter. dynamic Compiler easily supports static allocation of Computer Programming & Utilization (GTU) Sr. No. 1-6 Interpreter Compiler allocation of memory. 12. Introduction to Computer Programming Examples : interpreter. Basic memory. interpreter, P code Example : javac, gcc etc. Application Software : Application software is classified into two categories : General purpose software and Special purpose software. General purpose software is used for many number of tasks, and provides many features for example word processor, oracle, excel etc. Special purpose software is designed for specific purposes only. User programs comes under special purpose software for example pay roll system for specific company, tax calculation software etc. Comparison of System Software with Application Software Sr. No. System software Application software 1. Is primarily concerned with the efficient Is primarily concerned with the solution of management of the computer system. some problems, using the computer as a tool. 2. However system programs are intended to The focus is on the application, not on the support the operation and use of the computing system. computer itself, rather than any particular application. 3. Is usually related to the architecture of the Is usually related to the detailed knowledge machine on which that is to run. of the Language and environment. system programmer should have knowledge So that Application programmer should of computer architecture. have detailed knowledge of high level programming language which is used to develop application program and environment i.e. operating system on which they are to run. 4. Is machine dependent. Is machine independent. 5. Used to develop new system programs and Used to develop new application programs using Bootstrapping we can make them and using cross compiler i.e. again system portable. programs, we can make them portable. 6. Examples of system software are Assembler, linker, loader, compiler etc. Examples of Application software are Paint, Photoshop, Microsoft access etc. Computer Programming & Utilization (GTU) 1.2 1-7 Introduction to Computer Programming Computer Languages : Language is the media of communication. Natural languages contains many words with specific meaning and sentences with grammatical rules. Languages are used on computer system called as computer languages. Computer languages are divided into 2 categories - low level language, and high level language. Low level language is further divided into 2 types - machine language and assembly language. 1.2.1 Machine Language : Computer directly understands this language. It is the language of 0’s and 1’s (which is also called as a binary number system i.e. binary pattern). Every instruction consists of order, data, address and all are in terms of 0’s and 1’s, thus it is very difficult to understand as well as remember. 1.2.1.1 Advantages of Machine Level Language : The programs are compact and small. The programs are stored in very less memory. Programmer can take care of each and every bits and bytes. Once programs are entered into main memory computer can directly execute it without using any translator. Suitable for low volume application, small simple program where the prototype is the final product. It does not require any extra system program to run(like assembler). 1.2.1.2 Disadvantages of Machine Level Language : The programs are difficult to understand or debug. (Address, instruction, and operands all are in machine language i.e. in binary pattern) The programs are slow to enter since you must enter each bit individually The programs do not describe the task, which you want to perform in anything resembling a human readable format. The programs are long and tiresome to write. The programmer often makes careless error. Which are subsequently very difficult to find (binary pattern all look the same.) Programmer must have detailed knowledge of the architecture of particular microprocessor. Machine language program are not portable. 1.2.2 Assembly Language : Every machine language instruction is assigned to English word mnemonic such that it should describe function of instruction. Such language of mnemonics is called as Assembly language. Programs written in the assembly languages is called as an assembly language programs. Computer requires assembler to translate assembly level programs into machine level and then only it is become executable. Computer Programming & Utilization (GTU) 1.2.2.1 1-8 Introduction to Computer Programming Advantages of Assembly Level Language : The assembly language instruction is called as mnemonic or memory jogger, which should describe in some way what the instruction does. (if we compare it with machine instruction.) The programs are very easy to understand or debug. The programs are fast to enter using alphanumeric keys of keyboard. 1.2.2.2 Disadvantages of Assembly Level Language : Assembly language programs require assembler to translate assembly language program to machine level. Programmer must have detailed knowledge of the architecture of particular microprocessor. Programmers need to learn structure of assembly language program and syntax of every statement. It requires assembler and loader for translation Assembly language programs are not portable. 1.2.3 High level Language : This language contains set of statements with each having their own syntactical (grammatical) rules. It is very similar to natural languages. Thus it is very easy for program development purpose. They requires set of system program for the execution of high level language program. Example :- C, C++, JAVA, .NET (VB.Net, ASP.NET, C#.Net) 1.2.3.1 Advantages of High Level Language : The High level instructions are easy sentences so it is very easy to learn. (if we compare it with machine instruction.) Not need to learn computer architecture. The programs are very easy to understand or debug. The programs are fast to enter using alphanumeric keys of keyboard. The programs are portable. 1.2.3.2 Disadvantages of High Level Language : High level language program requires compiler or interpreter to translate high level language program to machine level that means object code. Object code needs loader to load code into the main memory and execute that program. Programmers need to learn structure of high level language program and syntax of every statement. Some high level languages are environment dependent (That means dependent on operating system.) Computer Programming & Utilization (GTU) 1.3 1-9 Introduction to Computer Programming System Development Life Cycle : Computer only understands the machine language, it is very difficult to write down the programs, so now a days only high level languages are used to develop a program. But, directly writing programs in the high level language is also a tedious work as they may produce wrong result. To overcome such situation we need to follow program development process called as a system development life cycle. This process is distributed in 6 phases, it is also called as a water fall model which is shown in Fig. 1.3. Fig. 1.3 : Waterfall model System Requirement : This phase includes understanding the problem, and think on what exactly has to be done. Gather all information which is essential to solve problem. Analysis : In this phase all gathered information is analyzed by different alternatives depending upon the available resources. Design : In this phase, start to solve problem using various tools like flowcharts and algorithms which are explained in the section 1.4. It is very important step which helps in showing the flow of the program as well as detecting mistakes if any. Coding : Finally all the design is to be converted into the coding (i. e. programs). Testing : It is again very important phase, which is used to test whether output of the program is correct or not? This can be tested with various set of inputs. Maintenance : In this phase, program is compared with initial requirement, and as per requirements, new features are added into it. 1.4 Algorithms : .GTU – Jan. 2010, June 2010. An algorithm is the finite set of sequential instructions to accomplish a task, where instruction are written in the natural languages like English. It is also called as a step by step solution of the problem. Computer Programming & Utilization (GTU) Note : 1.4.1 1-10 Introduction to Computer Programming Always remember that algorithm and flowcharts are to be developed first and then programs are to be written. Properties/Characteristics of the Algorithm : Algorithm has four properties, that are finiteness, definiteness, effectiveness, input and output. They are explained below. Finiteness : Total number of steps used in algorithm should be finite. Definiteness : Each step of algorithm must be clear and un ambiguous. Effectiveness : Every step must be basic and essential. Input and output : The algorithm must accept zero or more input and must produce at least one output. 1.4.2 Advantages : Very easy to write. Easy technique to understand logic. Easy identification of the mistakes by non computer person. 1.4.3 Disadvantages : Time consuming. Difficult to show branching and looping. Big tasks are difficult to put in algorithm. 1.4.4 Examples of Algorithm : Simple Flow Problem : These are very simple problems, and the procedure of flow is in sequential manner, means after first step, it automatically goes to second step. Example 1 : Write an algorithm to calculate area of rectangle. Algorithm Step 1 : Accept the value of length i.e. l Step 2 : Accept the value of Breadth i.e. b Step 3 : Calculate area i.e. a=l*b Step 4 : Print Area i.e. Print a Step 5 : Stop procedure Example 2 : Write an algorithm to calculate percentage of the student. Algorithm Step 1 : Accept the name and marks in 6 subject, i.e. n,m1,m2,m3,m4,m5,m6 Step 2 : Total=m1+m2+m3+m4+m5+m6 Computer Programming & Utilization (GTU) 1-11 Introduction to Computer Programming Step 3 : Calculate percentage i.e. per=Total/600*100 Step 4 : Print percentage i.e. Print per Step 5 : Stop procedure Branching Flow problems : These sentences are not simple. It consists of condition, it tests that condition , according to it transfers the flow. Here flow is not sequential that means after branching step, it automatically goes to step mentioned in the statement. Example 3 : Write an algorithm to check whether the given number is positive or negative? Algorithm Step 1 : Accept the number i.e. n Step 2 : Check if n<0 ? If yes go to Step 3 otherwise go to Step 5 Step 3 : Print n is negative Step 4 : Stop procedure Step 5 : Print n is positive Step 6 : Stop procedure Example 4 : Write an algorithm to find out smallest number out of two numbers. Algorithm Step 1 : Accept two numbers i.e. a , b Step 2 : Check if a<b ? If yes go to Step 3 otherwise go to Step 5 Step 3 : Print a is smallest number Step 4 : Stop procedure Step 5 : Print b is smallest number Step 6 : Stop procedure Example 5 : Write an algorithm to find out largest number out of four numbers. Algorithm Step 1 : Accept four numbers i.e. a , b , c ,d Step 2 : Check if a>b ? If yes Go to Step 3 otherwise go to Step 14 Step 3 : Check if a>c ? If yes Go to Step 4 otherwise go to Step 9 Step 4 : Check if a>d ? If yes Go to Step 5 otherwise go to Step 7 Step 5 : Print a is largest number Step 6 : Stop procedure Step 7 : Print d is largest number Step 8 : Stop procedure Step 9 : Check if c>d ? If yes Go to Step 10 otherwise go to Step 12 Computer Programming & Utilization (GTU) 1-12 Introduction to Computer Programming Step 10 : Print c is largest number Step 11 : Stop procedure Step 12 : Print d is largest number Step 13 : Stop procedure Step 14 : Check if b>c ? If yes Go to Step 15 otherwise go to Step 20 Step 15 : Check if b>d ? If yes Go to Step 16 otherwise go to Step 18 Step 16 : Print b is largest number Step 17 : Stop procedure Step 18 : Print d is largest number Step 19 : Stop procedure Step 20 : Check if c>d ? If yes Go to Step 5 otherwise go to Step 23 Step 21 : Print c is largest number Step 22 : Stop procedure Step 23 : Print d is largest number Step 24 : Stop procedure Above algorithm is structured algorithm (that means nesting). We can eliminate repetitive steps using unstructured way, which is described in following algorithm. Step 1 : Accept four numbers i.e. a , b , c ,d Step 2 : Check if a>b ? If yes Go to Step 3 otherwise go to Step 12 Step 3 : Check if a>c ? If yes Go to Step 4 otherwise go to Step 9 Step 4 : Check if a>d ? If yes Go to Step 5 otherwise go to Step 7 Step 5 : Print a is largest number Step 6 : Stop procedure Step 7 : Print d is largest number Step 8 : Stop procedure Step 9 : Check if c>d ? If yes Go to Step 10 otherwise go to Step 7 Step 10 : Print c is largest number Step 11 : Stop procedure Step 12 : Check if b>c ? If yes Go to Step 13 otherwise go to Step 9 Step 13 : Check if b>d ? If yes Go to Step 14 otherwise go to Step 7 Step 14 : Print b is largest number Step 15 : Stop procedure Computer Programming & Utilization (GTU) 1-13 Introduction to Computer Programming Dear students, You can see that both algorithms produce accurate and same result but algorithm 2 requires less number of steps. When you are solving any problem first time then do not think about steps only try to produce accurate result and then try to reduce unnecessary as well as repetitive steps. LOOPS : There are 2 types of loops : Finite loop and Infinite loops When number of steps are repeated many number of times using same sequence is called as a loop and set of repeated steps are called as a body of loop. Finite Loops : When body of loop is executed finite number of times called as finite loop. For construction of finite loops following steps are important Step 1 : Initialize (count) running variable with initial value I=1 Body of loop Step 2 : Increment running variable by step value. I=I+1 Body of loop Step 3 : Check and transfer control to step 2 or in between step 1 and 2 (i.e. body of loop) If I<10(some final value) then step 2 Note : When initial value is less than final value then step value should be positive. Note : When initial value is greater than final value then step value should be negative. Note : Step value should not be zero. Note : Running variable should not be initialised by some constant within the body of loop. Note : Running variable should not be same in nested loops (i.e. loop within loop) Example 6 : Write an algorithm to print first 50 odd numbers. There are two possible algorithms Algorithm1 Algorithm2 (Last odd number is 99) Step 1 : I=1 Step 1 : I=1 Step 2 : ODD=1 Step 2 : Print I Step 3 : Print ODD Step 3 : I=I+2 Step 4 : ODD=ODD+2 Step 4 : If I <=99 go to step 2 Step 5 : I=I+1 Step 5 : Stop procedure Step 6 : If I <=50 go to Step 3 Step 7 : Stop procedure Computer Programming & Utilization (GTU) 1-14 Introduction to Computer Programming Example 7 : Write an algorithm to find sum and average of given N numbers. Example 8 : Write an algorithm to find out factorial of given number. Algorithm Algorithm Step 1 : Accept N Step 1 : Accept N Step 2 : I=1 Step 2 : I=1 Step 3 : SUM=0 Step 3 : FACT=1 Step 4 : Accept any number i.e. A Step 4 : FACT=FACT*I Step 5 : SUM=SUM+A Step 5 : I=I+1 Step 6 : I=I+1 Step 6 : If I<=N go to Step 4 Step 7 : AVG=SUM/N Step 7 : Print FACT Step 8 : Print SUM Step 8 : Stop procedure Step 9 : Print AVG Step 10 : Stop procedure Example 9 : Write an algorithm to solve following series. 1-x+x2-x3---xn Algorithm Step 1 : Accept N, X Step 2 : I=1 Step 3 : SUM=1 Step 4 : SIGN=-1 Step 5 : TERM=SIGN * XI Step 6 : SUM=SUM+TERM Step 7 : SIGN=SIGN*-1 Step 8 : I=I+1 Step 9 : If I<=N go to Step 5 Step 10 : Print SUM Step 11 : Stop procedure Infinite Loop : When the body of loop is executed finite number of time called as finite loop. Following algorithm is the example of infinite loop. Computer Programming & Utilization (GTU) Example 10 : 1-15 Introduction to Computer Programming Write an algorithm to print “Tech Max Publication Jindabad” infinite times. Algorithm Step 1 : Print “Tech Max Publication Jindabad” Step 2 : Go to Step 1 Step 3 : Stop procedure Here step 3 never executes, so it is called as dead step 1.5 Flowcharts : .GTU – Jan. 2010, June 2010. A Flowchart is pictorial representation of algorithm. Symbol Name Uses Start and Stop Symbol Used to start flow chart as well as to terminate the flow chart. Input /Output Used for IO operation Process Used to mention ALU and data transfer task (i.e. arithmetic or assignment task) Decision For branching condition Flow lines Indicates flow Loop Indicates finite loop Fig. 1.4 contd.. Computer Programming & Utilization (GTU) 1-16 Symbol Introduction to Computer Programming Name Uses Connector Connecting flow lines from different places Multiple selection For multiple branching condition Block Indicates block of statements or body of loop Module call Calling the subroutine or function Fig. 1.4 : Flowcharting symbols 1.5.1 Advantages : Easy to draw. Easy technique to understand logic. Easy to identify the mistakes by non computer person. Easy for branching and looping. 1.5.2 Disadvantages : Time consuming. Difficult for modification. Difficult task to draw flow charts for big programs. Computer Programming & Utilization (GTU) 1.5.3 1-17 Introduction to Computer Programming Examples of Flowchart : Example 11 : Draw a flowchart to calculate area Example 12 : Draw a flowchart to calculate of rectangle. percentage of the student. Flowchart : Flowchart : Fig. 1.5 Fig. 1.6 Example 13 : Draw a flowchart to check whether Example 14 : Draw a flowchart to find out the given number is positive or negative ? smallest number out of two numbers. Flowchart : Flowchart : Fig. 1.7 Example 15 : Fig. 1.8 Draw a flowchart to find out largest number out of four numbers. Computer Programming & Utilization (GTU) 1-18 Introduction to Computer Programming .GTU - Dec. 2008. Flowchart : Fig. 1.9 Example 16: Draw a flowchart to find out sum and Example 17 : Draw a flowchart to find average of given N numbers. .GTU - Dec. 2008. out factorial of given N numbers. GTU - April 2010. Flowchart : Flowchart : Fig. 1.10 Fig. 1.11 Computer Programming & Utilization (GTU) Example 18 : Draw a flowchart to solve following series. 1-19 Introduction to Computer Programming Example 19 : Draw a flowchart to print first 50 odd numbers. .GTU – April 2010. 1-x+x2-x3 +---xn Flowchart : Flowchart : Fig 1.13 Example 20 : Draw a flowchart to print “Techmax jindabad” infinite times. Flowchart : Fig. 1.12 Fig 1.14 Computer Programming & Utilization (GTU) Example 21 : 1-20 Introduction to Computer Programming Write an algorithm and draw flowchart for finding sum digits of a number. Algorithm : Flowchart : Step 1 : Accept N Step 2 : N1=N,SUM=0 Step 3 : D=N%10 Step 4 : SUM=SUM*D Step 5 : N=N/10 Step 6 : If N !=0 go to Step 3 Step 7 : Print SUM Step 8 : Stop procedure Fig. 1.15 Computer Programming & Utilization (GTU) Example 22 : 1-21 Introduction to Computer Programming Write an algorithm and draw the flowchart of a program to find the maximum of 'n' numbers. Algorithm : Flowchart : Step 1 : Accept N Step 2 : Accept FIRSTNUM Step 3 : I=2 , MAX=FIRSTNUM Step 4 : Accept any number i.e. A Step 5 : Check if A>MAX Then MAX=A Step 6 : I=I+1 Step 7 : If I<=N go to Step 4 Step 8 : Print Maximum number is MAX Step 9 : Stop procedure Fig. 1.16 Example 23 : Write an algorithm and draw the flowchart to accept N numbers and count how many of them where odd and also compute sum of all these odd..GTU – June 2010. Ans. : Step 1 : COUNT=1 : ODD=0: SUM=0 Step 2 : Accept N Step 3 : Accept A Step 4 : If A%2==1 Then SUM=SUM+A Computer Programming & Utilization (GTU) 1-22 ODD=ODD+1 Step 5 : COUNT=COUNT+1 Step 6 : If COUNT<=N Then Go to step 2 Step 7 : Print COUNT and SUM Step 8 : Stop Procedure Flowchart : Exercise Q. 1 Explain the block diagram of the computer. Q. 2 Differentiate between system programs and application program. Q. 3 Differentiate between compilers with interpreter. Q. 4 What are the advantages and disadvantages of machine languages? Q. 5 What are the advantages and disadvantages of high level languages? Q. 6 Differentiate between software and hardware. Q. 7 What is algorithm and flowchart ? and why it is used ? Q. 8 What is SDLC ? Why it is essential ? Introduction to Computer Programming Computer Programming & Utilization (GTU) 1.6 1-23 Introduction to Computer Programming University Questions and Answers : Dec. 2008 Q. 1 Q. 2 Draw a flow chart to find the maximum number out of three given numbers. (Pg. 1-23, Example 15 : Say d = – 32768 (Smallest integer number)) (5 Marks) Draw a flow chart to do the sum of 10 elements read from the user. (Pg. 1-24, Example 16 : say n = 10) (5 Marks) June 2009 Q. 3 Draw block diagram of computer and explain each block. (Section 1.1.1) Q. 4 Define following : (i) Operating system (ii) Compiler (iii) Application software (iv) System software (Section 1.1.2) (7 Marks) (4 Marks) Jan. 2010 Q. 5 Q. 6 Draw the Block Diagram of Computer Architecture and explain each block with its functions. (Section 1.1.1) (7 Marks) Give comparison of Flow charts and Algorithms (Sections 1.4 and 1.5) (4 Marks) April 2010 Q. 7 Draw a flow chart to find factorial of a given number. (Section 1.5) (5 Marks) June 2010 Q. 8 Q. 9 Provide two major differences between (a) Software and Hardware (Section 1.1) (b) Flowchart and Algorithm (Section 1.4 and 1.5) Name the major components of computer and give their function in brief. (Section 1.1.1) (2 Marks) Q. 10 Write an algorithm and draw the flowchart to accept N numbers and count how many of them where odd and also compute sum of all these odd. (Example 23) (10 Marks) Computer Programming & Utilization (GTU) 1-24 Note Introduction to Computer Programming