Elektronika i Telekomunikacja POLSL
Forum Elektroników Wydziału AEI Politechniki Śląskiej
FAQ  ::  Szukaj  ::  Użytkownicy  ::  Grupy  ::  Galerie  ::  Rejestracja  ::  Profil  ::  Zaloguj się, by sprawdzić wiadomości  ::  Zaloguj


punktowane nr 3 u Koska
Idź do strony Poprzedni  1, 2
 
Napisz nowy temat   Odpowiedz do tematu    Forum Elektronika i Telekomunikacja POLSL Strona Główna » Semestr II / PPK
Zobacz poprzedni temat :: Zobacz następny temat  
Autor Wiadomość
noxon
PRAWIE elektronik - prawie robi...



Dołączył: 15 Lis 2006
Posty: 253
Przeczytał: 0 tematów

Skąd: [TK] bytom

PostWysłany: Sob 1:25, 08 Gru 2007    Temat postu:

Cytat:

[link widoczny dla zalogowanych]


a tez wrzuce, co mi tam Razz
ciut inaczej niz leon ;]

Kod:

#include <iostream>
using namespace std;
//////////////////////////////////////////////////////////////////////////////
class WekD{
public:
   int n,suma,*wi;
   WekD(int liczbaElementowWektora);
   ~WekD();
   void wpisz();
   int operator+();
};
//////////////////////////////////////////////////////////////////////////////
//------------------------------------konstruktor-----
WekD::WekD(int l=1):n(l){
   wi = new int[l];
   suma=0;
   cout<<"to jest konstruktor"<<endl;
}
WekD::~WekD(){
   delete [] wi;
   cout<<"to jest destruktor"<<endl;
}
//-------------------------------------operator--plus--jako--czesc--skladowa--klasy--
int WekD::operator +(){
   suma=0;
   for(int i=0;i<n;i++)
      suma+=wi[i];
   return suma;
}
//-------------------------------------wpisywanie--elementow--wektora---
void WekD::wpisz(){
   for(int i=0;i<n;i++){
      cout<<"podaj el "<<i+1<<endl;
      cin>>wi[i];
   }
}
//-------------------------------------operator--tylda--jako--osobna--funkcja---
int operator~(WekD wektor){
   int suma=0;
   for(int i=0;i<wektor.n;i++)
      suma+=wektor.wi[i];
   wektor.suma = suma;
   return suma;
}
/////////////////////////////////////////////////--MAIN--////////////////////////////////////
int main(int argc, char* argv[])
{
   WekD A(3),B,C(2);
   int a;
   A.wpisz();
   cout<<"suma el wekt A, obl za pomoca operatora \"+\" "<<+A<<endl;
   C.wpisz();
   cout<<"suma el wekt C, obl za pomoca operatora \"~\" "<<~C<<endl;
   getchar();
   getchar();
   return 0;
}
///////////////////////////////////////////////////////////////////////////////////
Powrót do góry
Zobacz profil autora
staniol
ELEKTRONIK - on już ciągnie druty



Dołączył: 12 Paź 2006
Posty: 387
Przeczytał: 0 tematów

Skąd: Piekary Śl.

PostWysłany: Śro 1:19, 12 Gru 2007    Temat postu:

jakby ktos mogl to niech jeszcze napisze co klosowski ciekawego dal na 3 laborce???
Powrót do góry
Zobacz profil autora
Gość







PostWysłany: Śro 18:36, 12 Gru 2007    Temat postu:

wie ktos jak to

"Utwórz klase bazowa i klase pochodna dla pojecia "telefon".
Sam ustal co moze byc w klasie bazowej, a co w pochodnej.
Dla kazdej klasy zdefiniuj konstruktor i destruktor(sygnalizujace, ze zostaly uruchomione).
Utworz met wirtualna "info" w obu klasach wypisujaca info al od klasy, do ktorej nalezy.
Zdefiniuj dwie zmienne wskaznikowe na typ bazowy, do jednej wpisz adres uzyskany z new dla typu bazowego, a do drugiej - dla typu pochodnego.
Uruchom "info" przez te wskazniki."

?
Powrót do góry
Misiael
Sado-Elektro - wiecie gdzie ma lutownice



Dołączył: 14 Paź 2006
Posty: 502
Przeczytał: 0 tematów


PostWysłany: Śro 20:01, 12 Gru 2007    Temat postu:

Kod:
#define _CRT_SECURE_NO_DEPRECATE
#include <iostream>
#include <string>
using namespace std;

class telefon
{
public:
   string rodzaj;
   virtual void info();
   telefon();
   virtual ~telefon();
};


class marka : public telefon
{
public:
   string model;
   string generacja;
   void info();
   marka(string);
   ~marka();
};
marka::marka(string numer)
{   
   cout<<"DZIALA KONSTRUKTOR PODKLASY"<<endl;
   model="nokia111111111\n";
   generacja=numer;
   
}
marka::~marka()
{
   cout<<"KASOWANIE MARKI !!"<<endl;
   
}
telefon::telefon()
{
   cout<<"DZIALA KONSTRUKTOR GLOWNY"<<endl;
   rodzaj="   g5\n";

}
telefon::~telefon()
{
   cout<<"KASOWANIE TELEFONU"<<endl;
}
void telefon::info()
{
   cout<<rodzaj;
}
void marka::info()
{
   cout<<rodzaj;
   cout<<endl<<model<<generacja;
}
int main()
{
    int i,j;
   string k1,k2;
   cin>>k1>>k2;
   cout<<"\ntworzenie obiektu TELEFON\n";
    telefon *n;
   n=new telefon;
   cout<<"\n tworzenie obiektu marka\n";
   marka *k;
   k=new marka(k1);

   cout<<"\ntworzenie obiektu MARKA\n";
   marka *wsk1;
   marka *n2;
   n2= new marka(k2);
   wsk1=n2;
   cout<<"\nele tele  ";
   n->info();
   cout<<"\nele marka   ";
   k->info();
   n2->info();

   delete n;
   delete k;

    system("pause");
   return 0;
   system("pause");
}


ja to tak zrobilem
Powrót do góry
Zobacz profil autora
Gość







PostWysłany: Śro 20:36, 12 Gru 2007    Temat postu:

Siemka może ktoś zrobić taki programik:

Utwórz klasę Zbior dla zbioru nieujemnych liczb całkowitych (od 0 do n-1). Wartość n niech będzie jednakowa dla wszystkich obiektów typu Zbior. Konstruktor domyślny tworzy zbiór pusty. Obecność elementu w zbiorze jest sygnalizowana wartością 1 w odpowiednim miejscu tablicy utworzonej dynamicznie za pomocą new, nieobecność jest sygnalizowana zerem. Na początku wszystkie elementy tablicy są wyzerowane, a po dołożeniu zbioru np. 5 i 13 elementy tablicy o indeksach 5 i 13 zostają ustawione na 1. Zdefiniuj operator + pozwalający dołożyć do zbioru pojedynczy element, operator + zwracający sumę dwóch zbiorów i metodę 'ma' sprawdzającą czy obiekt zawiera element o danej wartości, np. zb1.ma(13) zwraca 1 lub true gdy obiekt zb1 ma 1-kę na pozycji 13. Przydatne byłby też inne operatory jak np. * zwracający część wspólną dwóch zbiorów, ale tym się zajmij gdy wystarczy czasu. Uwaga: najmniej miejsca w pamięci wymagałoby, a może i najszybciej działo gdyby obecność lub nieobecność elementu była sygnalizowana jednym bitem, ale to... Smile

Byłbym obowiązany za pomoc .
Powrót do góry
noxon
PRAWIE elektronik - prawie robi...



Dołączył: 15 Lis 2006
Posty: 253
Przeczytał: 0 tematów

Skąd: [TK] bytom

PostWysłany: Śro 21:55, 12 Gru 2007    Temat postu:

Sirser napisał:

Siemka może ktoś zrobić taki programik:
Utwórz klasę Zbior dla (...)
Byłbym obowiązany za pomoc.


prosze, oto programik :>
jezeli dziala tak jak chciales, mozesz czuc sie "obowiązany" Razz heh

Kod:

/////////////////////////////////////////////////////////////////////////////////////
#include <iostream>
using namespace std;
const int N=10;
class Zbior{
public:
   bool *lista;
   Zbior();
   ~Zbior();
   bool ma(int pozycja);
   void operator+(int pozycja);
   Zbior operator+(Zbior innyObiektKlasy);
   Zbior operator*(Zbior innyObiektKlasy);

};
Zbior::Zbior(){
   lista = new bool[N];
   for(int i=0;i<N;i++)
      lista[i]=false;
}
Zbior::~Zbior(){
   delete [] lista;
}
bool Zbior::ma(int nr){
      if(lista[nr-1])
         return true;
      else return false;
}
Zbior Zbior::operator *(Zbior elem){
   Zbior temp;
   for(int i=0;i<N;i++){
      if(lista[i]==true && elem.lista[i]==true)
         temp.lista[i]=true;
      else temp.lista[i]=false;
   }
   return temp;
}
Zbior Zbior::operator +(Zbior elem){
   Zbior temp;
   for(int i=0;i<N;i++){
      if(lista[i] || elem.lista[i])
         temp.lista[i]=true;
      else temp.lista[i] = false;
   }
   return temp;
}

void Zbior::operator+(int nr){
   if(!lista[nr-1])
      lista[nr-1]=true;
   else
      cout<<"na tej pozycji jest juz element"<<endl;
}
//////////////////////////////////////////////////////////////////////////////////////
int main ()
{
   Zbior lista1,lista2,OR,AND;
   lista2+5;
   lista2+9;
   lista2+7;
   lista2+2;
   lista1+5;
   lista1+2;
   lista1+1;
   lista1+9;
   OR=lista1+lista2;
   AND=lista1*lista2;
      for(int i=1;i<=N;i++)
         cout<<i<<") \t"<<lista1.ma(i)<<" \t"<<lista2.ma(i)<<endl;
      cout<<"\nsuma 2 obiektow\n\n";
      for(int i=1;i<=N;i++)
         cout<<i<<") \t"<<OR.ma(i)<<endl;
      cout<<"\niloczyn (cz.wspolna) 2 obiektow\n\n";
      for(int i=1;i<N;i++)
         cout<<i<<") \t"<<AND.ma(i)<<endl;
   getchar();
   getchar();
   return 0;
}
Powrót do góry
Zobacz profil autora
Wyświetl posty z ostatnich:   
Napisz nowy temat   Odpowiedz do tematu    Forum Elektronika i Telekomunikacja POLSL Strona Główna » Semestr II / PPK Wszystkie czasy w strefie CET (Europa)
Idź do strony Poprzedni  1, 2
Strona 2 z 2

 
Skocz do:  
Nie możesz pisać nowych tematów
Nie możesz odpowiadać w tematach
Nie możesz zmieniać swoich postów
Nie możesz usuwać swoich postów
Nie możesz głosować w ankietach
  ::  
fora.pl - załóż własne forum dyskusyjne za darmo
Powered by phpBB © 2001, 2005 phpBB Group   ::   template subEarth by Kisioł. Programosy   ::  
Regulamin