上机练习 上机练习 编程作业: 利用C或Java 编写,个人编写,不需要小组合作。 9个作业 + 分析 学会用计划、统计和管理的方法 对编程活动的时间统计及安排 使用规范的过程开发程序(在第十一章学习) 在编程中提高规模估计、质量估计与评价的能力 填写需要的表格(陆续会介绍到) 填写上机报告 山东大学齐鲁软件学院 2 练习题目 1、输入n个数(实数或整数),输出其最大最小 值。 2、输入n个数和一个整数K, 输出n个数中第K个最 大最小值。要求有输入错误判断及相应错误 信息 。 3、输入n个数,用任意算法对其进行排序并按从 小到大顺序输出。 4、输入n个数,用单链表(任意算法)对其进行 排序并按从小到大顺序输出。 山东大学齐鲁软件学院 3 练习题目 5、对给定一个英文文本文件,统计并输出26个英 文字母(不区分大小写)的出现频率,并统计定冠 词‘the’的出现次数及频率。 6、 任意输入一个带有+,-,x,/和()的算术表达 式,输出表达式的值。 山东大学齐鲁软件学院 4 练习题目 7、给定一九格图,1-8八个数字随机被放入其中8 个格内,编程序在方格内移动数字,使8个数字在 九格图周围8个格内顺序(逆时针,顺时针均可) 排列。任一数字,只有当其周围四连通的格之一为 空格时,与空格交换位置。 8 2 1 1 7 3 4 8 5 6 7 山东大学齐鲁软件学院 2 3 4 6 5 5 练习题目 8.Multiple regression(多次回归) Guass’s method 山东大学齐鲁软件学院 6 问题描述 Suppose you had the following data on 6 projects development hours required new, reused, and modified LOC Suppose you wished to estimate the hours for a new project you judged would have 650 LOC of new code, 3,000 LOC reused code, and 155 LOC of modified code. How would you estimate the development hours? 山东大学齐鲁软件学院 7 Multiple regression1 Prog# 1 2 3 4 5 6 Sum Estimate New Reuse w x 1,142 1,060 863 995 1,065 3,205 554 120 983 2,896 256 485 4,863 8,761 650 3,000 Modified y 325 98 23 0 120 88 654 155 山东大学齐鲁软件学院 Hours z 201 98 162 54 138 61 714 ??? 8 Multiple regression2 Multiple regression provides a way to estimate the effects of multiple variables when you do not have separate data for each. 1. You would use the following multiple regression formula to calculate the estimated value zk 0 wk 1 xk 2 yk 3 ( ) 山东大学齐鲁软件学院 9 Multiple Regression3 2. You find the Beta parameters by solving the following simultaneous linear equations (联 立线性方程组) n n n n i 1 i 1 i 1 i 1 0 n 1 wi 2 x i 3 yi zi n n n n n i 1 i 1 i1 n n i1 i 1 0 wi 1 w 2 wi x i 3 wi yi wi zi 2 i i1 i 1 n n n 0 xi 1 wi x i 2 x 3 xi y i x izi i1 i 1 n n i 1 2 i n n n 0 yi 1 wi yi 2 x i yi 3 y yi zi i1 i 1 i 1 山东大学齐鲁软件学院 i 1 2 i i 1 10 Multiple Regression 4 3. When you calculate the values of the terms, you get the following simultaneous linear equations 60 4,8631 8,7612 6543 714 4,8630 4,521,8991 8,519,9382 620,707 3 667,832 8,7610 8,519,9381 21,022,0912 905,9253 1,265,493 6540 620,7071 905,9252 137,9023 100,583 山东大学齐鲁软件学院 11 Multiple Regression 5 4. Then you diagonalize(对角化) using Gauss’ method. This successively eliminates one parameter at a time from the equations by successive multiplication and subtraction to give 6 0 4,8631 8,761 2 654 3 714 0 0 580, 437.51 1, 419,148 2 90,640 3 89,135 0 0 01 4,759,809 2 270,6353 5,002.332 0 0 01 0 2 37,073.933 9,122.275 山东大学齐鲁软件学院 12 Multiple Regression6 5. Then you solve for the Beta terms 0 6.7013 1 0.0784 2 0.0150 3 0.2461 6. The final estimate is then z=6.71+0.0784*650+0.0150*3,000+0.2 461*155 = 140.902 hours 山东大学齐鲁软件学院 13 需求 Given a data set which contains n groups measured data as multiple variables’ values and their respective results, and one group estimated values of the multiple variables. write a program to read the data and using multiple regression and Guass’ method to calculate the estimate result corresponding to the group of the estimated values. 山东大学齐鲁软件学院 14 练习题目 9.Write a program to draw an activity Gant Chart. The interface is like the example in the website: http://www.ilog.com/products/jviews/demos/ You need to install Java platform to run the example. Or you can design your interface by yourself, which including the input, output formats and the functions your program provides. 山东大学齐鲁软件学院 15 山东大学齐鲁软件学院 16 PSP工具 http://processdash.sourceforge.net/ 山东大学齐鲁软件学院 17