大学教程实验报告_第1页
大学教程实验报告_第2页
大学教程实验报告_第3页
大学教程实验报告_第4页
大学教程实验报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、班级:计科1203 姓名: 日期:2013. 11. 15 学号: 实验1 创建SavingAccount类1. 实验内容:创建一个SavingAccount类。使用一个static数据成员annualInterestRate保存每个存款者的年利率。2. 代码实现:/ SavingAccount.hclass SavingAccountpublic: SavingAccount(double); static void modifyInterestRate(double); double calculateMonthlyInterest();/计算月利息与余额 void show(); /显示

2、余额private: double static annualInterestRate ; double savingsBalance; ;/ SavingAccount.cpp#include<iostream>using std:cout;using std:cin;using std:endl;using std:fixed;#include<iomanip>using std:setw;using std:setprecision;#include"SavingAccount"SavingAccount:SavingAccount( doub

3、le Balance)/传递余额参数 savingsBalance = Balance;void SavingAccount:modifyInterestRate(double Rate)/传递利率参数annualInterestRate = Rate;double SavingAccount:calculateMonthlyInterest() savingsBalance += savingsBalance * ( annualInterestRate / 12); return savingsBalance; void SavingAccount:show()cout<<&q

4、uot;This month's new savings balance is :" cout << fixed << setprecision( 2 );cout<<setw(8) << savingsBalance << endl;/ testSavingAccount.cpp#include"SavingAccount.h"double SavingAccount:annualInterestRate=0.00;int main() double a, b;SavingAccount sav

5、er1(2000.00);saver1.modifyInterestRate(0.03);a = saver1.calculateMonthlyInterest();saver1.show();SavingAccount saver2(3000.00);saver2.modifyInterestRate(0.03);b = saver2.calculateMonthlyInterest();saver2.show(); SavingAccount saver11(a);saver11.modifyInterestRate(0.04);saver11.calculateMonthlyIntere

6、st();saver11.show();SavingAccount saver22(b);saver22.modifyInterestRate(0.04);saver22.calculateMonthlyInterest();saver22.show();return 0;3. 执行结果: 实验2 创建IntegerSet类1. 实验内容:创建IntegerSet类,它的每个对象可存储0到100范围内的整数。集合在内部表示为0和1的数组。默认构造函数将集合初始化为所谓的“空集合”,提供另一个构造函数,它接受一个整数的数组以及该数组的大小,并使用该数组初始化集合对象。2. 代码实现:/ Inte

7、gerSet.h#ifndef INTEGER_SET_H#define INTEGER_SET_Hclass IntegerSet public: IntegerSet() / 默认构造函数初始化为空集合 emptySet(); IntegerSet( int , int ); / 构造函数传入一个数组初始化 IntegerSet unionOfSets( const IntegerSet& ); /并集 IntegerSet intersectionOfSets( const IntegerSet& ); /交集 void emptySet(); / 设为空集合 void

8、inputSet(); / 输入数组及大小 void insertElement( int ); void deleteElement( int ); void printSet() const; bool isEqualTo( const IntegerSet& ) const;private: int set 101 ; int validEntry( int x ) const return ( x >= 0 && x <= 100 ); ; #endif/ IntegerSet.cpp#include <iostream> using s

9、td:cout; using std:cin; using std:cerr;#include <iomanip> using std:setw; #include "IntegerSet.h" IntegerSet:IntegerSet( int array, int size) emptySet(); /初始化为空集合 for ( int i = 0; i < size; i+ ) insertElement( array i );/接受传入的数组和数组大小 void IntegerSet:emptySet()for( int i = 0; i <

10、; 101; i+)seti = 0;void IntegerSet:inputSet() int number; do cout << "Enter an element(-1 to end): " cin >> number; if ( validEntry( number ) ) set number = 1; else if ( number != -1 )/数值为-1时,停止输入 cerr << "Invalid Elementn" while ( number != -1 ); cout <<

11、"Entry completen" void IntegerSet:printSet() const int x = 1; bool empty = true; cout << '' for (int j = 0; j < 101; j+ ) if ( set j ) cout << setw( 4 ) << j << ( x % 10 = 0 ? "n" : "" ); empty = false; x+; if ( empty ) cout << s

12、etw( 4 ) << "-" cout << setw( 4 ) << "" << 'n' IntegerSet IntegerSet:unionOfSets( const IntegerSet &r ) IntegerSet temp; for ( int n = 0; n < 101; n+ ) if ( set n = 1 | r.set n = 1 ) temp.set n = 1; return temp;IntegerSet IntegerSet:intersec

13、tionOfSets( const IntegerSet &p )IntegerSet temp;for( int i = 0; i < 101; i+ )if( set i = 1 && p.set i =1 )temp.set i = 1;elsetemp.set i = 0;return temp;void IntegerSet:insertElement( int k ) if ( validEntry( k ) ) set k = 1; else cerr << "Invalid insert attempted!n" v

14、oid IntegerSet:deleteElement( int number)for( int i = 0; i < 101; i+ )if( i = number ) seti = 0;bool IntegerSet:isEqualTo( const IntegerSet &r ) const for ( int j = 0; j < 101; j+ ) if ( set j != r.set j ) return false; return true; /testIntegerSet.cpp#include <iostream> using std:co

15、ut; using std:endl; #include<cstdlib>#include "IntegerSet.h" int main()IntegerSet a;IntegerSet b;IntegerSet c;IntegerSet d;cout << "Enter set A:n"a.inputSet();cout << "nEnter set B:n"b.inputSet();system("pause"); system("cls");c = a

16、.unionOfSets( b );cout << "nUnion of A and B is:n"c.printSet();d = ersectionOfSets( b );cout << "Intersection of A and B is:n"d.printSet();if ( a.isEqualTo( b ) )cout << "Set A is equal to set Bn"elsecout << "Set A is not equal to set B

17、n"cout << "nInserting 77 into set A.n"a.insertElement( 77 );cout << "Set A is now:n"a.printSet();cout << "nDeleting 77 from set A.n"a.deleteElement( 77 );cout << "Set A is now:n"a.printSet();const int arraySize = 10;int intArray ar

18、raySize = 25, 67, 2, 9, 99, 105, 45, -5, 100, 1 ;IntegerSet e( intArray, arraySize );cout << "nSet e is:n"e.printSet();cout << endl;return 0;3. 执行结果: 实验3 修改Time类1. 实验内容:修改使内部时间表示采用自午夜以来的秒数,客户可以使用类的public方法并获得相同的结果。且对于类的客户并没有任何可见的功能上的改变。2. 代码实现:/Time1.hclass Time1public:Time1 (

19、int = 0 );Time1 &setTime( int );Time1 &setSecond( int );int getSecond();int getMinute();int getHour();void printUniversal() const;void printStandard() const;private:int Second;int static Hour;int static Minute;/Time1.cpp#include <iostream>#include <iomanip>#include <windows.h&

20、gt;using namespace std;#include "Time1.h"int Time1:Hour = 0; /staticint Time1:Minute = 0; /staticTime1:Time1( int Second )setTime(Second);Time1& Time1:setSecond( int second )if( second <= 59 )Hour = 0;Minute =0;elseMinute = second / 60; Second = second % 60; if( Minute <= 59 ) Ho

21、ur = 0; else Hour = Minute / 60; Minute = Minute % 60; return *this;Time1 &Time1:setTime( int second )setSecond(second);return *this;void Time1:printUniversal() constcout << setfill('0') << setw( 2 ) << Hour % 24 << ":" << setw( 2 ) << Minute

22、 << ":" << setw( 2 ) << Second << endl;void Time1:printStandard() constcout << (Hour = 0|Hour = 12) ? 12 : Hour % 12) << ":" << setfill('0') << setw( 2 ) << Minute << ":" << setw( 2 ) << Sec

23、ond << (Hour <= 12)? " AM " :" PM ") << endl;/创建代理类Time.hclass Time1;class Timepublic:Time( int = 0 );Time();Time &setTime( int );Time &setSecond( int );int getSecond();int getMinute();int getHour();void printUniversal() const;void printStandard() const;private:Time1 *ptr;/Time.cpp#include <iostream>#include <iomanip>#inc

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论