⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 a735cplx.cpp

📁 quinto esempi vari per c++ (schemi base)
💻 CPP
字号:
// nuovi concetti: incapsulamento, metodi, metodi inline
#include <iostream>

using namespace std;

struct Complesso {
  float re, im;
  void leggi();
  void scrivi();
  Complesso add(Complesso);
  Complesso sub(Complesso);
  Complesso mul(Complesso);
  Complesso divi(Complesso);
  float modquad() {return re * re + im * im;}
};


void Complesso::leggi() {
  cout << "    parte reale: ";
  cin >> re;
  cout << "    parte immag: ";
  cin >> im;
}

void Complesso::scrivi() {
  cout << re << " ";
  if (im)
    if (im > 0)
      cout << " +i" << im;
    else
      cout << " -i" << -im;
  cout << endl;
}

Complesso Complesso::add (Complesso c) {
  Complesso sum;
  sum.re = re + c.re;
  sum.im = im + c.im;
  return sum;
}

Complesso Complesso::sub (Complesso c) {
  Complesso diff;
  diff.re = re - c.re;
  diff.im = im - c.im;
  return diff;
}

Complesso Complesso::mul (Complesso c) {
  Complesso prod;
  prod.re = re * c.re - im * c.im;
  prod.im = re * c.im + im * c.re;
  return prod;
}

Complesso Complesso::divi (Complesso c) {
  Complesso divis;
  float m = c.modquad();
  divis.re = ( re * c.re + im * c.im) / m;
  divis.im = ( im * c.re - re * c.im) / m;
  return divis;
}

int main() {

  Complesso a, b;

  cout << "Operazioni elementari con numeri complessi\n\n";
  cout << "primo numero\n";
  a.leggi();
  cout << "secondo numero\n";
  b.leggi();
  cout << endl;
  cout << "primo numero    = ";
  a.scrivi();
  cout << "secondo numero  = ";
  b.scrivi();
  cout << "somma           = ";
  a.add(b).scrivi();
  cout << "sottrazione     = ";
  a.sub(b).scrivi();
  cout << "moltiplicazione = ";
  a.mul(b).scrivi();
  cout << "divisione       = ";
  if (b.modquad())
    a.divi(b).scrivi();
  else
    cout << " divisione per zero" << endl;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -