关于短学期的实验报告

短学期实习报告

金融2 艾米黛 1343202

本学期期末考试之后,我开始了进入上海海洋大学以来的第一个短学期。总的来说短学期使我受益匪浅,让我学到了课堂以外的东西,让我虽处校园却看到了校园以外的,关于职场的策略与技巧,让我对我的专业领域有了一定的认识,让我从原本对专业就业方向的困惑与密码没那个豁然开朗。下面,就让我回顾一下本次短学期令我影响深刻的一些精彩的片段。

关于国际货币的演讲

演讲从美元贬值这一现象入手,分析了国际汇率战争这一新兴较量形式。全球金融危机爆发后,各国通过G20峰会这一平台,共同协商实施了宽松的货币政策与财政政策以拯救和稳定全球经济。但目前的情况表明,这些措施只是让危机停止蔓延,复苏前景仍然渺茫。危机并不可怕,可怕的是长期停滞,这会让各国政府陷入焦虑并意图将问题转嫁给别的国家。因此,越来越多的国家正把本币贬值当作提振本国经济的手段,比如美国施压人民币升值。同样,陷入债务危机的欧元相对高估以及日本累积的财政问题带来的日元贬值压力,基本上反映了发达国家存在结构性危机,并表现在汇率上。但是,新兴市场国家并没有承担汇率大幅变化的能力,他们脆弱的内部市场和过剩产能将会被升值毁坏,因此,各国进行的竞争性贬值有可能加剧国际紧经济危机。美国和整个世界在上世纪30年代初期陷入了严重衰退,但真正使之演化成长期萧条的,是席卷全球的以邻为壑的保护主义,

这也为二战播下了种子。此外,日元的贬值也是当年亚洲金融危机的导火索,如果世界主要储备货币都要贬值,将会引起新的全球危机。 中国的形势更为严峻。一方面,由于过于宽松的货币政策导致了通胀与资产价格泡沫,另一方面,实体经济面临严重的产能过剩,而政府主导的投资也因信贷风险难以持续。这个局面意味着,如果人民币升值(或加息),可能会重创出口、投资和资产价格;如果不升值(不加息),因为美元贬值,也会遭受更严重的通胀和资产泡沫。因此,不管汇率博弈结局如何,中国都会面临严重的挑战。事实上,如果在汇率和利率方面过于无为而被动应对外部变化,这种不由自主的逻辑可能会将中国经济带到更加难以应付的境地。

金融电影的赏析与问答

欣赏的金融题材电影《大而不能到》《坚守自盗》让我对全球经融危机有了更加立体的认识。电影《监守自盗》一开始,从冰岛的魅力风景和国家破产说起,到纽约华尔街的金融巨头——众金融学家,政治家,经济学家粉墨登场,并以各种细致的数据与不同的条理逻辑分析,深入探讨那成席卷全球的经济危机发生背后的原因。本片把华尔街的金融团体作为研究对象,深度挖掘了以华尔街为中心,涉及政治,学术界等各领域的一条贪婪的食物链。并揭露了这条食物链是如何将世界带入经融危机的黑洞。影片汇集了前美联储主席Paul Vocker,国际货币基金组织执行主席Dominique Strauss,布什政府财政部长David McCormick,中国银监会首席顾问沈连涛,新加坡总理李显龙等不同的政治人物,金融专家,大学老师等显赫的人物。

影片分为五个部分,第一部分how we got here,第二部分the bubble,第三部分the crisis,第四部分accountbility,第五部分 where we are now。我在另一篇文章中读到“道德的评判对于对于经济行为来讲根本没有意义。”也许这就是那些在金融危机中赚得满足而归的金融家的思想吧,他们已经失去了道义和良心,眼中只有金钱和利益。资本主义没有限制人性的贪念,知识一味的提倡市场经济和自由竞争,无形中放大了人性的贪念,使其演变成为罪恶的资本主义。而罪恶的资本主义在全球范围内的肆虐再加上政府管理的疏忽最终结果就是带来了经融危机。并且最后为这些金融家买单的就只有普通的民众。这是我们不能容忍的。在社会发展的进程中,我们只能时刻谨记着这次金融危机,才能使我们尽量避免,不在重蹈覆辙。

寻找未来的监管方向:现在的金融监管主要是两个层次,一个是国际层次,一个是国家层次。因为有发展中国家、发达国家之分,不能用同一个标准来要求所有的国家。对发展中国家来说,发展中国家的金融发展是把金融作为促进经济发展的手段,所以通常会有一些特殊的安排。发展中国家一般资本比较短缺,要加速资本形成,银行具有特殊的动员资本的能力,于是会看到发展中国家的银行业发展往往早于资本市场的发展。如果把银行业的这种行为叫做资本便宜化,那么发展中国家政府一定会对利差进行控制,所以发展中国家的利率市场化一直是一个问题。如果政府不仅仅是想对利差进行控制,而且还想控制机构的动员能力,那么这个发展中国家金融机构国有化的倾向就非常明显。这是对内的。对外如果为了加速资本形成,汇率对外币的

高估是必然的,同时要进行资本管制。这种金融机制的安排是不大会出现美国那种金融危机的。因此这次金融危机尽管是全球的金融危机,但是对亚洲国家来说,只是变成出口受阻引起的总需求下降和经济的衰退。虽然由于衰退导致了银行坏账增加,会触发利率的危机,但是不会出现美国那样的金融危机。

办公自动化

办公自动化:是指在行政机关工作中,以计算机为中心,采用一系列现代化的办公设备和先进的通信技术,广泛、全面、迅速地收集、整理、加工、存储和使用信息,为科学管理和决策服务,从而达到提高行政效率的目的。办公室自动化是近年随着计算机科学发展而提出来的新概念。办公室自动化英文原称Office Automation,缩写为 OA。办公室自动化系统一般指实现办公室内事务性业务的自动化,而办公自动化则包括更广泛的意义,即包括网络化的大规模信息处理系统。 办公自动化没有统一的定义,凡是在传统的办公室中采用各种新技术、新机器、新设备从事办公业务,都属于办公自动化的领域。通常办公室的业务,主要是进行大量文件的处理,起草文件、通知、各种业务文本,接受外来文件存档,查询本部门文件和外来文件,产生文件复件等等。所以,采用计算机文字处理技术生产各种文档,存储各种文档,采用其它先进设备,如复印机、传真机等复制、传递文档,或者采用计算机网络技术传递文档,是办公室自动化的基本特征。办公室是各行业工作的领导进行决策的场所。领导机关做出决策,发布指示,除了文档上的往来之外,更深层的工作,实际上是信息的收集、存储、

检索、处理、分析,从而做出决策,并将决策作为信息传向下级机构或合作单位,或业务关联单位。

办公自动化的训练让我在已有的计算机水平上更加系统的了解了在今后工作中可能会接触到的office 软件使用方法,从实际出发切实可行的教会了我很多

 

第二篇:短学期C++实验报告

短学期C++实验报告

一、实验目的:

1.掌握C++语言中面向对象的概念,并能在程序中熟练运用。

2.了解面向对象程序设计(C++)的基本概念以及运用面向对象技术进行程序设计的基本思想。

3.能正确编写和调试C++程序。

4.了解在Visual C++环境下进行MFC程序设计的基本思想和方法。 实验内容:

编写一个有关银行业务运作的应用程序---银行储蓄系统,用菜单选择并实现: 动态创建帐户,帐户分储蓄帐户和结算帐户两类,帐户结点包括帐号、储蓄金额等,帐号由程序自动给出。

存款业务。

取款业务。所有帐户取款时需有6位密码验证。结算帐户取款应收取手续费:电汇(7%)、信汇(5%)、其它(2%)。

所有帐户的信息输出到磁盘文件 zh.txt 中。

2.在Visual C++环境下,将上述银行储蓄系统设计成基于Windows的应用程序。

二、设计思路

(一) 界面设计

1.界面1分2个区域,新建账户区和已有账户登陆区

短学期C实验报告

2.当新建账户并电击确定后弹出相关信息的界面

短学期C实验报告

2

3.当已有账户登陆成功后到取款,存款操作的界面3

短学期C实验报告

4.每种操作后最右边都会显示操作后都弹出当前账户的相关信息界面2

(二) 代码实现设计

i. 设计3个存储账户的类,SavAccount存储储蓄账户的信息,包括类型,帐号,

密码,存款余额。CheAccount存储结算帐户信息,包括类型,帐号,密码,存款余额。NowAccount存储当前操作账户的帐户类型和帐号。

ii. 定义类的操作函数。

iii. 定义3个全局的vector类

extern vector<Saving> vs;//

extern vector<Saving>::iterator is;

extern vector<Checking> vc;

extern vector<Checking>::iterator ic;

extern vector<NowA> nc;

extern vector<NowA>::iterator ns;

iv. 当用户登录后,将登陆用户的帐户类型和帐号保存到NowAccount 类型的

vector类的最后一个节点中,保持nc最后节点的数据为当前操作帐户的。 v. 在非登陆界面中读取nc节点的帐户类型和帐号,为当前操作提供对象。

三、实验步骤:

1. 为账户建立类

a) SavAccount.h

#ifndef ACCOUNT_H

#define ACCOUNT_H

#include "stdafx.h"

#include <iostream>

#include <string>

#include <vector>

#include <algorithm>

#include <fstream>

using namespace std;

class Account

{

public:

Account(long num,string cod,double mon);

long GetNumber();

string GetCode();

double GetMoney();

int CompareCode(string cod);

void SetCode(string cod);

void Deposit(double mon);

protected:

long number;

string code;

double money;

};

class NowA:public Account

{

public:

NowA(long num,string cod,double mon,int t); int GetType();

void SetType(int t);

protected:

int type;

};

class Saving: public Account

{

public:

Saving(long num,string cod,double mon); int Withdraw(double mon);

};

class Checking: public Account

{

public:

Checking(long num,string cod,double mon); int Withdraw(double mon,int i);

};

#endif

b) SavAccount.cpp

#include "stdafx.h"

#include "Account.h"

Account::Account(long num,string cod,double mon) {

number=num;

money=mon;

code=cod;

}

long Account::GetNumber()

{

return number;

}

string Account::GetCode()

{

return code;

}

double Account::GetMoney()

{

return money;

}

int Account::CompareCode(string cod)

{

if(code==cod)

return 1;

else

return 0;

}

void Account::SetCode(string cod)

{

code=cod;

}

void Account::Deposit(double mon)

{

money+=mon;

}

NowA::NowA(long num,string cod,double mon,int t):Account(num,cod,mon) {

type=t;

}

void NowA::SetType(int t)

{

type=t;

}

int NowA::GetType()

{

return type;

}

Saving::Saving(long num,string cod,double mon):Account(num,cod,mon) {}

int Saving::Withdraw(double mon)

{

if(mon<=money)

{

money-=mon;

return 1;

}

return 0;

}

Checking::Checking(long num,string cod,double mon):Account(num,cod,mon) {}

int Checking::Withdraw(double mon,int i)

{

double m;

if(i==1)

m=money-mon*1.07;

else if(i==2)

m=money-mon*1.05;

else

m=money-mon*1.02;

if(m<0)

return 0;

else

{

money=m;

return 1;

}

}

2. 创建基本的操作函数

a) fun.h

int SearchAccount(int type,int Acount);// 在类型:type中查找Account;::1代表SAV类型帐户,2代表CHE类型帐户。

long DefaultAccount(int i);//设置帐户类型

int Delete(int i,long num);

long CStringtoLong(CString csValue);

double CStringtoDouble(CString csValue);

int CStringtoInt(CString csValue);

b) fun.cpp

#include "Fun.h"

#include "stdafx.h"

#include "SavAccount.h"

extern vector<SavAccount> vector1;

extern vector<SavAccount>::iterator iterator1;

extern vector<CheAccount> vector2;

extern vector<CheAccount>::iterator iterator2;

int SearchAccount(int type,int number)

{

int n=0;

if(type==1)

{

if(!vector1.size())

return -2;

iterator1=vector1.begin();

while(number>=vector1[n].GetAccount()&&iterator1<vector1.end()) {

if(number==vector1[n].GetAccount())

return n;

iterator1++;

n++;

}

}

else

{

if(!vector2.size())

return -2;

iterator2=vector2.begin();

while(number>=vector2[n].GetAccount()&&iterator2<vector2.end()) {

if(number==vector2[n].GetAccount())

return n;

iterator2++;

n++;

}

}

return -1;

}

long DefaultAccount(int i)

{

long dnum=100001;

if(SearchAccount(i,dnum)<0)

return dnum;

if(i==1)

{

for(iterator1++;iterator1<vector1.end();iterator1++)

if(iterator1->GetAccount()>++dnum)

return dnum;

}

else

{

for(iterator2++;iterator2<vector2.end();iterator2++)

if(iterator2->GetAccount()>++dnum)

return dnum;

}

return dnum+1;

}

int Delete(int i,long num)

{

if(SearchAccount(i,num)<0)

return 0;

else

{

if(i==1)

vector1.erase(iterator1);

else

vector2.erase(iterator2);

return 1;

}

}

long CStringtoLong(CString csValue)

{

LPTSTR chValue=csValue.GetBuffer(csValue.GetLength()); long lValue=atol(chValue);

csValue.ReleaseBuffer();

return lValue;

}

double CStringtoDouble(CString csValue)

{

LPTSTR chValue=csValue.GetBuffer(csValue.GetLength()); double fValue=atof(chValue);

csValue.ReleaseBuffer();

return fValue;

}

int CStringtoInt(CString csValue)

{

LPTSTR chValue=csValue.GetBuffer(csValue.GetLength()); int fValue=atof(chValue);

csValue.ReleaseBuffer();

return fValue;

}

3. 为vector类型帐户声明全局

#include "stdafx.h"

#include "Account.h"

vector<Saving> vs;

vector<Saving>::iterator is;

vector<Checking> vc;

vector<Checking>::iterator ic;

vector<NowA> nc;

vector<NowA>::iterator ns;

4. 为界面中的控件定义变量

5. 开帐户代码

BOOL b;

GetDlgItemInt(IDC_CODE1_EDIT,&b);

if(!b)

{

MessageBox("输入密码");

return;

}

GetDlgItemInt(IDC_CODE2_EDIT,&b);

if(!b)

{

MessageBox("输入确认密码");

return;

}

int i;

if(GetCheckedRadioButton(IDC_SAVING_RADIO,IDC_CHECKING_RADIO)==IDC_SAVING_RADIO)

i=1;

else

i=2;

CString s1,s2;

GetDlgItemText(IDC_MONEY_EDIT,s1);

double mon=CStringtoDouble(s1);

if(mon<=0)

{

MessageBox("初始存款要大于0元");

return;

}

GetDlgItemText(IDC_CODE1_EDIT,s1);

GetDlgItemText(IDC_CODE2_EDIT,s2);

if(s1!=s2)

{

MessageBox("两次输入密码不同");

UpdateData(0);

return;

}

LPTSTR cod=new TCHAR[s1.GetLength()+1];

_tcscpy(cod,s1);

GetDlgItemText(IDC_NUMBER_EDIT,s1);

long num=CStringtoLong(s1);

SearchNumber(i,num);

if(i==1)

{

Saving sav(num,cod,mon);

vs.insert(is,sav);

}

else

{

Checking che(num,cod,mon);

vc.insert(ic,che);

}

MessageBox("帐户已开");

NowA now(num,cod,mon,i);

nc.insert(ns,now);

m_dlg1.DoModal();

m_NumberEdit=DefaultNumber(i);

UpdateData(0);

6. 开帐户后弹出的确认界面代码

BOOL CMyDlg1::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO: Add extra initialization here

ns=nc.end();

m_money=ns->GetMoney();

m_number=ns->GetNumber();

m_type=ns->GetType();

return TRUE; // return TRUE unless you set the focus to a control

// EXCEPTION: OCX Property Pages should return FALSE }

void CMyDlg1::OnOK()

{

// TODO: Add extra validation here

//控制显示

UpdateData(0);

}

7. 帐户操作界面的存款操作代码

void CMyDlg2::OnSuresavingButton()

{

// TODO: Add your control notification handler code here int i=m_type;

long num=m_num;

string cod=m_cod;

double mon=m_mon;

BOOL b;

CString s1;

GetDlgItemText(IDC_MONEY1_EDIT,s1); mon=CStringtoDouble(s1);

if(mon<=0)

{

MessageBox("存款要大于0元");

return;

}

if(i==1)

{

is->Deposit(mon);

mon=is->GetMoney();

}

else

{

ic->Deposit(mon);

mon=ic->GetMoney();

}

MessageBox("已存入");

//控制显示

NowA now(num,cod,mon,i);

nc.insert(ns,now);

m_dlg1.DoModal();

}

8. 帐户操作界面的取款操作代码

void CMyDlg2::OnButton4()

{

// TODO: Add your control notification handler code here int i=m_type;

long num=m_num;

string cod=m_cod;

double mon=m_mon;

CString s1;

GetDlgItemText(IDC_MONEY2_EDIT,s1); mon=CStringtoDouble(s1);

if(mon<=0)

{

MessageBox("取款要大于0元");

return;

}

if(i==1)

{

if(is->Withdraw(mon))

{

MessageBox("已取出");

mon=is->GetMoney();

NowA now(num,cod,mon,i);

nc.insert(ns,now);

m_dlg1.DoModal();

return;

}

else

{

MessageBox("余额不够");

return;

}

}

else

{

int k;

if(GetCheckedRadioButton(IDC_DIANHUI_RADIO,IDC_QITA_RADIO)==IDC_DIANHUI_RADIO)

k=1;

if(GetCheckedRadioButton(IDC_DIANHUI_RADIO,IDC_QITA_RADIO)==IDC_XINHUI_RADIO)

k=2;

if(GetCheckedRadioButton(IDC_DIANHUI_RADIO,IDC_QITA_RADIO)==IDC_QITA_RADIO)

k=3;

else

{

MessageBox("错误");

return;

}

if(ic->Withdraw(mon,k))

{

MessageBox("已取出");

mon=is->GetMoney();

NowA now(num,cod,mon,i);

nc.insert(ns,now);

m_dlg1.DoModal(); return;

}

else

{

MessageBox("余额不够"); return;

}

}

}

相关推荐