wojtas1993aaa Temat założony przez niniejszego użytkownika  | 
Nie umiem skompilować kodu z lekcji » 2008-10-16 21:26:01 Przeczytalem kurs i nie moge sobie poradzic ze zrobieniem tej ksiazki telefonicznej(nowy jestem)Mógl by mi ktos pomuc?  | 
 | 
DejaVu  | 
» 2008-10-16 21:27:24 A co chcesz konkretnie zrobić w niej?  | 
 | 
wojtas1993aaa Temat założony przez niniejszego użytkownika  | 
» 2008-10-16 21:30:19 #include <iostream> #include <conio.h> #include "console.ddt" #define MAX_OSOB 50 #define WYSWIETL_OSOB 20 using namespace ddt::console; using namespace std; struct OsobaST {     string imie;     string nazwisko;     string telefon; }; OsobaST WczytajOsobe( void ); void WyswietlDaneOsoby( OsobaST ); void WyswietlListeOsob( OsobaST tablica[], int iloscElelemtow, int zaznaczElement, int wyswietlOdElementu ); void KasujOsobe( OsobaST tablica[], int & iloscElementow, int indeksDoSkasowania ); void DodajOsobe( OsobaST tablica[], int & aktualnaIloscElementow ); void WyswietlKomunikaty( int iloscElementow ) {     textbackground( 0 );     textcolor( 7 );     gotoxy( 1, 1 );     cout << "Ilosc osob: " << iloscElementow << "/" << MAX_OSOB << "    ";     gotoxy( 1, 24 );     cout << "[ESC] Wyjscie     ";     cout << "[INSERT] Dodaj wpis     ";     cout << "[GORA/DOL] Poruszanie sie po liscie   ";     gotoxy( 1, 25 );     cout << "[DELETE] Kasuj osobe   ";     cout << "[ENTER] Pokaz dane osoby   ";     cout << "[CTRL+ENTER] Edytuj osobe   ";     return; } void EdytujTekst( string & fTekst ); void EdytujDaneOsoby( OsobaST & ); int main() {     OsobaST osoby[ MAX_OSOB ];     int iloscOsob = 0;     bool koniec = false;     int pozycja = 0;     int pozycjaListy = 0;     while( koniec != true )     {         textcolor( 7 );         textbackground( 0 );         clrscr();         if( pozycja >= iloscOsob ) pozycja = iloscOsob - 1;                  if( pozycja < 0 ) pozycja = 0;                  if( pozycja > pozycjaListy +( WYSWIETL_OSOB - 1 ) ) pozycjaListy = pozycja -( WYSWIETL_OSOB - 1 );                  if( pozycja < pozycjaListy ) pozycjaListy = pozycja;                  WyswietlListeOsob( osoby, iloscOsob, pozycja, pozycjaListy );         WyswietlKomunikaty( iloscOsob );         unsigned char znak = getch();         switch( znak )         {         case 224:              znak = getch();             switch( znak )             {             case 72:                  pozycja -= 1;                 break;             case 80:                  pozycja += 1;                 break;             case 82:                  DodajOsobe( osoby, iloscOsob );                 break;             case 83:                  KasujOsobe( osoby, iloscOsob, pozycja );                 break;             }             znak = 0;             break;         case 10:              if( iloscOsob > 0 ) EdytujDaneOsoby( osoby[ pozycja ] );                          break;         case 13:              if( iloscOsob > 0 ) WyswietlDaneOsoby( osoby[ pozycja ] );                          break;         case 27:              koniec = true;             break;         }     }     return( 0 ); } void DodajOsobe( OsobaST tablica[], int & aktualnaIloscElementow ) {     if( aktualnaIloscElementow < MAX_OSOB )     {         tablica[ aktualnaIloscElementow ] = WczytajOsobe();         aktualnaIloscElementow += 1;     }     return; } OsobaST WczytajOsobe( void ) {     OsobaST tOsoba;     clrscr();     cout << "Podaj imie: ";     getline( cin, tOsoba.imie );     cout << "Podaj nazwisko: ";     getline( cin, tOsoba.nazwisko );     cout << "Podaj telefon: ";     getline( cin, tOsoba.telefon );     return( tOsoba ); } void WyswietlListeOsob( OsobaST tablica[], int iloscElementow, int zaznaczElement, int wyswietlOdElementu ) {     int max = wyswietlOdElementu + WYSWIETL_OSOB;     if( max > iloscElementow ) max = iloscElementow;          for( int i = wyswietlOdElementu; i < max; i++ )     {         if( i == zaznaczElement )         {             textbackground( 12 );             textcolor( 14 );         } else         {             textbackground( 0 );             textcolor( 7 );         }         gotoxy( 1, 3 + i - wyswietlOdElementu );         for( int j = 0; j < 60; j++ ) cout << " ";                  gotoxy( 1, wherey() );         cout <<( i + 1 );         gotoxy( 10, wherey() );         cout << tablica[ i ].imie;         gotoxy( 30, wherey() );         cout << tablica[ i ].nazwisko;     }     return; } void WyswietlDaneOsoby( OsobaST osoba ) {     clrscr();     cout << "Imie wybranej osoby to: " << osoba.imie << endl;     cout << "Nazwisko wybranej osoby to: " << osoba.nazwisko << endl;     cout << "Telefon kontaktowy do tej osoby to: " << osoba.telefon << endl;     cout << endl;     cout << "Nacisnij dowolny klawisz aby powrocic do listy osob." << endl;     getch();     return; } void KasujOsobe( OsobaST tablica[], int & iloscElementow, int indeksDoSkasowania ) {     if( iloscElementow > 0 )     {         int minx = 20;         int miny = 11;         int maxx = 80 -( minx - 1 );         int maxy = 25 -( miny - 1 );         textcolor( 15 );         textbackground( 1 );         for( int y = miny; y <= maxy; y++ )         {             gotoxy( minx, y );             for( int x = minx; x <= maxx; x++ ) cout << " ";                      }         gotoxy( minx + 1, miny );         textcolor( 15 );         cout << "Imie: ";         textcolor( 14 );         cout << tablica[ indeksDoSkasowania ].imie;                  gotoxy( minx + 1, miny + 1 );         textcolor( 15 );         cout << "Nazwisko: ";         textcolor( 14 );         cout << tablica[ indeksDoSkasowania ].nazwisko;                  gotoxy( minx + 1, miny + 2 );         textcolor( 15 );         cout << "Telefon: ";         textcolor( 14 );         cout << tablica[ indeksDoSkasowania ].telefon;                  gotoxy( minx + 1, maxy );         textcolor( 15 );         cout << "Czy chcesz usunac ten wpis? (T/N)";                  unsigned char tOdpowiedz = 0;         do         {             tOdpowiedz = getch();             if( tOdpowiedz == 224 )              {                 getch();                 tOdpowiedz = 0;             }         } while(( tOdpowiedz != 't' ) &&( tOdpowiedz != 'T' ) &&( tOdpowiedz != 'N' ) &&( tOdpowiedz != 'n' ) );                  if(( tOdpowiedz == 't' ) ||( tOdpowiedz == 'T' ) )         {             for( int i = indeksDoSkasowania + 1; i < iloscElementow; i++ ) tablica[ i - 1 ] = tablica[ i ];                          iloscElementow -= 1;         }     }     return; } void EdytujTekst( string & fTekst ) {     string tNowy;     getline( cin, tNowy );     if( tNowy.length() == 0 )     {         cout << "Nie wprowadzono zmian!" << endl;     } else     {         fTekst = tNowy;         cout << "Wprowadzono zmiany!" << endl;     } } void EdytujDaneOsoby( OsobaST & fOsoba ) {     clrscr();     cout << "Pole, ktore zostawisz puste nie zostanie zmienione." << endl;     cout << "Podaj nowe imie (stare: \"" << fOsoba.imie << "\"): ";     EdytujTekst( fOsoba.imie );     cout << "Podaj nowe nazwisko (stare: \"" << fOsoba.nazwisko << "\"): ";     EdytujTekst( fOsoba.nazwisko );     cout << "Podaj nowy telefon (stary: \"" << fOsoba.telefon << "\"): ";     EdytujTekst( fOsoba.telefon );     return; } //////////////////to bylo w kursie ////////////////////////////////////////////// Mi kompilator znajduje bledy w ddt::console i nie mogfe ruszyc :/ Prosze o pomoc:)  | 
 | 
DejaVu  | 
» 2008-10-16 21:33:40  | 
 | 
wojtas1993aaa Temat założony przez niniejszego użytkownika  | 
» 2008-10-16 21:37:38 Cos nie bardzo dziala:/  | 
 | 
DejaVu  | 
» 2008-10-16 21:39:02 Pisz pełnymi zdaniami i opisuj dokładniej, bo na takie stwierdzenia nie jestem w stanie w żaden sposób zareagować.  | 
 | 
lynx  | 
» 2008-10-16 21:40:13 To może spróbuj jeszcze raz pobrać console.ddt.  | 
 | 
wojtas1993aaa Temat założony przez niniejszego użytkownika  | 
» 2008-10-16 21:41:12 ok  | 
 | 
|  « 1 »  2 |