Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Niekończąca się tablica

Ostatnio zmodyfikowano 2012-06-02 16:35
Autor Wiadomość
Unlimited
Temat założony przez niniejszego użytkownika
Niekończąca się tablica
» 2012-06-01 22:41:34
Mam zamiar przerobić program konsolowy który ma za zadanie być bazą książek. Jest już wykonany ale ma wadę tj. jest "ograniczony". Użytkownik podaje na początku jaka jest wielkość tablicy (na ile książek ma zrobić miejsce program).

Teraz nasuwają mi się myśli:
- będę potrzebował operatorów new i delete
- pisać to na klasie?
- obecnie jest edycja, usuwanie książek i czy gdybym to zrobił na tablicy dwuwymiarowej to działało by?
- jeśli jeszcze coś to co?
P-57658
Sparrow-hawk
» 2012-06-01 23:01:46
Ale w czym jest problem, bo nie bardzo rozumiem? Troszkę mało informacji podałeś? Gdzie ta baza książek jest przechowywana? Czy tylko przy pierwszym uruchomieniu podaje się rozmiar tablicy? Rozumiem, że w tej tablicy przechowywane są tytuły książek? Czy używać klas? Jeśli zaczynasz z C++ to może dobre ćwiczenie, ale program bez klas może być równie dobry ;). Po co Ci Tablica dwuwymiarowa? To znaczy, co ma być w niej przechowywane? Jeśli chcesz, aby tam w jednym polu był np. tytuł, a w drugim autor, to proponuję przyjrzeć się strukturom :)
P-57663
hincu
» 2012-06-01 23:03:39
tak, pisz obiektowo, jesli rozumiesz klasy to napisz cos i zrozumiesz jakie to jest wygodne, co do tworzenia nowych objektow to http://cpp0x.pl/kursy/Kurs-STL-C++/114
zapoznaj sie z tym i uzyj to co bedzie tobie odpowiadalo
P-57664
SeaMonster131
» 2012-06-01 23:42:08
Użyj » standard C++vector, wtedy nie będziesz musiał znać rozmiaru tablicy, i nie będziesz musiał używać new i delete.
P-57670
Unlimited
Temat założony przez niniejszego użytkownika
» 2012-06-01 23:48:51
Mój dotychczasowy program: (wiem że długi ale zabezpieczony przed złym podawaniem np. litery do int) no i dużo opcji ma ;)
http://unlimited.ugu.pl/?p=34

Za zadanie dostałem 5 ale ja nie jestem z niego zadowolony i chcę go przerobić trochę ;)

Powiedzmy że zrobię to na kontenerze (vektorze?) i jak podaje nam przykład:
C/C++
#include <cstdio>
#include <vector>
int main()
{
    std::vector < int > dane;
    dane.push_back( 5 );
    dane.push_back( 2 );
    dane.push_back( 3 );
    dane.push_back( 1 );
   
    for( size_t i = 0; i < dane.size(); i++ )
         printf( "%d, ", dane[ i ] );
   
    printf( "\n\nKoniec\n" );
    return 0;
}

Jak się odwołać do np 2 elementu podczas edycji oraz jak usunąć np 3 element?
P-57671
Sparrow-hawk
» 2012-06-02 11:09:25
Możesz to zrobić np. tak:

C/C++
#include <cstdio>
#include <vector>
int main()
{
    std::vector < int > dane;
    dane.push_back( 5 );
    dane.push_back( 2 );
    dane.push_back( 3 );
    dane.push_back( 1 );
   
    for( size_t i = 0; i < dane.size(); i++ )
         printf( "%d, ", dane[ i ] );
   
    printf( "\n\Element drugi bedzie rowny 9\n" );
   
    dane[ 1 ] = 9;
   
    for( size_t i = 0; i < dane.size(); i++ )
         printf( "%d, ", dane[ i ] );
   
    printf( "\n\Teraz usune element 3\n" );
   
    dane.erase( dane.begin() + 2 );
   
    for( size_t i = 0; i < dane.size(); i++ )
         printf( "%d, ", dane[ i ] );
   
    printf( "\n\nKoniec\n" );
    return 0;
P-57678
Unlimited
Temat założony przez niniejszego użytkownika
» 2012-06-02 13:36:24
Edit:
Już wiem jak dzięki wielkie za pomoc wszystkim ;)

A co z przeszukiwaniem fraz w zmiennych? Np zmienna będzie typu string i będzie trzeba znaleźć wszystkie w których np występuje autor powiedzmy Adam?
P-57697
xevuel
» 2012-06-02 13:42:42
P-57698
« 1 » 2
  Strona 1 z 2 Następna strona