Anonymní profil tomas – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil tomas – Programujte.comAnonymní profil tomas – Programujte.com

 

Příspěvky odeslané z IP adresy 195.168.209.–

jeremy2001
C / C++ › Problem pri praci s SDL graf…
16. 12. 2016   #214077

Dobry den, v programe mam riadok:
screen = SDL_SetVideoMode(800, 600, 32, SDL_HWSURFACE|SDL_DOUBLEBUF);
Prekladac mi vyhodi chybu: "[Error] 'SDL_HWSURFACE' was not declared in this scope", vedel by niekto poradit co s tym ? Dakujem.

.NET › Dynamické vytvoření PictureB…
9. 1. 2012   #152132

#17 LukoSS
To je pravda len mne na tom nesedí to, že to "Make picture" je vidno viackrát a navyše na pravej strane ich je viac ako v tom ľavom obrázku (možno je to len orezané na fixný počet riadkov) takže pokiaľ mu tie volania MakePicture dokončili predtým úspešne a obrázky videl (ak tie predtým vytvorilo) tak by to mohlo zlyhať práve na súbore. Nenapísal však či mu tie predchádzajúce MakePicture aj nejaké obrázky vytvorilo alebo mu tá funkcia "nefunguje" vôbec. (Funkcia funguje, tiež som to odskúšal a ide to bez problémov)

.NET › Dynamické vytvoření PictureB…
9. 1. 2012   #152127

#15 LukoSS
Pokiaľ tú chybu niekde zachytáva a náhodou to prehliadne alebo ak má handler na unhandled exception...

.NET › Dynamické vytvoření PictureB…
9. 1. 2012   #152124

Skontroluj:

  1. či sa ten kód vôbec zavolá
  2. či je cesta k obrázku správna
  3. či nenastavuješ pozíciu obrázku mimo plochu formulára
  4. či kód zbehne až k tomuto riadku: UO.Print("Make Picture");

 Tento kód:

this.PicBox.BringToFront();

by si ale v každom prípade mal mať pred riadkom UO.Print("Make Picture"); pretože pokiaľ by si mal na tom mieste napr. Panel, obrázok by sa vytvoril ale pod tým panelom, čiže by si ho ani nevidel.

Ako často voláš tú funkciu MakePicture ?

.NET › Dynamické vytvoření PictureB…
5. 1. 2012   #152001

Skús toto:

this.PicBox.BringToFront();

(pridaj to na koniec funkcie za "this.Controls.Add(this.PicBox);")

MySQL › MySQL zabezpečenie
10. 8. 2010   #132421

Zdravím,
potreboval by som súrne poradiť ohľadom bezpečnosti v MySQL. Pracujem na klientovi, ktorí sa spája so vzdialeným MySQL serverom. Dilema, ktorú potrebujem vyriešiť (objasniť), sa skladá z týchto dvoch problémov:
[seznam]1. Ako čo najlepšie zabezpečiť, aby sa k databáze dostal len ten človek, ktorý má na to právo a dokáže sa overiť (samozrejme prihlasovacie údaje a minimálne doména, z ktorej môže pristúpiť)
2. SSL, je možné dosiahnuť bezpečnosť tak, aby MySQL prijala iba užívateľa so špecifickým certifikátom[/seznam]
Máte s používaním zabezpečeného MySQL skúsenosti? Prioritou je aby sa na databázu nemohol pripojiť nikto iný než ten, komu to dovolím.
Vopred ďakujem.

C / C++ › USB
12. 5. 2010   #128824

Ja mám dostatok špecifikácií a príkladov, od Beyond Logic cez MSDN po samotné WDK, ale nemám čas si to všetko čítať. Myslím, že keby sa našiel niekto, kto to ovláda, tak by som tomu pochopil rýchlejšie. Som ochotný platiť tomu človeku, ktorý by ma to učil.

C / C++ › USB
11. 5. 2010   #128781

Buďto programovanie USB ovládača (KM) alebo nejakej klientskej aplikácie kominukujúcej s týmto ovládačom.

C / C++ › USB
10. 5. 2010   #128679

Zdravíčko,
ak sa tu nájde niekto, kto má skúsenosti s programovaním USB, mohol by sa mi ozvať? Potrebujem súrne pomôcť.
Vopred ďakujem.

C / C++ › CreateFile vracia ERROR_FILE…
11. 3. 2010   #125162

Zdravím,
mám taký problém pri otváraní spojenia s webkou.
Pomocou SetupApi funkcí som si zistil cestu interface cestu k svojej webke: \\?\usb#vid_03f0&pid_5d11&mi_00#6&aad3e6&0&0000#{6bdd1fc6-810f-11d0-bec7-08002be2092f}
Podľa dokumentácie na MSDN som predpokladal, že ak použijem túto cestu vo funkcii CreateFile, tak sa mi podarí komunikovať s tou webkamerou. Avšak pri použití:



CreateFileA(detInfo->DevicePath,GENERIC_READ,FILE_SHARE_READ,0,CREATE_ALWAYS,FILE_FLAG_OVERLAPPED,0);

vznikne chyba "2": ERROR_FILE_NOT_FOUND

Kde je chyba?

Assembler › assembler 86
18. 6. 2009   #110712

asi naozaj budes fakt jeden z mala ludi co asm rozumie :-) lebo ja stale, ked si uz myslim ze to mam, tak stale najdem nieco nove, co by tam nemalo byt. presne ako teraz, nech robim co robim, furt sa mi zda, ze to tam pocita aj veci co nema, tak uz fakt neviem. uz mam z toho hlavu ako slon a niekedy rozmyslam nad tym, ci nehodim notebook o zem :-)) ale to by asi tomu moc nepomohlo, vsak? :-))))))))))))

Assembler › assembler 86
18. 6. 2009   #110696

To o-lox : tak dakujem, ale ako to myslis? presne tak som nad tym rozmyslal aj ja, ale stale tam boli nejake chyby :-(( uz neviem fakt ako dalej, normalne mam z toto nervy : -))

Assembler › assembler 86
17. 6. 2009   #110667

...mozme sa dohodnut na nejakej financnej odmene, ak niekto pomoze.

Assembler › assembler 86
12. 6. 2009   #110452

Zdravim, mam problem s jednym programom, nevie niekto pomoct?

Zadanie: Načítajte z klávesnice reťazec znakov ukončený znakom konca riadku. Slová vo vstupe sú oddelené najmenej jedným znakom medzera. Uvažujte aj prvé, resp. posledné slovo vstupu. Určte počet slov, v ktorých je počet výskytov veľkých písmen dvojnásobkom počtu výskytov malých písmen. Počet vytlačte šestnástkovo.

Su v tom nejake chyby, na vystupe tam zapocivava aj veci ktore nema, napriklad medzery.





; ############################################################
; ##### ZADANIE c.XXX (c) --= Xxxxxxx Xxxxx =-- 2oo9 #####
; ############################################################
; --------------------------------------------------------------------------------------------

.model small
.stack 100h

; --------------------------------------------------------------------------------------------
; --------------------------------------------------------------------------------------------
; ### data ###

.data
str1 DB "Zadaj retazec: ",‘$‘
str2 DB "Pocet vyhovujucich slov je ",‘$‘
str3 DB "(c) --= Xxxxxxx Xxxxx =-- 2oo3",‘$‘
str4 DB "Zadanie c.XXX - Assembler",‘$‘
buffer DB 201 dup(200)

; --------------------------------------------------------------------------------------------
; --------------------------------------------------------------------------------------------
; ### code ###

.code

; --------------------------------------------------------------------------------------------
; ### procedury ###


; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## getStr
; # - nacita retazec z klavesnice ukonceny znakom '\n' a ulozi ho do buffera
; -----------------

getStr proc near
mov ah,01h ; vstup z klavesnice
getLoop: int 21h
cmp al,0dh ; testujeme koncovy znak (\n)
je getEnd ; ak bol, tak koniec nacitavania
mov [bx],al ; inak ulozime znak do buffera
inc bx ; BX nastavime na dalsi znak
jmp getLoop ; nacitaj dalsi znak
getEnd: mov byte ptr [bx],‘$‘ ; CR skonvertujem na '$'
ret
getStr endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## putStr
; # - vypise retazec na ktory ukazuje BX a je ukonceny znakom '0'
; -----------------

putStr proc near
mov ah,2h ; zobraz znak
nextChar: cmp byte ptr [bx],‘$‘ ; testujeme koncovy znak
je foundEnd ; ak bol, tak koniec
mov dl,[bx] ; inak ho vypiseme
int 21h
inc bx ; BX nastavime na dalsi znak
jmp nextChar ; vypis dalsieho znaku
foundEnd: ret
putStr endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## newLine
; # - vypise znak CR a LF (odriadkuje)
; -----------------

newLine proc near
mov ah,02h ; zobraz znak
mov dl,0dh ; CR
int 21h
mov dl,0ah ; LF
int 21h
ret
newLine endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## testChar
; # - zisti ci je znak [bx] male/velke pismeno, obsluzi pocitadla znakov
; # CL = pocet malych pismen, CH = pocet velkych pismen
; -----------------

testChar proc near

; +++++++++ rozoznavanie malych/velkych pismen +++++++++

cmp byte ptr [bx],'A' ; kontrolujeme velke pismeno-dolna hranica
jl Tend ; <'A' (nebude to pismeno)
cmp byte ptr [bx],'Z' ; kontrolujeme velke pismeno-horna hranica
jle Tinc1 ; <='Z' (je to velke pismeno)

cmp byte ptr [bx],'a' ; kontrolujeme male pismeno- dolna hranica
jl Tend ; <'a' (nebude to male pismeno)
cmp byte ptr [bx],'z' ; kontrolujeme male pismeno- horna hranica
jle Tinc2 ; <='z' (je to male pismeno)

jmp tend ; >'Z' (nieje to male pismeno)

; +++++++++ pocitanie malych/velkych +++++++++

Tinc1: inc ch ; velke pismeno
jmp tend

Tinc2: inc cl ; male pismeno
jmp tend

Tend: ret
testChar endp


; --------------------------------------------------------------------------------------------
; --------------------------------------------------------------------------------------------
; ### source ###

start:
mov ax,@DATA
mov ds,ax

mov bx,offset str4 ; nazov programu
call putStr
call newLine
call newLine


; +++++++++ vstup od pouzivatela +++++++++

mov bx,offset str1 ; vyzva na zadanie retazca
call putStr
mov bx,offset buffer ; nacitame retazec do 'buffer'
call getStr
call newLine ; odriadkujem


; +++++++++ analyza zadanych udajov +++++++++

mov bx,offset buffer ; prvy znak
mov cx,0 ; znulujeme pocitadla znakov
mov dx,0
push dx ; odlozime DX (pocitadlo vyhovujucich slov)

nextCh: cmp byte ptr [bx],‘$‘ ; testujeme koncovy znak
je space ; ak bol, tak kontrola posledneho slova a koniec
cmp byte ptr [bx],' ' ; testujeme medzeru = zaciatok/koniec slova
je space

call testChar

inc bx ; dalsi znak
jmp nextCh


; +++++++++ zaciatok/koniec slova +++++++++

space: sub ch,cl ; (pocet velkych) - 2*(pocet malych)
sub ch,cl ; ak vyhovuje, vysledok je 0 (CX=0)

cmp ch,0 ; testujeme ci je spravny pocet malych/velkych
jne clWend ; ak nie, tak skok

pop dx ; obnovime pocitadlo spravnych slov
inc dx ; aktualne slovo vyhovovalo
push dx ; odlozime spat

clWend: cmp byte ptr [bx],'$' ; testujeme koncovy znak
je finish ; ak bol, tak konec analyzy slov

mov cx,0 ; znulujeme pocitadlo znakov
inc bx ; dalsi znak
jmp nextCh

; +++++++++ vypisanie vysledku v sestnastkovej sustave +++++++++

finish: mov bx,offset str2 ; vypis o vysledkoch
call putStr

pop dx ; obnovime DX (pocitadlo vyhovujucich slov)
mov dh,dl ; do DH odlozime pocitadlo (DL potrebujeme na vystup)

rol dl,2 ; najvyssi rad
and dl,00000011b
add dl,30h ; prevedieme na ASCII kod
int 21h

mov dl,dh ; stredny rad
ror dl,3
and dl,00000111b
add dl,30h ; prevedieme na ASCII kod
int 21h

mov dl,dh ; najnizsi rad
and dl,00000111b
add dl,30h ; prevedieme na ASCII kod
int 21h


; +++++++++ copyright a koniec programu +++++++++

call newLine
call newLine
mov bx,offset str3 ; vypis copyrightu
call putStr

mov ax,4c00h ; ukoncenie programu (0=koniec bez chyby)
int 21h

end start

; --------------------------------------------------------------------------------------------

Assembler › Assembler, zmenit vystup
13. 5. 2009   #101065

To o-lox : Joj, chlapi. To je hrozne s vami, nepomozete a nepomoze :))

C / C++ › hladanie podla ev. cisla
13. 5. 2009   #101059

To o-lox : ahoj o-lox. no presne tak nejak som to robila aj ja, neviem ci som uz blba alebo co, ale furt to nejde. Joj. :smile10:

C / C++ › hladanie podla ev. cisla
13. 5. 2009   #101058

no vidis...sama neviem ako je to mozne...aj ked sa priznam ze mi s tym trosku pomahal kamarat...no na toto sme vtedy zabudli...

Assembler › Assembler, zmenit vystup
13. 5. 2009   #101053

no ja neviem ci som blba, alebo to je tym ze som blondina :)) ale mne to stale nejak nejde...neskusis mi to napisat cely program ako to ma byt? :))

Assembler › Assembler, zmenit vystup
12. 5. 2009   #101013


Nevie niekto ako by som zmenila tento program...stale mi to vypisuje vysledok osmickovo...ale potrebujem aby to bolo sestnastkovo...neviete to niekto zmenit?




.model small
.stack 100h

; -----------------------------------------------------------------------------------------------
; -----------------------------------------------------------------------------------------------
; ### data ###

.data
str1 DB "Zadaj retazec: ",'$'
str2 DB "Pocet vyhovujucich slov je ",'$'
str3 DB "(c) --= XXXXXXXXX =-- 2oo9",'$'
str4 DB "Zadanie c.308 - Strojovo orientovane jazyky",'$'
buffer DB 201 dup(200)

; -----------------------------------------------------------------------------------------------
; -----------------------------------------------------------------------------------------------
; ### code ###

.code

; -----------------------------------------------------------------------------------------------
; ### procedury ###


; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## getStr
; # - nacita retazec z klavesnice ukonceny znakom '\n' a ulozi ho do buffera
; -----------------

getStr proc near
mov ah,01h ; vstup z klavesnice
getLoop: int 21h
cmp al,0dh ; testujeme koncovy znak (\n)
je getEnd ; ak bol, tak koniec nacitavania
mov [bx],al ; inak ulozime znak do buffera
inc bx ; BX nastavime na dalsi znak
jmp getLoop ; nacitaj dalsi znak
getEnd: mov byte ptr [bx],'$' ; CR skonvertujem na '$'
ret
getStr endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## putStr
; # - vypise retazec na ktory ukazuje BX a je ukonceny znakom '$'
; -----------------

putStr proc near
mov ah,2h ; zobraz znak
nextChar: cmp byte ptr [bx],'$' ; testujeme koncovy znak
je foundEnd ; ak bol, tak koniec
mov dl,[bx] ; inak ho vypiseme
int 21h
inc bx ; BX nastavime na dalsi znak
jmp nextChar ; vypis dalsieho znaku
foundEnd: ret
putStr endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## newLine
; # - vypise znak CR a LF (odriadkuje)
; -----------------

newLine proc near
mov ah,02h ; zobraz znak
mov dl,0dh ; CR
int 21h
mov dl,0ah ; LF
int 21h
ret
newLine endp

; ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
; ## testChar
; # - zisti ci je znak [bx] male/velke pismeno, obsluzi pocitadla znakov
; # CL = pocet malych pismen, CH = pocet velkych pismen
; -----------------

testChar proc near

; +++++++++ rozoznavanie malych/velkych pismen +++++++++

cmp byte ptr [bx],'A' ; kontrolujeme velke pismeno - dolna hranica
jl Tend ; <'A' (nebude to pismeno)
cmp byte ptr [bx],'Z' ; kontrolujeme velke pismeno - horna hranica
jle Tinc1 ; <='Z' (je to velke pismeno)

cmp byte ptr [bx],'a' ; kontrolujeme male pismeno - dolna hranica
jl Tend ; <'a' (nebude to male pismeno)
cmp byte ptr [bx],'z' ; kontrolujeme male pismeno - horna hranica
jle Tinc2 ; <='z' (je to male pismeno)

jmp tend ; >'Z' (nieje to male pismeno)

; +++++++++ pocitanie malych/velkych +++++++++

Tinc1: inc ch ; velke pismeno
jmp tend

Tinc2: inc cl ; male pismeno
jmp tend

Tend: ret
testChar endp


; -----------------------------------------------------------------------------------------------
; -----------------------------------------------------------------------------------------------
; ### source ###

start:
mov ax,@DATA
mov ds,ax

mov bx,offset str4 ; nazov programu
call putStr
call newLine
call newLine


; +++++++++ vstup od pouzivatela +++++++++

mov bx,offset str1 ; vyzva na zadanie retazca
call putStr
mov bx,offset buffer ; nacitame retazec do 'buffer'
call getStr
call newLine ; odriadkujem


; +++++++++ analyza zadanych udajov +++++++++

mov bx,offset buffer ; prvy znak
mov cx,0 ; znulujeme pocitadla znakov
mov dx,0
push dx ; odlozime DX (pocitadlo vyhovujucich slov)

nextCh: cmp byte ptr [bx],'$' ; testujeme koncovy znak
je space ; ak bol, tak kontrola posledneho slova a koniec
cmp byte ptr [bx],' ' ; testujeme medzeru = zaciatok/koniec slova
je space

call testChar

inc bx ; dalsi znak
jmp nextCh


; +++++++++ zaciatok/koniec slova +++++++++

space: sub cl,ch ; (pocet malych) - 2*(pocet velkych)
sub cl,ch ; ak vyhovuje, vysledok je 0 (CX=0)

cmp cl,0 ; testujeme ci je spravny pocet malych/velkych
jne chWend ; ak nie, tak skok

pop dx ; obnovime pocitadlo spravnych slov
inc dx ; aktualne slovo vyhovovalo
push dx ; odlozime spat

chWend: cmp byte ptr [bx],'$' ; testujeme koncovy znak
je finish ; ak bol, tak konec analyzy slov

mov cx,0 ; znulujeme pocitadlo znakov
inc bx ; dalsi znak
jmp nextCh


; +++++++++ vypisanie vysledku v osmickovej sustave +++++++++

finish: mov bx,offset str2 ; vypis o vysledkoch
call putStr

pop dx ; obnovime DX (pocitadlo vyhovujucich slov)
mov dh,dl ; do DH odlozime pocitadlo (DL potrebujeme na vystup)

rol dl,2 ; najvyssi rad
and dl,00000011b
add dl,30h ; prevedieme na ASCII kod
int 21h

mov dl,dh ; stredny rad
ror dl,3
and dl,00000111b
add dl,30h ; prevedieme na ASCII kod
int 21h

mov dl,dh ; najnizsi rad
and dl,00000111b
add dl,30h ; prevedieme na ASCII kod
int 21h


; +++++++++ copyright a koniec programu +++++++++

call newLine
call newLine
mov bx,offset str3 ; vypis copyrightu
call putStr

mov ax,4c00h ; ukoncenie programu (0=koniec bez chyby)
int 21h

end start

; -----------------------------------------------------------------------------------------------

C / C++ › hladanie podla ev. cisla
12. 5. 2009   #101011

zadanie je taketo...

Zostavte program pre evidenciu študentov. O každom študentovi sa budú
evidovať tieto údaje: meno, priezvisko, ročník, odbor, evidenčné číslo.
Program má umožniť pridanie študenta, odstránenie študenta, usporiadanie
podľa priezviska a vyhľadanie podľa evidenčného čísla.
Na reprezentáciu zoznamu študentov použite statické pole smerníkov a
jednotlivé položky záznamu nech majú dynamickú veľkosť. Záznamy
reprezentujte štruktúrami a zoznam nech je uložený v súbore. Použite
vlastné funkcie s parametrami.

....a vsetko ide ako ma, len to hladanie tam neviem do toho nejak dat :(

C / C++ › hladanie podla ev. cisla
12. 5. 2009   #101008

jasne ze tu neni...lebo som to dala prec, furt mi to neslo...nevies mi to spravit? ze by si to dorobil do toho?

C / C++ › hladanie podla ev. cisla
12. 5. 2009   #100960

Potrebujem poradit, ako do tohoto programu dorobim funkciu na vyhladanie podla evidencneho cisla...nevie to niekto nahodou? Mne to stale nejak nechce ist.




#include "stdio.h"
#include "malloc.h"
#include "string.h"

#define MAX_LENGTH 100
#define COUNT_ITEM 50
struct PARAM
{
char *Meno;
char *Priezvisko;
char *Rocnik;
char *Odbor;
char *Cislo;
};

struct PARAM *g_Param[COUNT_ITEM];
FILE *g_file;

void Vypis( int PocetZ )
{
int i;

for( i = 0; i < PocetZ; i++ )
{
printf( "[%d] %s\t %s\t\t %s %s %s\n", i,
g_Param[i]->Priezvisko,
g_Param[i]->Meno,
g_Param[i]->Rocnik,
g_Param[i]->Odbor,
g_Param[i]->Cislo);
}
}

void FreeMem( int UvolniP )
{
free( g_Param[UvolniP ]->Meno );
free( g_Param[UvolniP ]->Priezvisko );
free( g_Param[UvolniP ]->Rocnik );
free( g_Param[UvolniP ]->Odbor );
free( g_Param[UvolniP ]->Cislo );

free( g_Param[UvolniP ]);
}

void Pridaj( int *pPocetZ )
{
if( *pPocetZ < COUNT_ITEM )
{
g_Param[*pPocetZ] = (struct PARAM *) malloc(sizeof(struct PARAM));

g_Param[*pPocetZ]->Meno = (char*) malloc(MAX_LENGTH);
printf( "Zadaj meno : ");
scanf( "%s", g_Param[*pPocetZ]->Meno );

g_Param[*pPocetZ]->Priezvisko = (char*) malloc(MAX_LENGTH);
printf( "\nZadaj priezvisko : ");
scanf( "%s", g_Param[*pPocetZ]->Priezvisko );

g_Param[*pPocetZ]->Rocnik = (char*) malloc(MAX_LENGTH);
printf( "\nZadaj aktualny rocnik : ");
scanf( "%s", g_Param[*pPocetZ]->Rocnik );

g_Param[*pPocetZ]->Odbor = (char*) malloc(MAX_LENGTH);
printf( "\nZadaj studijny odbor : ");
scanf( "%s", g_Param[*pPocetZ]->Odbor );

g_Param[*pPocetZ]->Cislo = (char*) malloc(MAX_LENGTH);
printf( "\nZadaj evidencne cislo : ");
scanf( "%s", g_Param[*pPocetZ]->Cislo );

(*pPocetZ)++;
}
else
{
printf( "Zoznam je plny" );
}
}

void Zmaz(int *pPocetZ)
{
int i;
int UvolniP ;

Vypis( *pPocetZ );

if( *pPocetZ != 0 )
{
printf( "Zadaj cislo zaznamu ktory chces zmazat : " );
scanf( "%d", &UvolniP );

for( i = UvolniP ; i < ((*pPocetZ)-1); i++ )
{
strcpy( g_Param[i]->Meno,g_Param[i+1]->Meno);
strcpy( g_Param[i]->Priezvisko,g_Param[i+1]->Priezvisko);
strcpy( g_Param[i]->Rocnik,g_Param[i+1]->Rocnik);
strcpy( g_Param[i]->Odbor,g_Param[i+1]->Odbor);
strcpy( g_Param[i]->Cislo,g_Param[i+1]->Cislo);
}

if ((*pPocetZ)-1==0)
{
FreeMem( 0 );
}
else
{
FreeMem( (*pPocetZ)-1 );
}

(*pPocetZ)--;
}
else
{
printf( "!!! Prazdny zoznam !!!\n" );
}
}

void Zotried(int PocetZ)
{
int i;
int j;

struct PARAM *helpParam;

for( i = 0; i < PocetZ-1; i++)
{
for( j = i+1; j < PocetZ; j++ )
{
if( strcmp( g_Param[j]->Priezvisko, g_Param[i]->Priezvisko ) < 0 )
{
helpParam = g_Param[j];
g_Param[j] = g_Param[i];
g_Param[i] = helpParam;
}
}
}
}


void Nacitaj( int *pPocetZ )
{
int nRet;
int i;

for( i = 0; i < *pPocetZ; i++ )
{
FreeMem( i );
}

*pPocetZ = 0;

g_file = fopen( "zoznam studentov.dat", "r" );
do
{
if( *pPocetZ < COUNT_ITEM )
{
g_Param[*pPocetZ] = (struct PARAM *) malloc(sizeof(struct PARAM));

g_Param[*pPocetZ]->Meno = (char*) malloc(MAX_LENGTH);
g_Param[*pPocetZ]->Priezvisko = (char*) malloc(MAX_LENGTH);
g_Param[*pPocetZ]->Rocnik = (char*) malloc(MAX_LENGTH);
g_Param[*pPocetZ]->Odbor = (char*) malloc(MAX_LENGTH);
g_Param[*pPocetZ]->Cislo = (char*) malloc(MAX_LENGTH);

nRet = fscanf( g_file, "%s\t%s\t%s\t%s\t%s\n",
g_Param[*pPocetZ]->Meno,
g_Param[*pPocetZ]->Priezvisko,
g_Param[*pPocetZ]->Rocnik,
g_Param[*pPocetZ]->Odbor,
g_Param[*pPocetZ]->Cislo);

if( nRet != EOF )
{
(*pPocetZ)++;
}
else
{
FreeMem( *pPocetZ );
// (*pPocetZ)--;
}
}
else
{
printf( "Zoznam je plny" );
break;
}
}while( nRet != EOF );

fclose( g_file );
}

void Uloz( int PocetZ )
{
int i;

g_file = fopen( "zoznam studentov.dat", "w" );
if( g_file == NULL )
{
printf("nemozem zapisat");
}
else
{
for( i = 0; i < PocetZ; i++ )
{
fprintf( g_file, "%s\t%s\t%s\t%s\t%s\n",
g_Param[i]->Meno,
g_Param[i]->Priezvisko,
g_Param[i]->Rocnik,
g_Param[i]->Odbor,
g_Param[i]->Cislo);
}

fclose( g_file );
}
}

void main()
{
char CisloO;
int PocetZ;
int i;

PocetZ = 0;

do
{
printf( "\n******************* MENU *******************\n\n" );
printf( "\t[1]. \tPridanie studenta\n");
printf( "\t[2]. \tOdstranenie studenta\n");
printf( "\t[3]. \tUsporiadanie podla priezviska\n");
printf( "\t[4]. \tHladanie podla evidencneho cisla\n");
printf( "\t[5]. \tVypis studentov\n" );
printf( "\t[6]. \tUlozenie do suboru\n");
printf( "\t[7]. \tNacitanie zo suboru\n");
printf( "\t[8]. \tUkoncenie programu\n" );
printf( "\n******************* MENU *******************\n" );
printf( "\nZadaj volbu : " );
scanf( "%s", &CisloO );
printf( "\n" );


switch( CisloO )
{
case '1': Pridaj( &PocetZ );
break;
case '2': Zmaz( &PocetZ );
break;
case '3': Zotried( PocetZ);
break;
case '4': Hladaj( PocetZ );
break;
case '5': Vypis( PocetZ );
break;
case '6': Uloz( PocetZ );
break;
case '7': Nacitaj( &PocetZ );
break;
}
}while( CisloO != '8' );

for( i = 0; i < PocetZ; i++ )
{
FreeMem( i );
}
}

Assembler › Assembler i8080
9. 5. 2009   #100769

Nazdar. Nevie niekto náhodou spraviť toto zadanie na i8080? Alebo nemá ho niekto?

Načítajte z klávesnice reťazec znakov ukončený znakom „nového riadku“. Slová vo vstupe sú oddelené najmenej jedným znakom „medzera“. Uvažujte aj prvé, resp. posledné slovo vstupu. Určte počet slov reprezentujúcich zápis osmičkového čísla (začína znakom 0, napr. 015) podľa syntaxu jazyka C. Počet (0-255)vytlačte osmičkovo.

Môžeme sa dohodnúť aj na nejakej finančnej odmene, ak to má niekto spravené už, ale by to chcel urobiť, ak sa nudí :)

tomas
PHP › problem s php strankovanim v…
21. 2. 2009   #95658

To KIIV : teda skor takto

$query="SELECT * FROM kniha_navstev order by datum DESC limit $pociatok, $limit";   

$result=mysql_query($query, $link) or die ("Spojenie s databázou bolo neúspešné");
$num=mysql_num_rows($result);

$ctrl = $_GET['ctrl'];
$strana = $_GET['strana'];
$limit=5;
$celkovy_pocet=$num;
$pocet_stran=ceil($celkovy_pocet/$limit);
$pociatok=($strana*$limit)-$limit;
if ($ctrl1<>1)
{
$strana=1;
}//endif

tomas
PHP › problem s php strankovanim v…
21. 2. 2009   #95656

To KIIV : doplnil som ale stale pise ze bolo neuspesne, nieco sa mu nepozdava stale
$query="SELECT * FROM kniha_navstev order by datum DESC limit $pociatok, $limit";
$result=mysql_query($query, $link) or die ("Spojenie s databázou bolo neúspešné");
$num=mysql_num_rows($result);
//$ctrl je pomocná premenná
$ctrl = $_GET['ctrl'];
$strana = $_GET['strana'];

if ($ctrl1<>1)
{
$strana=1;
}//endif
$limit=5;
$celkovy_pocet=$num;
$pocet_stran=ceil($celkovy_pocet/$limit);
$pociatok=($strana*$limit)-$limit;

Anonymní uživatel
PHP › problem s php strankovanim v…
21. 2. 2009   #95650

To KIIV : $query="SELECT * FROM kniha_navstev order by datum DESC limit $pociatok, $limit";
$result=mysql_query($query, $link) or die ("Spojenie s databázou bolo neúspešné");
$num=mysql_num_rows($result);
//$ctrl je pomocná premenná skusil som to takto ale pise ze spojenie bolo neuspesne

Anonymní uživatel
PHP › problem s php strankovanim v…
21. 2. 2009   #95645

To KIIV : neviem ako by mal ten sql dotaz vyzerat a do ktorej casti ho zakomponovat

tomas
PHP › problem s php strankovanim v…
21. 2. 2009   #95626

aha dik v tom si mi pomohol echo "<a href=\"kniha_navstev.php?ctrl=1&strana=",$strana+1,"\">nasledujúca strana</a>";
ale teraz ked prepnem na stranku napr. 2 stale mi zobrazuje prvu a ani limit 5 prispevkov na stranku nefunguje...

tomas
PHP › problem s php strankovanim v…
21. 2. 2009   #95624

To Anonymní uživatel : nevedel by si mi pomoct neviem to spolu spojit

tomas
PHP › problem s php strankovanim v…
21. 2. 2009   #95622

databaza ide aj pridavanie prispevkov a ked pridam 5 prispevkov na stranku dalej sa vytvori odkaz na dalsiu ale prispevky stale pridava na prvu a po kliknuti mi ukaze len Error 404 - Not Found
The requested URL /index.php was not found on this server.
Požadovaná stránka /index.php nebyla nalezena.
stranku si mozete pozriet http://www.infinity.yw.sk/kniha_navstev.php
Kód:
<?
$dbServer = " ";
$dbUser = " ";
$dbPassword = " ";
$dbName = " ";
$link=mysql_pconnect ($dbServer,$dbUser,$dbPassword) or die ("Spojenie neúspešné.");
$db = mysql_select_db($dbName, $link) or die ("Nepodarilo sa otvoriť databázu.");


$query="SELECT * FROM kniha_navstev ORDER BY datum";
$result=mysql_query($query, $link) or die ("Spojenie s databázou bolo neúspešné");
$num=mysql_num_rows($result);
//$ctrl je pomocná premenná

if ($ctrl1<>1)
{
$strana=1;
}//endif
$limit=5;
$celkovy_pocet=$num;
$pocet_stran=ceil($celkovy_pocet/$limit);
$pociatok=($strana*$limit)-$limit;

for ($i=1; $i<=$pocet_stran; $i++)
{
if ($i<>$strana)
{
echo "<a href=\"index.php?ctrl=1&strana=",$i,"\">",$i,"</a> | ";
}
else
{
echo "<font color=\"#FF0000\">",$i,"</font> | ";
}//endif
}//endfor

if ($strana<>$pocet_stran)
{
echo "<a href=\"index.php?ctrl=1&strana=",$strana+1,"\">nasledujúca strana</a>";
}//endif
echo "</p>";
// -- Připojení k databázi a správné nastavení češtiny --

// Připojení k databázi.
$db_spojenie = mysqli_connect
('server', 'user', 'heslo', 'tabulka');
// Otestování, zda se připojení podařilo.
if (!$db_spojenie)
{
echo 'Připojení se nepodařilo, sorry';
echo '';
echo 'Popis chyby: ', mysqli_connect_error();
exit();
}

// Správné nastavení češtiny.
$objekt_vysledku = mysqli_query($db_spojenie, "SET NAMES 'cp1250'");
if (!$objekt_vysledku)
{
echo 'Poslání SQL příkazu se nepodařilo, sorry';
echo '';
echo 'Popis chyby: ', mysqli_error($db_spojenie);
exit();
}


// -- Vlož nový zápis, pokud byl odeslán formulářem --

// Test, jestli přišla data z formuláře.
if (isset($_POST['sprava']))
{
// Vytvoření SQL příkazu typu INSERT.
$sql_prikaz =
"INSERT INTO kniha_navstev(datum,meno,email,zapis) "
."VALUES(NOW(),'"
.mysqli_real_escape_string($db_spojenie,$_POST['meno'])
."','"
.mysqli_real_escape_string($db_spojenie,$_POST['email'])
."','"
.mysqli_real_escape_string($db_spojenie,$_POST['sprava'])
."')"
;

// Zaslání SQL příkazu do databáze.
$objekt_vysledku = mysqli_query($db_spojenie, $sql_prikaz);

if (!$objekt_vysledku)
{
echo 'Poslání SQL příkazu se nepodařilo, sorry';
echo '';
echo 'Popis chyby: ', mysqli_error($db_spojenie);
exit();
}
echo 'Nový zápis do knihy návštev pridaný.';
}


// -- Vypiš všechny zápisy v knize návštěv --

// Zaslání SQL příkazu do databáze.
$objekt_vysledku = mysqli_query($db_spojenie,
'SELECT * FROM kniha_navstev order by datum DESC');
if (!$objekt_vysledku)
{
echo 'Poslání SQL příkazu se nepodařilo, sorry';
echo '';
echo 'Popis chyby: ', mysqli_error($db_spojenie);
exit();
}

// Zobrazení všech vrácených dat.
while ($riadok = mysqli_fetch_array($objekt_vysledku))
{
echo '<hr />';
echo 'Dátum a čas: ',$riadok['datum'],'';
echo 'Napísal: ',$riadok['meno'],' (',$riadok['email'],')';
echo 'Zápis: ',$riadok['zapis'],'';
echo '';
}
?>
</body>
</html>


<form name="kniha" action="" method="post">
<b>Meno:</b>
<input name="meno" size="40">

<b>Mail:</b>
<input name="email" size="40">

<b>Správa:</b>
<textarea name="sprava" rows="5" cols="30"></textarea>

<input type="submit" value="Odoslať správu">
</form>
</body>
</html>

CSS › Aký program používate na CSS…
22. 7. 2008   #80557

Ja osobne používam TopStyleLife 3.5

Standardy W3C, validita a doctype › rozdielne zobrazenie CSS lay…
15. 7. 2008   #79463

To bukaj : Máš pravdu vyrieším to radšej sám.

Standardy W3C, validita a doctype › rozdielne zobrazenie CSS lay…
14. 7. 2008   #79455

Explorery mi zobrazí stranku dobre ale ked ju dam zobrazit v opere je ku koncu posunuta alebo neukazuje všetky layouty

Thew
C / C++ › Štandardná DLL v MSVC++ .Net
13. 6. 2008   #76737

To Quiark :
napísal som "...by som mohol používať štandardné...", kladiem dôraz na POUŽÍVAŤ, nie tvoriť, práve to že mám zopár svojich C++ knižníc ale akosi v MSVC++ štrajkujú...

C / C++ › Štandardná DLL v MSVC++ .Net
31. 5. 2008   #75535

Zdravím,
chcel by som sa opýtať, akým spôsobom by som mohol používať štandardné (myslím tým také, ktoré nevyžadujú .Net) DLL v programe, ktorý je tvorený v MSVC++ .Net. Samozrejme bez použitia LoadLibrary a pod.

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý