IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   C ve C++ (https://www.ircforumlari.net/c-ve-c/)
-   -   C++ 'da Class Kullanımı (https://www.ircforumlari.net/c-ve-c/541957-c-da-class-kullanimi.html)

CeSaRCripS 08 Ağustos 2013 13:09

C++ 'da Class Kullanımı
 
Polinomlar Üzerine Yazılmış Bir Uygulamadır.

Kod:

//---------------------------------------------------------------------------
 
#pragma hdrstop
 
//---------------------------------------------------------------------------
 
#pragma argsused
#ifndef POLINOM_H
#define POLINOM_H
#include <iostream>
#define MAX 20
using namespace std;
class Polinom {
      public:
      Polinom();
      Polinom(int dizi[]);
      Polinom(const Polinom &p);
      void setKatsayi(int us,int deger);
      void setKatsayi(int dizi[]);
      int getKatsayi(int us) const;
      void yazdir();
      Polinom topla(Polinom p);
      Polinom carp(Polinom p);
      Polinom carp(int sayi);
      Polinom turev();
      int fonksiyon(int x);
      private:
      int katsayi[MAX];
};
 
 
#endif
Polinom::Polinom()
{
  for(int i=0;i<MAX;i++)
  {
    katsayi[i]=0;             
  }
}
 
Polinom::Polinom(int dizi[])
{
  for(int i=0;i<MAX;i++)
  {
    katsayi[i]=dizi[i];
  }
}
 
Polinom::Polinom(const Polinom &p)
{
  for(int i=0;i<MAX;i++)
  {
    katsayi[i]=p.getKatsayi(i);
  }
}
 
void Polinom::setKatsayi(int us,int deger)
{
    katsayi[us]=deger;
}
 
void Polinom::setKatsayi(int dizi[])
{
  for(int i=0;i<MAX;i++)
  {
    katsayi[i]=dizi[i];
  }
}
 
int Polinom::getKatsayi(int us) const
{
    return katsayi[us];
}
 
void Polinom::yazdir()
{
  int sayac=0;
  for(int i=MAX-1;i>=0;i--)
  {
    if(katsayi[i]!=0)
    {
    if(sayac>0)
        cout<<" + ";
    cout<<katsayi[i]<<"x^"<<i;
    sayac++;
    }
  }
  if(sayac>0)
    cout<<endl;
}
 
Polinom Polinom::topla(Polinom p)
{
  Polinom pTemp;
  for(int i=0;i<MAX;i++)
  {
    pTemp.setKatsayi(i,katsayi[i]+p.getKatsayi(i));
  }
  return pTemp;
}
Polinom Polinom::carp(int sayi)
{
  Polinom pTemp;
  for(int i=0;i<MAX;i++)
    pTemp.setKatsayi(i,katsayi[i]*sayi);
  return pTemp;
}
Polinom Polinom::carp(Polinom p)
{
  Polinom pTemp;
  for(int i=0;i<MAX;i++)
  for(int j=0;j<MAX;j++)
  {
    if(i+j<MAX)
      pTemp.setKatsayi(i+j,pTemp.getKatsayi(i+j)+katsayi[i]*p.getKatsayi(j));
  }
  return pTemp;
}
 
Polinom Polinom::turev()
{
  Polinom pTemp;
  pTemp.setKatsayi(MAX-1,0);
  for(int i=0;i<MAX-1;i++)
  {
    pTemp.setKatsayi(i,katsayi[i+1]*(i+1));
  }
  return pTemp;
}
 
int Polinom::fonksiyon(int x)
{
 int deger=0;
 
  for(int i=0;i<MAX;i++)
  {
    int us=1;
    for(int j=0;j<i;j++)
    us*=x;
    deger+=us*katsayi[i];
  }
  return deger;
}
 
int main(int argc, char* argv[])
{
 
  Polinom p1;
  p1.setKatsayi(2,4);
  p1.setKatsayi(3,-1);
  cout<<"p1 = ";
  p1.yazdir();
  Polinom p2;
  p2.setKatsayi(4,4);
  p2.setKatsayi(5,-1);
  cout<<"p2 = ";
  p2.yazdir();
  Polinom p3(p1.topla(p2));
  cout<<"p3=p1+p2, p3=";
  p3.yazdir();
  Polinom p4(p3.carp(2));
  cout<<"p4=p3*2, p4=";
  p4.yazdir();
  Polinom p5(p4.carp(p3));
  cout<<"p5=p4*p3, p5=";
  p5.yazdir();
  Polinom p6(p5.turev());
  cout<<"p6=p5', p6=";
  p6.yazdir();
  cout<<"x=5 için p6(x)'in değeri: p6(5)="<<p6.fonksiyon(5)<<endl;
 
  char c;
  cout<<endl<<"Cikmak icin Enter'a tusuna basin.";
  cin.get(c);
  return 0;
 
}
//---------------------------------------------------------------------------



Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 14:34.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk