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

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

 

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

Jerry
C / C++ › Binární hledání
14. 9. 2018   #381674

#78 MilanL
jo já vim GPU taky ... oni to tam dodělali od roku 2015 ...

Jerry
C / C++ › Binární hledání
14. 9. 2018   #381670

#75 Jerry
a GPU taky :)

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381655

#69 Jerry
ještš taková drobnost, ten příklad C++/CLI co sem ti poslal tak ten samozřejmě umí i dynamicky zoomovat na určitou část a děláš to myší a je to stejný jako když kreslíš třeba v autocadu, ten zdroják je prostě delší no má ai 60000 řádků v C++ ale dost těžko ho asi zkrátíš.

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381654

#68 Kevil
no zdroják jsem ti poslal ale je to kousek zdrojáku z celýho projektu kterej má 300Mega a je to v MS VS 2008 SP1 C++/CLI pod Windows 7 x32 a bez AERA !!!!

je to přesně to co děláš, rozměry mřížky jsou max. 32000x32000 buněk a zakresluje to úsečky.

bohužel naučit programovat se asi budeš muset sám

zkus to zapsání těch 100mega úseček do grafický paměti pomocí DirectX2D

ten příklad je tady

https://stackoverflow.com/questions/12868543/how-to-use-drawline-in-c-directx-graphics

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381651

#66 Jerry
ještě taková drobnost, ten zdroják ti asi nebude v MS VS 2017 fungovat protože tam nebude VisualDesigner, potřebuješ MS VS 2008.

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381649

#64 Kevil
Já bejt tebou zkusil bych to DirectX12 a Direct2D

https://stackoverflow.com/questions/12868543/how-to-use-drawline-in-c-directx-graphics

protože to co mám já umí kreslit úsečky jen v mřížce o velikosti 32000x32000 těch úseček muže bejt klidně 100Milionu to je fuk prostě co se vejde do paměti

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381647

#64 Kevil
Ano chybí :)

jestli to chceš přeložit tak potřebuješ CELEJ !!! zdroják a všechno kolem a to má asi 300MB

opravdu to chceš ? Chceš se v tom patlat ?

tady je zbtek

https://uloz.to/!IPw5VEKFKDaH/common-libs-zip

zdroják se schovává do adresáře c:\ROBOMAP source code\

a jestli to chceš spustit musíš si nainstalovat kompletní (RS)

https://uloz.to/!p3nEyF5U8/robomap-x32-zip

nebo bych ti doporučoval stáhnout si VMWare Image kde je to připravený a stačí tam nakopírovat zdroják

https://uloz.to/!bUMLMxyG5Bic/windows-7-x32-sp1-ultimate-robomap-vmware12-rar

ale si blázen :)

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381640

#59 Kevil
tady máš zdroják https://uloz.to/!cj3DQ1DLeyzK/robomap-zip

k tomu co děláš ale je to v C++/CLI pro MS VS 2008 SP1.

všechno co se snažíš udělat je ve funkcích

      g_ClassReg->MapViewer2D->CreateSearchingGrid();
      g_ClassReg->MapViewer2D->GridWallsAssociation_All();

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381639

#59 Kevil

"zkusit najít boje které prošli oblastmi" znamená zjistit, jestli se úsečka nebo její část nachází v daném obdélníku  a úsečka se vytvoří ze dvou po sobě jdoucích pozic jedné boje. Takže ideální je rozdělit onen prostor 180000x360000 na menší čtverce třeba 18000x36000 čtverců a pak pro každý čtverec zjistit, která úsečka ho prochází a procházející část úsečky k danému čtverci přidružit. Takže vlastně úsečky trajektorie bojí rozkouskuješ podle toho jak prochází jednotlivými čtverci. Takže když spočítám LBA nějakýho čtverce v rastru 18000x36000 třeba 256986 tak pak musim zjistit, jestli v tomhle čtverci je nějaká úsečka a přidružit ji k němu a až tohle všechno budu mít tak pak mužu začít vykreslovat podle toho jaké čtverce vidím. jde to rychle.

jestli chceš zkusit ten DirecxX tak tady je příklad na to Direct2D

https://stackoverflow.com/questions/12868543/how-to-use-drawline-in-c-directx-graphics

je to funkce
VOID DrawLine(HWND hwnd)

a je to DirectX11/12 to poznáš podle použití D2D1CreateFactory  DirectX12 Development Kit si budeš muset nainstalovat.

 

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381634

#56 MilanL
pesně to co děláte sem už kdysi dávno programoval. ta oblast nebyla tak velká tedy 180000x360000 čtverců, byla jen 32000x32000, ale používal jsem tam adaptivní dělení prostoru po čtvercích a Bresenhamův algoritmus na detekci, kde se jednotlivé čáry nachází. jestli si to chcete zkusit, tak vám to někam nahraju.

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381630

#54 Jerry
https://stackoverflow.com/questions/12868543/how-to-use-drawline-in-c-directx-graphics

Jerry
C / C++ › Binární hledání
13. 9. 2018   #381629

#53 Kevil
já vim já jenom řikám že bys moch všech těch 35 mega dat úseček narvat do grafický karty a zobrazit si jenom výřez chápeš jo ? Protože u zobrazení zadáváš XminYmin/XmaxYmax okna co chceš zobrazit. Jestli ti de jenom o zobrazení. Protože je to jednodušší:

https://docs.microsoft.com/en-us/windows/desktop/direct2d/direct2d-quickstart

https://stackoverflow.com/questions/2603276/how-do-i-clear-a-direct2d-render-target-to-fully-transparent

grafický kartě je to jedno ona ty úsečky co nejsou vidět ořeže sama a dělá to hardwarově.

Jerry
Assembler › 10-bitové dvojkové číslo (om…
11. 5. 2017   #215996

#1 hlucheucho
hele a víte že existujou aj integrovaný budiče LED ? třeba M5450 ?

http://www.st.com/content/ccc/resource/technical/document/datasheet/e1/1b/1d/f7/3c/33/40/6f/CD00020632.pdf/files/CD00020632.pdf/jcr:content/translations/en.CD00020632.pdf

Jerry
C / C++ › Počet písmen ve slovech v te…
11. 5. 2017   #215978

#1 Tonda
tam ti ale někdo např. pan učitel musel dát nějakej návod jak se např. otevírá soubor (iostream) pomocí knihoven pro C++ a jak se čte a jaké jsou funkce s řetězci apod. musíš to někde mít napsaný v sešitě. takhle to je moc divný .. nezdá se mi to ..

musíš si oteřít soubor, číst znak po znaku a pak identifikovat daný znak např. podle ascii kodu (0..255)

https://msdn.microsoft.com/cs-cz/library/k0t5wee3.aspx

a pak udělat jeden velkej switch-case kterej ti bude přičítat jedničku hodnotě v poli, kde použiješ jen 26 prvku pole t.j. znaky a..z, A..Z, u jednotlivejch case se malý 'a' a velký   'A' zapíšou za sebe tedy case 'a', 'A' 

tady to  máš napsaný:

https://msdn.microsoft.com/cs-cz/library/k0t5wee3.aspx

pak už jenom procházíš to pole a zapíšeš do souboru od nejpočetnějšího po nejmíň početný prvek...

Jerry
Assembler › 10-bitové dvojkové číslo (om…
11. 5. 2017   #215977

#1 hlucheucho

; Content of "U_b" before, during & after the conversion:
; (L/H stand for LOW/HIGH - Nibble)
;
;  positive argument:
;  adr  in          out
;------------------------------
;  +5         L0    D(100,000)
;  +4         H0    D(10,000)
;  +3   A3    L1    D(1,000)
;  +2   A2    H1    D(100)
;  +1   A1    L2    D(10)
; &U_b  A0          D(1)

;  negative argument:
;  adr  in          out
;------------------------------
;  +5               '-'
;  +4         L0    D(10,000)
;  +3   A3    H0    D(1,000)
;  +2   A2    L1    D(100)
;  +1   A1    H1    D(10)
; &U_b  A0    L2    D(1)

;  Content of the registers during conversion:
;  (main loop, "LOOP_DIGIT")
;
;  R0 ... "Nibble" Pointer
;  R1 ... "Digit" Pointer
;  R2 ... "Nibble" Counter
;  R3 ... "Digit" Counter

;  positive argument:
;  R0    R1    R2    R3
;  +1    0     5     6
;  +1    +1    5     5
;  +2    +2    4     4
;  +3    +3    3     3
;  +4    +4    2     2
;  +5    +5    1     1

;  negative argument:
;  R0    R1    R2    R3
;  0     0     5     5
;  +1    +1    4     4
;  +2    +2    3     3
;  +3    +3    2     2
;  +4    +4    1     1

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

$XREF
$NOMOD51

B  DATA  0F0H
ACC   DATA  0E0H
NAME  BCD

?PR?bin2bcd?BCD      SEGMENT CODE
EXTRN DATA (U_b)
PUBLIC   bin2bcd

   RSEG  ?PR?bin2bcd?BCD
   USING 0

bin2bcd:

   MOV   A,U_b
   JNB   ACC.7,POSITIVE
   
   CLR   C                    ; negative argument
   CLR   A
   SUBB  A,U_b+3
   MOV   U_b+3,A
   CLR   A
   SUBB  A,U_b+2
   MOV   U_b+2,A
   CLR   A
   SUBB  A,U_b+1
   MOV   U_b+1,A
   CLR   A
   SUBB  A,U_b
   JNZ   ERROR             ; should be ZERO
   
   MOV   R3,#5             ;"Digit" Counter
   MOV   R1,#U_b           ;"Digit" Pointer
   MOV   R2,#5             ;"Nibble" Counter
   MOV   R0,#U_b           ;"Nibble" Pointer


   MOV   U_b+5,#0FH        ; 0x0F as '-' Character
                           ; (will be converted for
                           ;  7-seg. LCD)

   MOV   A,U_b+1           ; LSB2 LN -> 0
   MOV   U_b,A
   ANL   U_b,#0FH   

   ANL   A, #0F0H          ; should be ZERO
   JNZ   ERROR

   MOV   A,U_b+3           ; LSB0 LN -> 4
   MOV   U_b+4,A
   ANL   U_b+4,#0FH
   SWAP  A
   MOV   U_b+3,A           ; LSB0 HN -> 3
   ANL   U_b+3,#0FH

   MOV   A,U_b+2           ; LSB1 LN -> 2
   ANL   U_b+2,#0FH
   SWAP  A
   MOV   U_b+1,A           ; LSB1 HN -> 1
   ANL   U_b+1,#0FH

   CLR   A
   SJMP  LOOP_DIV    ; everything is in place now
   
POSITIVE:

   MOV   A,U_b+1
   ANL   A, #0F0H          ; should be ZERO
   JNZ   ERROR

   MOV   A,U_b+3           ; LSB0 LN -> 5
   MOV   U_b+5,A
   ANL   U_b+5,#0FH
   SWAP  A
   MOV   U_b+4,A           ; LSB0 HN -> 4
   ANL   U_b+4,#0FH

   MOV   A,U_b+2           ; LSB1 LN -> 3
   MOV   U_b+3,A
   ANL   U_b+3,#0FH
   SWAP  A
   MOV   U_b+2,A           ; LSB1 HN -> 2
   ANL   U_b+2,#0FH

   ANL   U_b+1,#0FH        ; LSB2 LN -> 1

   MOV   R3,#6             ;"Digit" Counter
   MOV   R1,#U_b           ;"Digit" Pointer
   MOV   R2,#5             ;"Nibble" Counter
   MOV   R0,#U_b+1         ;"Nibble" Pointer

   CLR   A
   SJMP  LOOP_DIV    ; everything is in place now

LOOP_DIGIT:     

   MOV   AR0,AR1
   MOV   AR2,AR3
   CLR   A

LOOP_DIV:
   XCHD  A,@R0
   MOV   B,#10       ; DIVISOR
   DIV   AB
   XCHD  A,@R0
   MOV   A,B
   SWAP  A           ; Remainder in AKKU HIGH NIBBLE
   INC   R0
   DJNZ  R2,LOOP_DIV

   MOV   A,@R1        ; should be ZERO
   JNZ   ERROR
   MOV   @R1,B
   INC   R1
   DJNZ  R3,LOOP_DIGIT

END1:
   RET

ERROR:
   MOV A,#0FH         ; 0x0F as '-' Character
   MOV U_b,A
   MOV U_b+1,A
   MOV U_b+2,A
   MOV U_b+3,A
   MOV U_b+4,A
   MOV U_b+5,A

END2:   
   RET

   END

union
{
   unsigned char buf[6];
   long in;
} idata U_b;  

void bin2bcd(void);

From fmayr@electronic.tu-graz.ac.at Thu Feb  6 10:24:30 1997
Date: Wed, 05 Feb 1997 15:36:00 +0100
From: Friedrich Mayr <fmayr@electronic.tu-graz.ac.at>
To: 8051code@keil.com
Subject: Fast LONG to BCD conversion

This function was written within the Keil C51 environment
by Dr. Roehrer (Inst. f. Elektronik, TU-Graz) and me
to be called from a C - Program as: "void bin2bcd(void)"

The following global variable (must be located in the
internal RAM of the processor, "data" or "idata" ) is
used both to pass the argument (a "long" value) to the
function, as well as to receive the result (6 digits):

union
{
   unsigned char buf[6];
   long in;
} idata U_b;  

The purpose of the code is to convert a signed long value
to BCD - code with leading sign if needed. Values exceeding
the range of 6(-:5) Digits should all be displayed by '-'.
The usage of memory was critical because no external RAM is
present in the system, so only the Accu, B, R1, R2, R3, R4
are used aside of the digit- (and argument-) buffer "U_b".

The trick applied in the function is to use a
"small" (nibble by nibble) division and the extensive
use of the '51 - opcodes XCHD and SWAP.
This results in very fast execution.
The function can easily be modified for example
to time-calculations or extended to the full "long"
range .

Jerry
Assembler › 10-bitové dvojkové číslo (om…
11. 5. 2017   #215976

#4 hlucheucho
Převod Binary to BCD se dělá taky pomocí Karnaughovy mapy pokud hledáš jak HW tak SW řešení. Ale to se učí někde ve 2.-3. ročníku na SŠ....  jinak 51 neobsahuje 2 bitový registr takže 10bitu se tak jako tak musí uložit do dvou osmibitových registru

tady je třeba hezkej kod a funguje:

http://www.8051projects.net/download-d27-binary-to-bcd.html

tady tady je něco .... něco ... něco

http://www.onarm.com/forum/19129/

a taky tady ...

https://microcontrollergarden.blogspot.cz/2013/08/8051-program-for-binary-to-bcd.html

Jerry
Assembler › 10-bitové dvojkové číslo (om…
11. 5. 2017   #215959

#1 hlucheucho
To co hledáš tomu se řiká BCD

https://cs.wikipedia.org/wiki/BCD

a  kod je tady

http://www.8052.com/codelib/

stačí když těch tvejch 10 bitu rozšíříš na 16 a horních 6 necháš nula.

stačí dát do googlu heslo: 8051  BCD conversion

a vyleze ti hafo odkazu

tady se to řeší

http://www.electro-tech-online.com/threads/binary-to-bcd-8051.130739/

https://okashtein.wordpress.com/2013/04/15/binary16-bit-to-bcd/

http://what-when-how.com/8051-microcontroller/data-conversion-programs-in-8051-c/

je na to aj speciální čip

https://elektronicstore.com/74185-binary-tp-bcd-converter-dip16-74-ls-74ls185.html

http://www.utm.edu/staff/leeb/DM74185.pdf

jenom tak ze zvědavosti kde že se učí 51' ka ??? SŠ elektro ?

Jerry
C / C++ › Ako uložit dynamicky alokova…
28. 1. 2017   #214691

#1 Pig
http://nora.fpf.slu.cz/~bakala/U%E8ebnice%20jazyka%20C%5B1%5D.pdf

strana 84 nebo 84, můžeš si všechno schovat do souboru a pak to zase načíst. pole asi nejspíš budeš ukládat po jednom prvku pomocí cyklu for můžeš použít jak textový tak i binární přístup. u textového dáš jedno číslo na řádku (na konci každé řádky se automaticky vloží CR+LF) a  u binárního přístupu - viz str 84 doporučuju převézt číslo na řetězec a zarovnat vždy na konstantní délku řetězce např 30 znaků pomocé mezer vkládaných před číslo a přidat znaky CR+LF (0x0D+0x0A) nakonec a zpětně po načtení řetězce s konstantní délkou převézt na číslo a uložit do pole. Takže jak vidíš možností je mnoho....

http://www.zezula.net/cz/prog/string_na_int.html

Jerry
Assembler › Jak vypočítat PTR DS?
6. 1. 2017   #214403

#6 Jerry
tady je to moc hezky popsaný

http://stackoverflow.com/questions/12246581/what-is-the-main-difference-between-jmp-ebx-and-jmp-dword-ptr-dsebx

Jerry
Assembler › Jak vypočítat PTR DS?
6. 1. 2017   #214401

#5 gna
  

Jerry
Assembler › Jak vypočítat PTR DS?
6. 1. 2017   #214399

#2 gna
co když ta adresa je decimálně ?   

JMP DWORD PTR DS:[EAX*4+447340]

pak to bude podle tohohle na stra 16:

http://www.fi.muni.cz/usr/brandejs/Brandejs_Mikroprocesory_Intel_8086_80486_2010.pdf

trochu jinak. Záleží na obsahu DS. Bez znalosti obsahu DS se to spočítat nedá.

Jerry
Assembler › Jak vypočítat PTR DS?
6. 1. 2017   #214397

#1 vanasi
http://www.fi.muni.cz/usr/brandejs/Brandejs_Mikroprocesory_Intel_8086_80486_2010.pdf

strana 16 dole a další strany a pak tohle

http://www.fi.muni.cz/usr/brandejs/Brandejs_Mikroprocesory_Intel_Pentium_2010.pdf

na straně 28 a 29 a pak tady máš další manuál:

https://uloz.to/!CZjIgj0ZIsAg/intel-proc-jmp-zip

jedná se o instrukci skok na stavový segment úlohy

dále pak tady

http://masm32.com/board/index.php?topic=2724.0

Jerry
Návrhy na vylepšení › Možnost editace odeslaného d…
3. 1. 2017   #214352

co ještě chybí ?

Možnost editace odeslaného dotazu/příspěvku   

Jerry
CSS › CSS: Řazení boxů
3. 1. 2017   #214351

a ještě jeden hezký způsob

<!DOCTYPE html>
<html>
<body>

<style>

 .nav {
        height: auto;
        float: left; 
        text-align: center; 
 	    list-style: none; 
        position: relative; top:0px
        padding: 0;
        margin: 0;
        background-color: lightblue;	
      }
                    
</style>

<table style="width:100%; position:relative;">
  <tr>
    <th>Col1</th>
    <th>Col2</th> 
  </tr>
  <tr>
    <td style="vertical-align: top;">
      <div class="nav";> 
         HELLO
      </div>
      </br>
      <div class="nav";> 
         HELLO
      </div>      
    </td>
    <td>
      <div style="background-color: lightblue; height:50px; text-align: center;"> 
         HELLO
      </div>
      <div style="background-color: lightblue;"> 
         HELLO
      </div>      
      <div style="background-color: lightblue;"> 
         HELLO
      </div>  
      <div style="background-color: lightblue;"> 
         HELLO
      </div>        
    </td>    
  </tr>
</table>

</body>
</html>
Jerry
CSS › CSS: Řazení boxů
3. 1. 2017   #214350

#1 Marek Šrám
tohle taky neni špatný

http://stackoverflow.com/questions/5645986/two-column-div-layout-with-fluid-left-and-fixed-right-column

Jerry
CSS › CSS: Řazení boxů
3. 1. 2017   #214349

#1 Marek Šrám
co tohle ?

http://stackoverflow.com/questions/5645986/two-column-div-layout-with-fluid-left-and-fixed-right-column

Jerry
C / C++ › C# záznam mirofonu do souboru
1. 1. 2017   #214332

#1 visk
no problém je v tom, že téměř veškerá dokumentace je v AJ......

pro záznam zvuku se normálně používá DirectX a nějaká podpora WinAPI x32/x64 funkcí

a programuje se to v C nebo C/C++ např. jako DLL knihovna.

pro C# v řízeném kodu můžeš použít wrapper řízených knihoven CLR/CLI a to

konkrétně SlimDX nebo SharpDX nebo XNA (i novou verzi) a dále UNITY.

záleží na tom jak moc si zběhlý s DirectX. Dále to lze naprogramovat v UWP v C++/CX

nebo UWP C# nebo UWP VBas atd. vše UWA je JEN pod Windows 10.

Takže jak vidíš možností máš opravdu MNOHO.

Když zadáš do googlu heslo "capture sound from microphone DirectX" vyjedou ti stohy návodů třeba

http://stackoverflow.com/questions/17407726/capture-sound-from-microphone-using-directx-directsound

nebo můžeš zadat "UWP capture sound from microphone " a vyjedou ti návodu pro Windows 10 v C# nebo C++/CX

problém ale je že všechno je v AJ je to universální jazyk obzvláště v oblasti počítačů

s češtinou asi určitě neuspěješ... nevim jak moc seš dobrej programátor ale možná

by se vyplatilo Unity protože ho Microsoft podporuje nebo případně SharpDX nebo SlimDX

protože programovat to v NativeDirectX(9,11,12) + C/C++ je poměrně dost náročná a dlouhodobá záležitost a docela

se zapotí i zkušenej programátor.

Jerry
C / C++ › lineárně zřetězený seznam v C
30. 12. 2016   #214320

stěžoval sis že to máš těžký co ?

koukni sem

http://programujte.com/forum/vlakno/31789-linearni-spojovy-seznam-problem/

  

Jerry
HTML / XHTML › zobrazuje se text tam kde nemá
30. 12. 2016   #214318

#3 Tomáš123
jo takže takhle je to správně, děkuji   

<!DOCTYPE html>
<html>
<head>


<style type="text/css">

 #wrap { text-align:center; z-index:0; position: relative; }

 .navbar { text-align: center; position: absolute; }

 .navbar li { float: left; text-align:center; list-style:none;  }

 .navbar a { display: block; text-decoration:none; }

 .navbar li ul { display: none; height: auto;  margin:0;  padding:0; }

 .navbar li:hover ul { display: block; }


</style>



</head>

<body>

<div id="wrap">

  <ul class="navbar">

    <li><a href="#">HOME</a></li>
    <li><a href="#">MAP</a>
      <ul>
        <li><a href="#">FIRST</a></li>
        <li><a href="#">SECOND</a></li>
      </ul>
    </li>

  </ul>

</div>


</body>
</html>
Jerry
C / C++ › C# záznam mirofonu do souboru
30. 12. 2016   #214300

#1 visk
zkusil si tohle ?

NAUDIO NET Library

https://naudio.codeplex.com/

Jerry
C / C++ › Lineární spojový seznam - pr…
30. 12. 2016   #214299

koukám ty do toho souboru můžeš aj ukládat celou strukturu
KONTAKT* ... samozřejmě po jednom záznamu. takže všechny záznamy cyklem for nebo do/while

ale pak pudou záznamy za sebou a ty už nebudeš moct editovat takovej soubor ručně např. v notepadu
 

Jerry
C / C++ › Lineární spojový seznam - pr…
30. 12. 2016   #214294

přiznám se že když čtu tu poslední verzi zdrojáku tak mi to vůbec nedává smysl ale jsi statečný   

když ten zdroják nebude číst tak zápočet dostaneš v pohodě .....  

Jerry
C / C++ › Lineární spojový seznam - pr…
30. 12. 2016   #214293

tady broučku

https://www.uloz.to/!152v35drQ/ucebnice-jazyka-c-rar

strana 84

použil bych asi binární přístup k souboru než textový ale to je na tobě ....

nezapomeň že musíš mít pevnou šířku dat, všechno můžeš ukládat jako "string" a na konci můžeš udělat CR+LF

takže záznam bude jméno(100znaků)přijmeni(100znaků)vek(3znaky jak ostring)atd... a nakonec CRLF

takhle můžeš přístupovat k souboru jak textově tak i binárně a po načtení např. věku jako string provedeš konverzi žetězce na int.

Jerry
HTML / XHTML › zobrazuje se text tam kde nemá
29. 12. 2016   #214281

#1 Jerry
nějak se to napoprvé vložilo blbě ten text html   

<!DOCTYPE html>
<html>
<head>


<style type="text/css">

 #wrap { align: center; z-index:0; position: relative; }

 .navbar { align: center; position: absolute; }

 .navbar li { float: left; text-align:center; list-style:none;  }

 .navbar a { display: block; text-decoration:none; }

 .navbar li ul { display: none; height: auto;  margin:0;  padding:0; }

 .navbar li:hover ul { display: block; }


</style>



</head>

<body>

<div id="wrap">

  <ul class="navbar">

    <li><a href="#">HOME</a></li>
    <li><a href="#">MAP</a></li>
      <ul>
        <li><a href="#">FIRST</a></li>
        <li><a href="#">SECOND</a></li>
      </ul>

  </ul>

</div>


</body>
</html>
Jerry
HTML / XHTML › zobrazuje se text tam kde nemá
29. 12. 2016   #214279

Co je špatně na tomhle ??  FIRST a SECOND se má zobrazit jenom když se klikne na MAP ale ono je to vidět pořád ... sakryš ....

<!DOCTYPE html>
<html>
<head>


<style type="text/css">

 #wrap { align: center; z-index:0; position: relative; }

 .navbar { align: center; position: absolute; }

 .navbar li { float: left; text-align:center; list-style:none;  }

 .navbar a { display: block; text-decoration:none; }

 .navbar li ul { display: none; height: auto;  margin:0;  padding:0; }

 .navbar li:hover ul { display: block; }


</style>

</head>

<body>

<div id="wrap">

  <ul class="navbar">

    <li><a rel="nofollow" href="#">HOME</a></li>
    <li><a rel="nofollow" href="#">MAP</a></li>
      <ul>
        <li><a rel="nofollow" href="#">FIRST</a></li>
        <li><a rel="nofollow" href="#">SECOND</a></li>
      </ul>

  </ul>

</div>
</body>
</html>

Jerry
C / C++ › lineárně zřetězený seznam v C
28. 12. 2016   #214271

#20 Staon

Staone .... bez urážky :))))))))))) nedivim se že česká ekonomika je v prdeli a máme nejnižší platy v EU :)

..........ineární spojový seznam neboli v angličtině LinkedList (přeloženo do češtiny SPOJOVY SEZNAM) nebo také jinak řečeno sekvenční binární strom nebo také sekvenční non-AVL tree má 2 formy a to jednostranně zřetězený (vžitý název v .NET List a to s nebo bez [Int32] indexeru) a nebo oboustraně zřetězený (vžitý název v .NET je LinkedList) viz zde 

http://www.stoimen.com/blog/2012/06/22/computer-algorithms-binary-search-tree-data-structure/.

v české literatuře to asi nenajdeš 

pěkně si to užij :)

Jerry
C / C++ › lineárně zřetězený seznam v C
28. 12. 2016   #214270

#1 Honza
řešení ? hotový příklad ? že by ? a zdarma ? v kapitalismu ? v Kalouskově kapitalismu ? není možná :))))

https://uloz.to/!wybTcOhmXzwM/consoleapplication1-zip

Jerry
C / C++ › Lineární spojový seznam - pr…
28. 12. 2016   #214269

#7 Radek K.
no :) tak s takhle komplikovanou úlohou si asi budeš muset poradit sám :)

a co že to studuješ ? a kde ? ty asi budeš studovat v prvním ročníku nějaký nukleární umělointeligentní mimozemské inženýrství na Harvardu co ? :)))))) tak přeju hodně štěstí :)))) v tom studiu .... jo a že pozdravuju vaší "pančelku" :))))

jo a .......... lineární spojový seznam neboli v angličtině LinkedList (přeloženo do češtiny SPOJOVY SEZNAM) nebo také jinak řečeno sekvenční binární strom nebo také sekvenční non-AVL tree má 2 formy a to jednostranně zřetězený (vžitý název v .NET List a to s nebo bez [Int32] indexeru) a nebo oboustraně zřetězený (vžitý název v .NET je LinkedList) viz zde 

http://www.stoimen.com/blog/2012/06/22/computer-algorithms-binary-search-tree-data-structure/.

v české literatuře to asi nenajdeš 

pěkně si to užij :)

Jerry
C / C++ › Lineární spojový seznam - pr…
27. 12. 2016   #214267

#5 Radek K.
dejme tomu, že by sis mohl upravit strukturu  _uzel tak, že kromě kromě jména, příjmení atd. by si onen link pojmenovaný jako "další" zrušil a místo něj vložil dva a to "_uzel *fwLink" a "_uzel *bwLink". Tím by sis vytvořil obousměrně slinkovaný lineární seznam neboli také non-AVL-tree neboli také sekvenční binární strom. Operace přidání, mazání atd. se zde prování VYRAZNE jednodušeji.


v tom programu co si napsal je tolik chyb že to nemá smysl nějak diskutovat.... to bysme tu byli rok :)

třeba řádek
adresar = init_adresar(); nemuže bejt uvnitř CASE 1 ale má bejt ještě před "do" jinak to nemá smysl...

dále oro strukturu _seznam nemá smysl přidělovat paměť dynamicky protože je tam JEN jednou takže to může být statická struktura a pak odkaz na jej9 prvky je pomocí tečkové notace nikoliv pomocí ->
atd. atd. ...

Codelight neznám a mám jenom MS VS cože je samé :)

navíc MS VS Comunity je zadara 

https://www.visualstudio.com/post-download-vs/?sku=community&clcid=0x409&telem=ga

no to chce předělat celej kod co si napsal ... tak to je
 

 

Jerry
C / C++ › Lineární spojový seznam - pr…
27. 12. 2016   #214262

Co myslíš tím "dostali jsme vzorové kódy ???.... " to jako že pan učitel vám dal funkce init_adresar, serad_adresar, atd  a taky struktury  typedef struct kontakt atd ... ???  Přiznám se, že ten zdroják co si tu dal je totální zmatlanina. Funkce serad_adresar je napsana špatně a nebude nikdy fungovat. Vubec struktura Adresar jak se použitá je kardinalni volovina. Nechce se mi to číst. Podle mě vás tohle nemoch nikdo učit. To je na trestní oznámení. :))) totální vostuda. Nevim v čem to píšeš. Předpokládejme že máš MS-VisualStudio-2015up3. Koukni sem:  https://uloz.to/!wybTcOhmXzwM/consoleapplication1-zip máš tam naprogramovaný všechno co potřebuješ.

Strukturu t_treeItem můžeš rozšířit o další prvky např char* jmeno, char* prijmeni, char* telefon. Dále pak rozšíříš funkci Add( int t_value ) na další vkládané promněnné tedy t_jmeno, t_prijmeni, t_telefon a přidáš je stejně jako je to podle vzoru jak se přidává t_value do value. Zjistíš délku vkládaného řetězce, pak nezapomeneš alokovat paměť pomocí malloc a přidáš délku řetězce + 1 protože řetězec musí končit znakem ASCII NULA neboli \0. Z proměnné t_jmeno překopirujes do item->jmeno pomocí strcpy. atd. atd. ...

Jerry
C / C++ › Lineární spojový seznam - pr…
27. 12. 2016   #214259

#1 Radek K.
no vidíš můžeš si podat ruce s dalším dotazovatelem:

http://programujte.com/forum/vlakno/31763-linearne-zretezeny-seznam-v-c/

Jerry
C / C++ › Vložení knihoven do Visual S…
26. 12. 2016   #214242

#8 visk
podle tohohle je to NUget   https://www.nuget.org/…ages/NAudio/

takže v menu tools to nainstaluješ jako Nuget balíček ne ? jak jinak ?

návodů na internetu je hromada třeba tady

http://superuser.com/questions/73675/how-do-i-install-a-vsix-file-in-visual-studio

tenhle je hezkej

https://blogs.msdn.microsoft.com/saraford/2010/03/11/how-to-install-visual-studio-extensions/

öno stačí do ggoglu zadat heslo "how to install vsix" a vyleze ti hromada návodů

Jerry
C / C++ › lineárně zřetězený seznam v C
23. 12. 2016   #214211

#18 Staon
stanislav dvořák, dekompozice a rekurzivní algoritmy, grada 1992, isbn 80-85424-76-2, strana 393-393., je to forma nevyváženého tedy non-AVL binárního stromu, taky se tomu dá říkat lineární zřetězený seznam viz Jan Rychlík, programovací techniky, koop, 1993, isbn 80-85828-05-7, strana 28, každý uzel - node - má 2 linky a to fwLink a bwLink, ale sou vánoce opravdu se nechci handrkovat vo kravinu    mě osobně je to úplně jedno jak se tomu bude řikat,  já sem sem na forum přišel protože sem potrřeboval pomoct s SQL   a tak sem si řek že na oplátku zase pomůžu já někomu abych nevypadal jak vyžírka když mi někdo na moji otázku odpověděl, jinak ten celej program neni až tak dlouhej, vychází cca na 600 řádků t.j 10 stran A4 když se to vytiskne, sem zvědavej co ten nebožák student splodí   

Vánocééééééééééé Vánocééééééééééé Vánocééééééééééé Vánocééééééééééé

oléééééééééééé   Vánocééééééééééé

dostanu dáréék bude kaprrrrrr   wou wou   

Jerry
C / C++ › lineárně zřetězený seznam v C
22. 12. 2016   #214197

#15 Staon
ale v tom případě to musí být pole záznamů a ne jenom pole což je ve výsledku to samý :) jako SBT

Jerry
C / C++ › lineárně zřetězený seznam v C
22. 12. 2016   #214196

každopádně to zadání psal totální mamlas   

Jerry
C / C++ › lineárně zřetězený seznam v C
21. 12. 2016   #214166

no problém bych viděl v tom, že on to po tobě asi u ústního zkoušení bude chtít ..... což je blbý....

takže to asi budeš muset nacvakat sám ... ale jak řikám všechno to důležitý už tam máš stačí to jenom rozhodit do jednotlivých funkcí např. InitBT (detekuje zda už strom existuje zalozi novy firstitem atd) deleteBT (smaze strom) Append a Add( pridaji polozku na konec nebo na zacatek pokud strom je prazdny),Insert ( vlozi int hodnotu za nejakou existujici hodnotu) IndexOf (vrati pointer na existujici prvek nebo NULL pokud prvek neexistuje - to je ten enumerator a prohledava se cely strom od zacatku), Delete(smaze existujici prvek dany hodnotu int pokud existuje), DeleteFirst (smaze prvni pokud to jde), DeleteLast(smaze posledni pokud to jde) , FindALL je stejný jako IndexOf ale zrusis tu podminku If, Sort (setridi seznam A-Z nebo Z-A styl)

kdybys na to hodil bobek a chtěl to risknout tak uěláme výměnu já tobě semestrálku a ty mě tohle:

https://www.alza.cz/dvd-r-medium-verbatim-d54961.htm?catid=18848915

jinak si mužeš stěžovat (možná to budeš muset dát písemně doporučeným dopisem) na napřiměřenost ulohy pokud si např. v prvním semestru prvního rocniku protože tohle je na prvaky moc. Pokud si treba ve 3 a vyšším semestru a už si absolvoval 2 semestry výuky programování pak už asi stížnost bude braná jako neoprávněná.

Jinak k tomu bodu 4 tvé ulohy .... no .. GarbageCollector s tim nema nic společnýho protože v NativeC/C++ neni a kdyby byl tak GC je tak agresivni, že k odstranení "odpadu" dochází téměř ihned a navic je možné použít příkaz System::GC::Collect (viz google) a vyčištění si vynutit ale ten je jen v jazyce C++/CLI a C# (resp. ve všech co podporujou CLI/CLR) pro .NET což se tě netýká. Navíc je to spojené s memory managementem windows a do toho se vůbec ani nedá nějak hlouběji zasahovat - microsoft to nepovolil.

jenom k tý poznámce na konci_

Poznámky:

Předpokládejte, že prvky v seznamu (tabulce) jsou řazeny vzestupně. Je to přirozené[1]?

[1] Tabulky bývají setříděné.

tabulku lze setřídit ... ale někdo ten kod musi napsat... přehazuje se jak pointer tak i hodnota Value, takze je to slozitejsi

Jerry
C / C++ › lineárně zřetězený seznam v C
20. 12. 2016   #214156

#1 Honza
já sem se teď koukal eště jednou na to zadání a máš tam aj mazat položky... takže bych nechal oboustranně zřetězenej protože se to pak dělá výrazně líp a o těch pár řádků navíc se to už neposere... jinak budeš muset dohledávat předchozí prvek

budeš muset napsat eště funkci Hledej - tu sem tam nenapsal - na hledání prvku v tom seznamu co vrátí pointer na t_treeItem kde ta hodnota je to je jenom jednoduchej enumerátor  n2co ve smyslu:

while ( enum->MoveNext() )  {

          if ( enum->GetPtr()->Value == hledanahodnota ) {

             ..........

            return enum->GetPtr();

          }

}

Jerry
C / C++ › lineárně zřetězený seznam v C
20. 12. 2016   #214155

#1 Honza
kde že to studiješ ? ČVUT ? VUT ? ZCU ?

Jerry
C / C++ › lineárně zřetězený seznam v C
20. 12. 2016   #214154

#7 Honza
to šlo ale objem práce je přibližně stejnej  protože potebuješ naprogramovat

stejnej počet obslužných funkcí takže je to fuk.

ale všechno co potřebuješ už tam máš napsaný .... vytvoření, vložení, mazání

pokud to chceš udělat jednosměrný stačí vynechat  t_treeItem *bwLink = NULL; a k němu příslušné řádky

obslužného kodu
 

Jerry
C / C++ › lineárně zřetězený seznam v C
20. 12. 2016   #214143

to co chceš je oboustraně zřetězený sekvenční binární strom. je to dost práce no    

typedef struct t_treeItem
{
	int value;
	bool endElement;
	t_treeItem *fwLink = NULL;
	t_treeItem *bwLink = NULL;
	t_treeItem *self = NULL;

} treeItem;






	treeItem *item = NULL;

	// dulezite globalni RIDICI promenne 
	treeItem *firstItem = NULL;
	treeItem *lastItem = NULL;



	{

		// funkce pridani prvku do sekvencniho binarniho stromu - bud na prvni misto pokud 
		//  je strom prazdny nebo na posledni misto pokud neni prazdny


		
		// pridani prveho prvku do sekvencniho binarniho stromu
		if (firstItem == NULL ) {

			item = new treeItem();
			item->value = 0; // zadana hodnota uzivatelem / nejaka

			item->fwLink = NULL;
			item->bwLink = NULL;
			item->self = item;
		
			firstItem = item;   
			lastItem = item;

		} else  // pridani noveho prvku za posledni prvek sekvencniho binarniho stromu. 
		{

			item = new treeItem();
			item->value = 0; // zadana hodnota nejaka

			// zalinkujeme novy prvek sekvencniho binarniho stromu 
			item->fwLink = NULL;
			item->bwLink = lastItem->self;  // spojeni na predchoziho
			item->self = item;

			// vytvorime spojeni v retezci posledniho prvku na prave vytvoreny item
			lastItem->fwLink = item;

			// firstItem = item;    // nemeni se zde leda ze bychom mazali prvni prvek
			lastItem = item;  // meni se pokazde kdyz pridavame za posledni prvek seznamu

		}

			// podobne napr odebrani prvku 
			/*
			// pokud mazes prvni prvek  t.j. firstItem == item pak 
			item->fwLink->bwlink = NULL; 
			firstItem = item->fwLink->self;
			delete( item );

			// pokud mazes prvek item ktery je jiny nez prvni a posledni t.j. item != lastItem AND  item != firstItem;
			item->fwLink->bwlink = item->bwLink; nebo taky item->bwLink->self; coz je to same
			item->bwLink->fwlink = item->fwLink; nebo taky item->fwLink->self; coz je to same 
            delete( item );
			
			// pokud mazes posledni prvek  t.j. lastItem == item pak
			item->bwLink->fwlink = NULL;
			lastItem = item->bwLink->self;
			delete( item );


			//stejnym zpusobem se pak udela vlozeni prvku kdekoliv ve uprostred strome t.j. musim vedet
			// ZA jaky item vkladam nebo PRED jaky vkladam 
			{
			item = new treeItem();
			item->value = 0; // zadana hodnota nejaka

			// zalinkujeme novy prvek sekvencniho binarniho stromu NEKAM ... pozor poradi prikazu je dulezite 
			item->fwLink = ten_za_ktery_vkladam->fwLink;
			item->bwLink = ten_za_ktery_vkladam->self; 
			ten_za_ktery_vkladam->fwLink->bwLink = item;  nebo taky  ten_pred_ktery_vkladam->bwLink = item; coz je to same
			ten_za_ktery_vkladam->fwLink = item;


			item->self = item;

			// vytvorime spojeni v retezci posledniho prvku na prave vytvoreny item
			lastItem->fwLink = item;

			// firstItem  nemeni se 
			// lastItem  nemeni se 
			}
			
			*/

	}// 
Jerry
C / C++ › Dvourozměrné pole nebo pole…
20. 12. 2016   #214141

#7 Jerry
a jeste ta sekvence porovnani  :) prvku rad

    for (i = 0; i < linesArrayCount; ++i) {

            for (k = 0; k < linesArrayCount; ++k) {

                if (i != k) {  // porovnej radu kdyz to neni ta sama

                    if (linesArray[i].sequenceCount == linesArray[k].sequenceCount) {  // pocet cisel v obou radach i a k je stejny lze porovnat

                        identityCount = 0;
                        for (l = 0; l < linesArray[i].sequenceCount; ++l) {

                            if (linesArray[i].sequence[l] == linesArray[k].sequence[l]) {
                                identityCount = identityCount + 1;
                            }// if

                        }// for l
                        if (identityCount == 0) {
                            rady i a k jsou rozdilne
                        }// if

                    }//if


                }// if (i != k)
            }// for k

    }// for

Jerry
C / C++ › Dvourozměrné pole nebo pole…
20. 12. 2016   #214140

ty nepíšeš jednu zásadní věc a to je jestli tochceš v dynamických proměnných nebo statických

pokud to druhé je to jednodušší a to výrazně. a pak taky kdo má dělat to roztřídění čísel z řádků do proměnných nebo jestli si to můžeš udělat ručně.

já bych to v Céčku (statické prom.) udělal tak, že když máš více řádků textu a na každém řádku jsou jen číslice

oddělené mezerou - aspoň tak to chápu, a první číslo na každém řádku má být master a další čísla jsou jen posloupnost čísle pak bych si vytvořil strukturu.


typedef struct t_lineItem
{
    int master;
    int sequence[20]={0};  // max. 20 císel na řádku + císlo master
    int sequenceCount; // = 20

    bool validSeq[20]={0};   // rika zda existuje cislo na radku

} lineItem;

a pak pole struktur

    t_lineItem linesArray[100];

a to bych vyplnil hodnotami čísel na řádcích:

    linesArray[0].master = 1;
    linesArray[0].sequenceCount = 20;
    linesArray[0].sequence[0] = 1;  atd... atd. atd...

tohle ale funguje tak, že počet čísel na řádku je pevný a stejně tak je dán i max. počet řádků.

pokud počet čísel na řádku je proměnný pak budeš muset používat proměnnou validSeq ktera rika jestli

cislo na danem radku existuje nebo ne a pochopitlne musis znat predem max. pocet cisel oddelenych mezerou na radku

Jerry
C / C++ › lineárně zřetězený seznam v C
20. 12. 2016   #214138

přiznám se že sem vůbec nepochopil to zadání ....

nemáš náhodu někde originál ????

Jerry
C / C++ › Pointer na pole struktur
19. 12. 2016   #214126

#1 Marcel
jo tak teď už bych v tom měl totální zmatek

eště že nejsem programátor :)

Jerry
C / C++ › Pointer na pole struktur
19. 12. 2016   #214124

#1 Marcel
a co tohle ? je tohle lepší ?

// ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"


typedef struct t_point
{
	double x;
	double y;

} Point;


void test(t_point(*t_p_array_point), int t_count) {

	for (int i = 0; i < t_count; i++) {

		printf("%d  %g  %g  \n", i, (*(t_p_array_point+i)).x, (*(t_p_array_point+i)).y);

	}// for 

}// void test(t_point* t_p_point[], int t_count) 

int main()
{

	const int max_records = 100;

	t_point array_point[ max_records ] = {NULL};
	t_point(*p_array_point) = NULL;

    //*****************************************

	//
	for (int i = 0; i < max_records; i++) {

		array_point[i].x = i;
		array_point[i].y = i;

	}// for 
	
	//
	p_array_point = &array_point[0];
	test(p_array_point, max_records);

	//
	for (int i = 0; i < max_records; i++) {

		//delete( array_point[i] );

	}// for 

	scanf("...");

    return 0;

}// int main()
Jerry
C / C++ › Pointer na pole struktur
19. 12. 2016   #214116

#1 Marcel
nemělo by to bejt třeba takhle ?

// ConsoleApplication1.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"


typedef struct t_point
{
	double x;
	double y;

} Point;


void test(t_point* t_p_point[], int t_count) {

	for (int i = 0; i < t_count; i++) {

		printf("%d  %g  %g  \n", i, t_p_point[i]->x, t_p_point[i]->y);

	}// for 

}// void test(t_point* t_p_point[], int t_count) 

int main()
{

	const int max_records = 100;

	t_point* array_point[ max_records ] = {NULL};

    //*****************************************

	//
	for (int i = 0; i < max_records; i++) {

		array_point[i] = new t_point();
		array_point[i]->x = i;
		array_point[i]->y = i;

	}// for 
	
	//
	test(array_point, max_records);

	//
	for (int i = 0; i < max_records; i++) {

		delete( array_point[i] );

	}// for 

	scanf("...");

    return 0;

}// int main()
Jerry
MS SQL › jaký je rozdíl
19. 12. 2016   #214113

Jaký je rozdíl mezi:

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
INNER JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

a

SELECT Customers.CustomerName, Orders.OrderID
FROM Customers, Orders
WHERE Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName;

já bych řek že výsledek je ten samej ne ?

 

 

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