Twoje PC  
Zarejestruj się na Twoje PC
TwojePC.pl | PC | Komputery, nowe technologie, recenzje, testy
B O A R D
   » Board
 » Zadaj pytanie
 » Archiwum
 » Szukaj
 » Stylizacja

 
M E N U
  0
 » Nowości
0
 » Archiwum
0
 » Recenzje / Testy
0
 » Board
0
 » Rejestracja
0
0
 
Szukaj @ TwojePC
 

w Newsach i na Boardzie
 
OBECNI NA TPC
 
 » Sherif 21:10
 » leon 21:10
 » Hitman 21:09
 » kemilk 21:08
 » Kenny 21:07
 » DJopek 21:01
 » ToM78 20:59
 » zibi13 20:58
 » matali 20:57
 » Kelso1 20:55
 » Wedrowiec 20:45
 » JE Jacaw 20:42
 » piwo1 20:41
 » wrrr 20:39
 » rkowalcz 20:38
 » adolphik 20:33
 » burz 20:32
 » kombajn4 20:28
 » mravel 20:15
 » dugi 20:14

 Dzisiaj przeczytano
 36875 postów,
 wczoraj 25433

 Szybkie ładowanie
 jest:
włączone.

 
ccc
TwojePC.pl © 2001 - 2025
A R C H I W A L N A   W I A D O M O Ś Ć
    

Kto zna dobrze C++? , k_luke 10/09/05 19:08
Witam,
szukam kogos, kto zna dobrze programowanie w C++... chodzi o programowanie obiektowe. Jesli jest takowa osoba i dysponuje dzis czasem - to prosilby o odplatna pomoc w napisaniu 3-4 malych programow... jesli bedzie ktos chetny to przesle tresc zadan na maila...

  1. .... , Hawaj 10/09/05 19:19
    napisz na bordzie terść zadań, to więcej ludzi pomyśli nad nimi

  2. nie pierdziel , recydywista 10/09/05 19:46
    o kasie tylko wal zadania tutaj :)

    Computers are useless. They can only
    give you
    answers.

  3. jedno z zadan... , k_luke 10/09/05 19:48
    /*
    Opracuj szablon klasy reprezentujacej liste jednokierunkowa, z jednym
    parametrem oznaczajacym typ danych przechowywanych w wezlach listy.

    Szablon ma zawierac:

    - Definicje wlasnego, prywatnego wezla;

    - Konstruktor inicjujacy liste pusta;

    - Konstruktor inicjujacy liste z jednym wezlem danych;

    - Destruktor;

    - Operator << przeznaczony do konkatenacji list w postaci
    Lista &operator << (Lista &);

    - Funkcje skladowa print, przeznaczona do drukowania listy.

    Opracowana klasa ma umozliwic wykonanie nastepujacego programu:

    int main()
    {
    Lista<double> L, A(1.75), B(-2.45), C(12.4);
    L << A << B << C << A;
    L.print("liczby typu double");
    return 0;
    }
    */

    1. hey na kiedy to masz?? , biEski 10/09/05 21:32
      wyslij zadania na maila z profilu to se popatrze co do zadania to w miare proste :> pozdrawiam

    2. hmm , Birdman 10/09/05 21:51
      #include <iostream>
      using namespace std;

      class lista
      {
      public:

      struct node
      {
      node * next;
      double obj;

      node(): next(NULL) {};
      ~node()
      {
      while(next)
      { node * wsk_next = next->next; // 1
      next->next = NULL; // 2
      delete (next); // 3
      next = wsk_next; // 4
      }
      }
      };

      private:
      node * first;
      public:
      lista() : first(NULL) {}
      ~lista() {}

      lista(const lista & wzor)
      {
      node * spointer;
      node * pointer;
      pointer = first = NULL;
      spointer = wzor.first;

      while(spointer)
      {
      node * temp = new node; //ta instukcja moze wyrzucic wyjatek std::bad_alloc()
      temp -> obj = spointer ->obj;

      if(first == NULL)
      {
      first = temp;
      pointer = temp;
      } else
      {
      pointer ->next = temp;
      pointer = temp;
      }
      spointer = spointer -> next;
      }
      }

      lista & operator= (const lista& wzor)
      {
      delete (first);

      node * spointer;
      node * pointer;
      pointer = first = NULL;
      spointer = wzor.first;
      while(spointer)
      {
      node * temp = new node; //ta instukcja moze wyrzucic wyjatek std::bad_alloc()
      temp -> obj = spointer ->obj;
      if(first == NULL)
      {
      first = temp;
      pointer = temp;
      } else
      {
      pointer ->next = temp;
      pointer = temp;
      }
      spointer = spointer -> next;
      }
      return *this;
      }

      bool findelem(double value , node ** prev , node ** curr)
      {
      *prev = NULL;
      *curr = first;
      while( *curr != NULL)
      {
      if( (*curr) -> obj == value) return true;
      *prev = *curr;
      *curr = (*curr) ->next;
      }
      return false;
      }


      void insert(double wstawka)
      {
      node * prev;
      node * curr;
      if(!findelem(wstawka , &prev , &curr))
      {
      node * temp = new node;
      temp -> next = first;
      first = temp;
      temp -> obj = wstawka;
      }
      }

      bool erase(double wartosc)
      {
      node * prev;
      node * curr;
      bool jest = findelem(wartosc,&prev , &curr);
      if(jest)
      {
      node * temp;
      temp = curr -> next;
      curr -> next = NULL;
      delete curr;
      if (prev)
      prev ->next = temp;
      else
      first = temp;
      }
      return jest;
      }

      void dump()
      {
      node * pokazywacz = first;
      while(pokazywacz)
      {
      cout << pokazywacz ->obj << endl;
      pokazywacz = pokazywacz ->next;
      }
      }

      }; /**** koniec definicji klasy lista jednokierunkowa ****/


      int main()
      {
      lista ld;
      ld.insert(1.001);
      ld.insert(2.002);
      ld.insert(3.003);
      ld.insert(4.004);
      ld.insert(5.005);
      lista ld2 = ld;
      ld.erase(3.003);
      ld.erase(2.002);
      ld.erase(1.001);

      ld.dump();
      ld2.dump();

      ld = ld2;
      ld.dump();
      return 0;
      }

      ping?

      1. mialem , Birdman 10/09/05 21:53
        takie cos; pewnie sie przyda ;)

        ping?

      2. Ta, trzeba tylko dorobić template'y... , pachura 10/09/05 22:57
        ...bo zlecający zadanie chciał przecież deklarować taką listę przez Lista<double> (a zatem - w domyśle - mieć również możliwość zadeklarowania Lista<int> czy Lista<std::vector<int> >).

        1. znasz dobrze... , k_luke 10/09/05 23:07
          to? nie chcialbys zrobic? i zarobic:) Pilne!

  4. poszlo... , k_luke 10/09/05 21:46
    na maila...

    
All rights reserved ® Copyright and Design 2001-2025, TwojePC.PL