实验4 类与对象2
Posted zszssy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验4 类与对象2相关的知识,希望对你有一定的参考价值。
1.实验内容2
graph.h
#ifndef GRAPH_H #define GRAPH_H // 类Graph的声明 class Graph { public: Graph(char ch, int n); // 带有参数的构造函数 void draw(); // 绘制图形 private: char symbol; int size; }; #endif
graph.cpp
// 类graph的实现 #include "graph.h" #include <iostream> using namespace std; // 带参数的构造函数的实现 Graph::Graph(char ch, int n): symbol(ch), size(n) { } // 成员函数draw()的实现 // 功能:绘制size行,显示字符为symbol的指定图形样式 // size和symbol是类Graph的私有成员数据 void Graph::draw() { int i,j; for(i=0;i<size;i++){ for(j=1;j<=2*size-1;j++){ if (j<=size+i&&j>=size-i) cout<<symbol; else cout<<" "; }cout<<endl; } }
main.cpp
#include <iostream> #include "graph.h" using namespace std; int main() { Graph graph1(‘*‘,5), graph2(‘$‘,7) ; // 定义Graph类对象graph1, graph2 graph1.draw(); // 通过对象graph1调用公共接口draw()在屏幕上绘制图形 graph2.draw(); // 通过对象graph2调用公共接口draw()在屏幕上绘制图形 return 0; }
截图
2.实验内容3
Fraction.h
class Fraction { public: Fraction(); Fraction(int x, int y); Fraction(int x); void p(Fraction &f1);//加法 void q(Fraction &f1);//减法 void r(Fraction &f1);//乘法 void t(Fraction &f1);//除法 void o(Fraction f1, Fraction f2);//比较大小 void s();//输出 private: int top; int bottom; };
Fraction.cpp
#include<iostream> #include"Fraction.h" using namespace std; Fraction::Fraction() { top = 0; bottom = 1; } Fraction::Fraction(int x, int y) { top = x; bottom = y; } Fraction::Fraction(int x) { top = x; bottom = 1; } void Fraction::p(Fraction &f1) { //加法 Fraction f2; f2.top = top * f1.bottom + f1.top*bottom; f2.bottom = bottom * f1.bottom; f2.s(); } void Fraction::q(Fraction &f1) { //减法 Fraction f2; f2.top = top * f1.bottom - f1.top*bottom; f2.bottom = bottom * f1.bottom; f2.s(); } void Fraction::r(Fraction &f1) { //乘法 Fraction f2; f2.top =top*f1.top; f2.bottom =bottom*f1.bottom; f2.s(); } void Fraction::t(Fraction &f1) { //除法 Fraction f2; f2.top =top*f1.bottom; f2.bottom = bottom * f1.top; f2.s(); } void Fraction::o(Fraction f1, Fraction f2)//比较大小 { float a = float(f1.top) / float(f1.bottom); float b = float(f2.top) / float(f2.bottom); if (a<b) { cout<<f1.top<<"/"<<f1.bottom<<"<"; f2.s(); cout<<endl; } else if (a>b) { cout<<f1.top<<"/"<<f1.bottom<<">"; f2.s(); cout<<endl; } else if (a=b) { cout<<f1.top<<"/"<<f1.bottom<< "="; f2.s(); cout<<endl; } } void Fraction::s(){ //输出 cout<<top<<"/"<<bottom<<endl; }
main.cpp
#include<iostream> #include"Fraction.h" using namespace std; int main() { Fraction a; Fraction b(3,4); Fraction c(5); a.s(); b.s(); c.s(); Fraction d(1,3); Fraction e(2,3); d.p(e); d.q(e); d.r(e); d.t(e); a.o(d,e); return 0; }
截图
以上是关于实验4 类与对象2的主要内容,如果未能解决你的问题,请参考以下文章