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

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

 

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

gna
Visual Basic › Další úkol - Jak provedu výp…
před 21 hodinami   #221073

#11 Kit
Já jsem poslední velkou věc ve VBA dělal před 20 lety pro jeden okresní úřad a není na světě dost peněz, abych to podstoupil znova.

gna
Visual Basic › Další úkol - Jak provedu výp…
Včera   #221070

Já jsem předpokládal, že jde o VB.NET. To asi budete dělat v tom Visual Studiu.

To v Excelu je VBA (Visual Basic for Applications) a je úplně na ho.no.

gna
Visual Basic › Další úkol - Jak provedu výp…
Včera   #221067

Jinak teda pokud ten MsgBox používáš, protože je to konzolová aplikace a nevíš, jak jinak něco vypsat, tak je to 

Console.WriteLine("Ahoj")
gna
Visual Basic › Další úkol - Jak provedu výp…
Včera   #221066

Protože vypis máš Long a pokoušíš se k němu přičítat string.

Mimochodem pokud je step 1, tak ho nemusíš psát a neco = neco + necojineho se dá napsat jako neco += necojineho. A to Chr(10) nahraď něčím srozumitelnějším. Myslím, že ještě pořád existuje předdefinovaná konstanta vbNewLine.

Dim i As Integer
Dim nahoda, soucet, prumer, rozdil As Double
Dim vypis As String

soucet = 0
For i = 1 To 20
    nahoda = Round(Rnd() * 40) + 10
    soucet += nahoda
    vypis += Str(nahoda) + vbNewLine
Next i
prumer = soucet / 20
rozdil = 30 - prumer

vypis += "prumer " + Str(prumer) + vbNewLine
vypis += "rozdil " + Str(rozdil) + vbNewLine

MsgBox vypis
gna
Visual Basic › Další úkol - Jak provedu výp…
Včera   #221064

Copak něco brání tomu abys to v tom cyklu dělal obojí?

gna
C / C++ › Ukládání/načítání souboru C++
20. 5. 2018   #221056

No tak ho projdi a obsah ulož. Co ti na tom nejde?

gna
Visual Basic › Sinus - Dotaz na správnost
20. 5. 2018   #221055

Samozřejmě ta první varianta.

gna
C / C++ › Súčet všetkých podreťazcov r…
20. 5. 2018   #221053

To se dost špatně vysvětluje. Zkus ten výpočet rozložit a uvidíš to. První část je

(i+1) * numi

To je vidět hned 

1 + 2 + 3 + 4  +  12 + 23 + 34        +  123 + 234            +  1234
1 + 2 + 3 + 4  +  10+2 + 20+3 + 30+4  +  120+3 + 230+4        +  1230+4
1 + 2 + 3 + 4  +  10+2 + 20+3 + 30+4  +  100+20+3 + 200+30+4  +  1000+200+30+4
1              +  10 + 20 + 30        +  100+20 + 200+30      +  1000+200+30    +  2*2 + 3*3 + 4*4

Další část

10 * sumofdigit[i-1]

Když si s tím pohraješ, tak je vidět, že v každém kroku je řádový posun předchozího.

1   +   10 + 2*2   +   100 + 2*2*10 + 3*3   +   1000 + 2*2*100 + 3*3*10 + 4*4
1   +   10 + 2*2   +   (10+2*2)*10  + 3*3   +   ((10+2*2)*10 + 3*3)*10  + 4*4
gna
PHP › Mazání z databáze
16. 5. 2018   #220886

To říká, že skupina_id odkazuje na skupina.id a hlídá se, aby ten odkaz byl platný, takže nepůjde smazat skupina, ve které někdo je.

Web se na to bude tvářit tak, jak si ho napatláš.

gna
JavaScript, AJAX, jQuery › Pexeso jQuery
14. 5. 2018   #220859

Už ti peter napsal, kde ten test je. Uprav si to jak chceš.

if (imgopened != currentopened) {
// close again
...
} else {
// found
...
gna
Python › Shannon-fanovo kodovani
12. 5. 2018   #220839

Je to vidět na tom stromě. Těch hodnot s kratkým kódem musí být výrazně víc než těch s dlouhým, aby výsledná velikost byla menší.

U JPG je normální, že jednoduchým překódováním se nezmenší.

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220827

Ano, přesně tak.

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220825

Protože když to dělíš podle četnosti, tak se ti to svažuje doprava, častější hodnoty vlevo mají kratší kódy a ty méně časté zase delší. To je přece to o co jde. 

     *
    / \
   /   \
  *     *
 / \   / \
00 01 10 11


  *
 / \
0   *
   / \
  10  *
     / \
   110 111

Můžeš prostě tu délku kódů ukládat na víc bitů. (Teda mimo to, že je vůbec není potřeba ukládat.)

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220822

Mně to ukazuje numBytes 1640623802. Jsou tam kódy delší než 8 bitů, takže se jejich délka nevejde do těch očekávaných 3 bitů a všechno se to posune.

gna
JavaScript, AJAX, jQuery › reg. vyraz - nahrazeni zname…
11. 5. 2018   #220821

Tady je $1 -- '[+\\-]+([+\\-])|[/*]+([/*])'

a tady $2 -- '[+\\-]+([+\\-])|[/*]+([/*])'

Když se matchne '[+\\-]+([+\\-])|[/*]+([/*])', tak $1 nic neobsahuje. Když to bude matchovat zprava, tak se posere zase ta první část.

U toho původního patternu ale můžeš zůstat s replace na "$1$2".

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220814

Dej si tam výpis té hodnoty numBytes. Chybu tam nevidím (a nechápu co tam všude kutíš s tím +-1), ale možná to načetlo nějaké hausnumero.

A místo range tam dej xrange.

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220813

Tak ukaž i ten soubor.

gna
JavaScript, AJAX, jQuery › reg. vyraz - nahrazeni zname…
11. 5. 2018   #220812

$1 je první skupina a $2 ta druhá, bez ohledu na to, která část se matchne.

patt = '[-+]+(?=[-+])|[/*]+(?=[/*])';
...
str.replace(reg,'');
gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220810
gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220807

Když opravím to chaotické odsazování, tak mi to funguje.

A máš to zbytečně šíleně složité.

gna
Python › Shannon-fanovo kodovani
11. 5. 2018   #220804

Bez kódu tu chybu nenajdeme.

gna
MS SQL › Hledání posledních záznamů p…
11. 5. 2018   #220803

1. To jsem tušil a myslím si, že jsem dost jasně napsal, že při sekupování musíš určit, kterou hodnotu chceš vybrat.

2. Taky si myslím, že bez toho to v MS SQL ani nejde, takže teď předpokládám MySQL.

3. Když se to pokušíš použít, jak jsem to napsal, tak nějak logicky.

SELECT * 
FROM   tabulka 
WHERE  ( osoba, datum ) IN (SELECT osoba, Max(datum) 
                            FROM   tabulka 
                            GROUP  BY osoba);
gna
Delphi › Dynamické přiřazení funkcí k…
10. 5. 2018   #220788

TMenuItem má vlastnost OnClick. Je to v dokumentaci.

A parametr Sender je ta kliknutá položka. To je taky v dokumentaci.

gna
MS SQL › Hledání posledních záznamů p…
9. 5. 2018   #220786

Při použití group by musíš v selectu říct, kterou hodnotu ze skupin vybrat. 

SELECT osoba, 
       Max(datum) AS datum 
FROM   tabulka 
WHERE  osoba IN ( ... ) 
       AND datum < ... 
GROUP  BY osoba
;
gna
Delphi › Vytvoření třídy
7. 5. 2018   #220757

Identifikátory se "hledají" z aktuální úrovně do vyšších.

Pokud tady chceš používat stejně pojmenovaný parametr i vlastnost objektu (nejsem si jistý, jestli to vůbec jde), tak přednostně to bude parametr a vlastnost musíš napsat jako Self.vlastnost. Pokud kolize není, tak rozlišovat nemusíš. Když se podíváš na konvence pojmenovávání, tak ke kolizím ani nedochází.

Pusť konečně z hlavy pokusy používat název třídy jinak než při určování typu nebo vytváření instance.

gna
Delphi › Funkce "najdi samohlásku"
7. 5. 2018   #220756

Není. Brání ti něco si ji napsat?

gna
PHP › Vkládání obrázků do databáze
7. 5. 2018   #220752

Na obrázky je tag IMG a data určuje jeho atribut SRC.

Takže v HTML budeš mít

<img src="kurvafix.jpg" />

Prohlížeč když to uvidí tak stáhne a zobrazí ten obrázek.

gna
Delphi › Vytvoření třídy
6. 5. 2018   #220712
gna
Delphi › Vytvoření třídy
5. 5. 2018   #220705

Možná se TForm automaticky pokouší načíst svůj formulář. Toto nevypadá na formulářovou třídu, tak není důvod dědit z TFormu.

TTesty = class(TObject)
gna
Delphi › Vytvoření třídy
4. 5. 2018   #220694

No a takovou tu drobnost tam máš?

TestyOrganizer := TTesty.Create;
gna
Delphi › Vytvoření třídy
4. 5. 2018   #220692

Konstruktor nic nedělá, na objekt se nedá dostat...

Tu proměnnou máš inicializovanou, že?

gna
Python › Augmentation Audio
4. 5. 2018   #220690

Napiš to i s těmi závorkami.

gna
PHP › Kde procvičovat?
4. 5. 2018   #220688
gna
Python › Augmentation Audio
4. 5. 2018   #220687

V PowerShellu, ne v klasickém příkazovém řádku.

gna
Python › Augmentation Audio
4. 5. 2018   #220686

To

Samples/*/*

nezpracovává ten skript, ale shell to před spuštěním programu nahradí seznamem souborů.

Tipuju, že to zkoušíš ve Windows. Tam to můžeš napsat tahle

(dir Samples/*/*)
gna
Delphi › Vytvoření třídy
3. 5. 2018   #220661

Kolikrát jsi psal něco := Třída.Create?

Chceš Form1, ne TForm1.

gna
Delphi › Vytvoření třídy
3. 5. 2018   #220654

A nechceš náhodou zapisovat ty booleany, do kterých to načítáš?

Odkaz na form nebo cokoliv jiného můžeš do objektu předat stejně jako kdykoliv cokoliv jiného. Jako parametr jeho metody, nebo nastavením jeho proměnné.

Nakonec je ten Form1 pravděpodobně globální proměnná, tak to můžeš prostě napsat jako Form1.něco.

gna
C / C++ › Hashovací tabulka se separát…
3. 5. 2018   #220652

   

struct Table
{
	Table(size_t m)
	{
		size = m;
		lists = new List[size];
	}

	~Table()
	{
		delete[] lists;
	}

	void Insert(char *str)
	{
		unsigned int hashKey = DJBHash(str, strlen(str)) % size;
		lists[hashKey].Insert(str);
	}

	bool Search(char *str)
	{
		unsigned int hashKey = DJBHash(str, strlen(str)) % size;
		return lists[hashKey].Search(str);
	}

	size_t MaxKeyUse()
	{
		size_t max = 0;
		for (size_t i = 0; i < size; i++)
			if (lists[i].size > max)
				max = lists[i].size;
		return max;
	}

private:
	List* lists;
	size_t size;
};
gna
C / C++ › Hashovací tabulka se separát…
3. 5. 2018   #220651

Klidně tam udělej klasické pole, na tom nezáleží.

gna
Flash › Action Script - Socket Clien…
3. 5. 2018   #220649

Jako odpověď na ten policy request odešleš obsah policy file (ukončený nulovým bajtem). Povolení všeho vypadá takhle:

<cross-domain-policy>
<allow-access-from domain="*" to-ports="*" />
</cross-domain-policy>
gna
C / C++ › Hashovací tabulka se separát…
3. 5. 2018   #220648

Tím se asi myslí maximum a průměr délek těch seznamů.

Takže si třeba do Listu přidej počitadlo vložených prvků.

Pak ještě tomu Listu doplň destruktor, ve kterém uvolníš alokovanou paměť (taky by bylo dobré pořešit kopírování). Z DJBHash vyhoď to modulo M, když zjevě používáš 2 různé hodnoty. A vykopej ty funkce InserHash/SearchHash a globální proměnné.

struct Table
{
	Table(size_t m)
	{
		lists.resize(m);
	}

	void Insert(char *str)
	{
		unsigned int hashKey = DJBHash(str, strlen(str)) % lists.size();
		lists[hashKey].Insert(str);
	}

	bool Search(char *str)
	{
		unsigned int hashKey = DJBHash(str, strlen(str)) % lists.size();
		return lists[hashKey].Search(str);
	}

	size_t MaxKeyUse()
	{
		size_t max = 0;
		for (List& list : lists)
			max = std::max(max, list.size);
		return max;
	}

private:
	std::vector<List> lists;
};

Table table1(M);
Table table2(M2);

table1.Insert(strdup("hrcprc"));
table1.MaxKeyUse();
gna
Delphi › nastavení projektu (Borland…
3. 5. 2018   #220628

Předpokládám, že ten hlavní form jde vybrat, tak ho vyber. Jinak je to form, který se vytváří jako první a myslím, že se to nikde extra neukládá, tak by mohlo stačit ten řádek s Form1 přesunout na začátek.

Available forms jsou pravděpodobně všechny formuláře v projektu. Auto-Create forms jsou ty, které se tady automaticky vytváří tím CreateForm.

T/Fhledani to nevidí, protože to asi není v unitách, které máš v uses. Kde je to definované můžeš najít třeba tak, že ten název prostě dáš vyhledat ve všech souborech :)

BPL/DCP adresáře se použijí asi jen pokud vytváříš/používáš externí knihovny. Asi to nastavovat nemusíš, nebo se podívej co tam je, když vytvoříš nový projekt.

gna
Python › malá rada o PyQT5?
2. 5. 2018   #220623

#1 lesna bodka vevericka zavinac gmail bodka com
Ten widget má metodu pos, takže pro svoji proměnnou použij jiný název.
Operátor is testuje identitu objektu. To co jsi asi chtěl udělat by bylo isinstance.
Ten pokus o vytažení x a y je úplný nesmysl.

def __init__(self):
    self._click_pos = None
    ...

def mousePressEvent(self,event):
    self._click_pos = event.pos()
    ...

def drawPoints(self,qp):
    ...
    if self._click_pos is not None:
        #takhle bys ty souradnice mohl vytahnout
        #qp.drawPoint(self._click_pos.x(), self._click_pos.y())
        #ale nemusis...
        qp.drawPoint(self._click_pos)
gna
Delphi › ExtractStrings a TStrings
2. 5. 2018   #220622

#27 oxidián
První znak má index 1.

gna
Visual Basic › Visual basic - program
2. 5. 2018   #220617

Nevím, jak si to přesně vyložit, ale dejme tomu, že by šlo o okenní aplikaci ve VB.NET.

Na formulář hodíš 6 textboxů a tlačítko. Do prvních 3 se budou zadávat ty hloubky a po stisknutí tlačítka se další 3 vyplní seřazenými hodnotami. Poklepeš na to tlačítko a vygeneruje se ti zhruba takováhle prázdná metoda: 

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
End Sub

K obsahu textboxu se dostaneš přes jeho vlastnost Text. To je textový řetězec, takže ho bude potřeba zkonvertovat na číslo, protože budeme chtít porovnávat číselné hodnoty. Dejme tomu, že půjde o celá čísla, tak na to můžeš použít funkci Integer.TryParse, která indikuje jestli se konverze povedla. (Ve vlastnostech textboxu asi jde nastavit, aby do něj šlo zadat jen číselný text, ale pořád je to text)

Existuje metoda Array.Sort pro seřazení pole, takže ty hodnoty můžeš uložit do pole a to jednoduše seřadit.

Nakonec seřazené pole čísel převedeš zase na texty metodou ToString a vložíš do výsledných textboxů.

Nic těžkého, celé by to mohlo vypadat takhle:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim cisla(2) As Integer

    If Not Integer.TryParse(Textbox1.Text, cisla(0)) _
    Or Not Integer.TryParse(Textbox2.Text, cisla(1)) _
    Or Not Integer.TryParse(Textbox3.Text, cisla(2)) Then
        MessageBox.Show("Zadej celociselne hodnoty!")
        Exit Sub
    End If

    Array.Sort(cisla)

    Textbox4.Text = cisla(2).ToString()
    Textbox5.Text = cisla(1).ToString()
    Textbox6.Text = cisla(0).ToString()
End Sub

Nevím, jestli to funguje, ve VB nedělám, ale jako nástřel by to mělo stačit.

gna
Python › malá rada o PyQT5?
2. 5. 2018   #220615

Je to rozbitý.

gna
Delphi › Procházení adresáře
2. 5. 2018   #220614

1. Takhle ti to asi vrátí jen záznam pro ten jeden adresář. Jestli chceš jeho obsah, tak asi bude potřeba přídat za to ještě masku.

2. Už FindFirstDalší v případě úspěchu naplní ten SearchRecord. Takhle ho přeskakuješ.

3. V Attr asi může být více flagů. Netestoval bych rovnost.

if FindFirst(TestyDir + '\*', faDirectory, SearchRecord) = 0 then
begin
  repeat
    if (SearchRecord.Attr and faDirectory) = faDirectory
      ..
  until FindNext(searchResult) <> 0;
  FindClose(SearchRecord);
end;
gna
Visual Basic › Visual basic - program
2. 5. 2018   #220611

Tak napiš s čím konkrétně máš problem a třeba ti někdo poradí.

gna
Flash › Action Script - Socket Clien…
2. 5. 2018   #220610

Nejsem si jistý na co se ptáš. V první řadě na cílovém serveru musí běžet policy-file server. Před spojením se Flash nejdříve podíva na policy file, jestli server to spojení dovoluje.

gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220597

#21 oxidián
Je to někde ve vlastnostech projektu, nebo to můžeš napsat přímo do zdrojáku.

gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220594

To pole je automaticky naplněné prázdnými stringy. Spíš bych tipnul, že máš index 11, ale počítáno od 0 je to 12. položka, takže mimo pole. Samozřejmě můžeš použít Length, resp. Low/High pro testování platnosti indexu.

Se zapnutými "range checks" {$R+} by to mělo hodit vyjímku, ale jinak to klidně vezme neplatnou hodnotu jako string a klekne to až na Access Violation když s ním něco děláš. Takže alespoň pro ladění to doporučuji zapnout.

gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220582

#6 oxidián
A má ten ptest správnou hodnotu?

pc^ = 'L', (pc+1)^ = 'a', (pc+2)^ = 't' ?

gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220580

A pořád všude try blok. Jestli to háže vyjímku, tak je asi něco blbě.

gna
Delphi › Otevření obrázku ze souboru
1. 5. 2018   #220579
gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220577

#3 oxidián
Zkus se ještě podívat, co ti vrací ten PChar. Myslím si, že v D7 je všechno AnsiString, takže by neměl být problém, ale nic jiného mě nenapadá.

Jinak u vyšších verzí jsou i zdrojáky, tak se můžeš podívat na čem to klekne. Našel jsem třeba tady.

gna
Delphi › ExtractStrings a TStrings
1. 5. 2018   #220573

Já bych očekával to samé. Jseš si jistý, že je prázdný?

gna
Delphi › Otevření obrázku ze souboru
1. 5. 2018   #220571

RAD Studio je balík obsahující různé produkty včetně Delphi.

Nejstarší verze helpu je tam pro RS2007 a v ní jsem našel tu samou funkci. Takže to asi bude to co hledáš.

RAD StudioVCL IndexExtractStrings.

Jestli máš originálku, tak bys měl mít kompletní help nainstalovaný (nebo na CD). Jinak jsem ho našel třeba tady. Jestli ho máš a jen ti nefunguje, tak je potřeba doinstalovat winhlp32.

gna
Delphi › Otevření obrázku ze souboru
30. 4. 2018   #220568
gna
PHP › PHP - skládání stránek a vkl…
29. 4. 2018   #220563

Klient (prohlížeč) požádá server o data na nějaké adrese. Server vidí, že na té adrese je skript, tak ho spustí a výstup skriptu pošle klientovi.

V databázi můžeš mít, co chceš a dělat si s tím, co chceš. Nikoho nezajímá, jak ten skript ta data vypotí.

gna
C / C++ › Serio-paralelní zapojení rez…
28. 4. 2018   #220556

Nějaký cyklus a podmínky tam určitě budou. A problém máš teda s čím?

gna
C / C++ › Serio-paralelní zapojení rez…
28. 4. 2018   #220554

C nebo C++ a s čím konkrétně si nevíš rady?

Struktura řádků je jasná. S hodnotami provedeš operaci podle operátoru. Hodnota je buď číslo, nebo identifikátor jiné větve, kterou musíš vyřešit předtím.

gna
PHP › Úprava INFO tagu v AVI
27. 4. 2018   #220540

Hele, už ten popis je zmatený. Je to prostě hromada chunků FOURCC id, LE32 delkadat, data...

Podle id poznáš formát dat. Pro RIFF jsou data FOURCC fileid, CHUNK..., pro LIST jsou data FOURCC listid, CHUNK..., pro ty IXXX jsou to nulou ukončené řetězce, atd.

Chunky jsou zarovnané na 2 byty, ty tam natvrdo přidáváš jeden byte bez ohledu na velikost.

fgets načítá textový řádek (do zadané velikosti nebo odřádkování) ne libovolná data.

Test jestli za tím listem je JUNK chunk, který můžeš posunout by měla být optimalizace, abys nemusel překopat celý soubor, ne nutnost bez které to nejde.

Když to rozparsuješ pořádně, tak to pak budeš schopný i zeditovat.

gna
PHP › Problém s headerom po prihla…
27. 4. 2018   #220537

#8 Martin
Jaké ale? Přesně to ti tady říká každá odpověd.

gna
PHP › Problém s headerom po prihla…
26. 4. 2018   #220534

Napsal jsi, že za doctype máš session_start(). Předpokládám, že to je ještě před tím kódem, co jsi ukázal.

Hlavičky se odesílají před tělem dokumentu. Takže se pokoušíš nastavit hlavičku až potom, co jsi začal odesílat dokument a proto se ta hlavička nepošle a přesměrování neprovede.

Exitem se ukončí skript, takže se neprovede další kód, pokud pod tím ještě něco máš. Na funkčnosti přesměrování to samozřejmě nic nezmění.

gna
PHP › Problém s headerom po prihla…
26. 4. 2018   #220532

A taky ta hlavička nepřeruší provádění skriptu, takže za tím přesměrováním asi ještě budeš chtít exit.

gna
PHP › Problém s headerom po prihla…
26. 4. 2018   #220531

Jakmile začneš vypisovat tělo dokumentu, tak už nejde přidat hlavičky.

gna
Pascal › Pomos s podprogramem
21. 4. 2018   #220478

   

type
    TMatice = array of array of integer;

function vygeneruj(vyska, sirka: integer): TMatice;
var
    matice: TMatice;
    radek, sloupec: integer;
begin
    setlength(matice, vyska, sirka);
    for radek := low(matice) to high(matice) do
        for sloupec := low(matice[radek]) to high(matice[radek]) do
            matice[radek,sloupec] := random(5) + 1;
    vygeneruj := matice;
end;

function secti_sloupec(matice: TMatice; sloupec: integer): integer;
var
    radek, soucet: integer;
begin
    soucet := 0;
    for radek := low(matice) to high(matice) do
        soucet := soucet + matice[radek,sloupec];
    secti_sloupec := soucet;
end;

procedure vypis(matice: TMatice);
var
    radek, sloupec: integer;
begin
    for radek := low(matice) to high(matice) do
        begin
            for sloupec := low(matice[radek]) to high(matice[radek]) do
                write(matice[radek,sloupec]:3);
            writeln;
        end;
end;

var
    matice: TMatice;
    prvni, posledni: integer;

begin
    matice := vygeneruj(4, 5);
    vypis(matice);

    prvni    := secti_sloupec(matice, low(matice[0]));
    posledni := secti_sloupec(matice, high(matice[0]));
    writeln('prvni    ', prvni);
    writeln('posledni ', posledni);
end.
gna
Pascal › Matice pascal
21. 4. 2018   #220474

Třeba tak, že projdeš hodnoty toho sloupce a postupně je přičteš k nějaké proměnné. Na průchod můžeš použít cyklus; třeba for.

gna
Pascal › pascal easy úlohha
20. 4. 2018   #220472

#13 ondřej
Hodnoty řádku můžeš postupně vypsat pomocí write a na konci vypsat odřádkování pomocí writeln, tak jak jsem to udělal v té první ukázce.

gna
Pascal › pascal easy úlohha
19. 4. 2018   #220458

A je to potřeba udělat u obou těch cyklů.

A pak tu proceduru volej jen jednou. Když ji spustíš podruhé, tak se ti znova spočítá součet a přičte se k původnímu výsledku (to by šlo opravit tím, že prostě r a s nejdříve vynuluješ), ale hlavně se ti vygeneruje nová matice a spočítá jiný součet.

gna
Pascal › pascal easy úlohha
19. 4. 2018   #220457

Takhle to bude fungovat (příkaz pro for bude ten begin...end), ale za begin nemusíš mít ten středník. To zase bude prázdný příkaz (který ale tady nevadí). Prostě jen z toho původního kódu umaž ten středník. Teď je to jako bys to měl takhle: 

for i:=1 to m do
	for j:=1 to n do
	begin
		; // zbtecny prazdny prikaz
		a[i,j]:=random(99)+1;
	end;
gna
Pascal › pascal easy úlohha
19. 4. 2018   #220455

za tím for...do umaž ten středník. Takhle ten středník (prázdný příkaz) znamená příkaz, který se v tom cyklu má dělat (takže to nedělá nic) a ten blok begin...end za ním se provede až potom a jen jednou.

randomize vyhoď před ten cyklus, jinak ti random bude vracet pořád stejnou hodnotu.

a nakonec v hlavním programu musíš tu svoji proceduru spustit (...readln...; radek; ...writeln...)

gna
Pascal › pascal easy úlohha
19. 4. 2018   #220451

Ve Free Pascalu by to mělo fungovat. Ta úloha nejspíš vychází z toho, co bys měl znát, takže toto asi není potřeba vysvětlovat a jen si to podle potřeby upravíš. Když napíšeš, co konkrétně nevíš nebo nechápeš, tak dostaneš konkrétní radu.

Náhodné číslo můžeš získat funkcí random a lichost čísla zjistit funkcí odd (nebo i tím operátorem mod atd.)

gna
Pascal › pascal easy úlohha
19. 4. 2018   #220449

A co konkrétně nevíš? Matice bude asi dvourozměrné pole. Projdeš jeho prvky a posčítáš je podle toho na jakém jsi řádku. Nenapsal jsi o jaký Pascal jde, ale toto by mělo na rozjezd stačit:

var
    a: array of array of integer;
    m, n: integer;
    i, j: integer;

begin
    m := 15;
    n := 15;
    setlength(a, m, n);  
    for i:=0 to m-1 do
    begin
        for j:=0 to n-1 do
        begin
            a[i,j]:= (i * n + j) mod 99 + 1;
            write(a[i,j]:3);
        end;
        writeln;
    end;
end.
gna
C / C++ › Ako vyriesit rovnicu
15. 4. 2018   #220411

Nevím, jestli to k jde nějak spočítat, ale určitě ho jde najít. Když za něj dosadíš nějakou hodnotu a výsledek nesedí, tak aspoň poznáš, jestli by mělo být větší, nebo menší. Půlením intervalu ho tak s omezenou přesností můžeš poměrně rychle najít.

Tady jsem to někomu pro jednodušší funkci ukazoval v Pythonu.

gna
JavaScript, AJAX, jQuery › Jak předat text parametrem f…
13. 4. 2018   #220388

Teď koukám, že to vlastně už peter napsal.

gna
JavaScript, AJAX, jQuery › Jak předat text parametrem f…
13. 4. 2018   #220387

První věc je ten vygenerovaný kód. Pokud je druhý parametr string, tak by měl být uzavřený v apostrofech nebo uvozovkách, vnitřní uvozovky a speciální znaky escapnuté, apod. podle syntaxe JS. Celé je to atribut v HTML, takže zase podle toho kódovat.

A pak ta funkce pro odesílání. Data v URL se zase nějakým způsobem kódují, nemůžeš to tam jen tak frknout.

Celkově se to takhle nedělá. Na odesílání dat jsou formuláře.

gna
JavaScript, AJAX, jQuery › Javascript předání ID záznam…
13. 4. 2018   #220373

Do POSTu to můžeš dát, ale jde o to, že všechna data jsou editovatelná a na straně serveru je vždycky musíš nějak zkontrolovat.

A když už tam máš nějaký systém práv, podle kterého určuješ záznamy k zobrazení, tak musí jít stejně zkontrolovat jestli uživatel chce mazat něco mimo to, co může.

gna
JavaScript, AJAX, jQuery › Javascript předání ID záznam…
12. 4. 2018   #220362

Netuším, jak máš ta práva řešená, ale je nesmysl, že by bylo složité před operací zkontrolovat, jestli ji uživatel smí provést.

Taky bacha na to, že v tom id může být mimo id cizího záznamu i cokoliv jiného, co úplně změní ten sql příkaz. To se dnes řeší pomocí prepared statements.

$stmt = $mysqli->prepare("DELETE FROM zavady WHERE id = ?");
$stmt->bind_param('i', $id);
$stmt->execute();
gna
C / C++ › Lehký úkol, který nezvládám
12. 4. 2018   #220344

#12 Kit
Já ti rozumím, ale šlo mi právě o tu terminologii, že zadání sestavit funkci nemusí znamenat "skutečnou" funkci.

To jeho řešení vypadá, že složené typy nezná, takže by vrácení dvou hodnot asi řešil právě přes dva parametry.

gna
C / C++ › Lehký úkol, který nezvládám
10. 4. 2018   #220328

#4 Mrcrywolf
Nechápu, s oběma ukazateli se tam přece pracuje. Jestli vás to učí pořádně, tak tam místo nich budeš mít reference.

gna
C / C++ › Lehký úkol, který nezvládám
10. 4. 2018   #220327

#3 Kit
Céčko má jen funkce (a funkce nefunkce :))

gna
C / C++ › Lehký úkol, který nezvládám
10. 4. 2018   #220324

Nemyslím si, že byste dostali úkol na něco, co jste neprobírali. Pravděpodobně budeš mít v poznámkách něco takového:

void spocitej(int **matice, int m, int n, int *vysledek)
{
    int soucet = 0;
    for (int i = 0; i < m; ++i)
        for (int j = 0; j < n; ++j)
            soucet += matice[i][j];
    *vysledek = soucet;
}
gna
PHP › getOS()
10. 4. 2018   #220323

Jestli je to něco podle user agenta, tak W10 jsou NT 10.0.

Windows 11 pokud vím nejsou a nebudou.

gna
C / C++ › Winsock 2 - Divné znaky ve z…
9. 4. 2018   #220293

   

recvBufString = std::string(recvBuf, iResult);
gna
Python › Reakce na překročení teploty
9. 4. 2018   #220290

temp_calibrated se ti někde aktualizuje?

gna
MySQL › varchar parametr u stored pr…
9. 4. 2018   #220289
gna
C / C++ › nacitanie velmi velkeho cisla
6. 4. 2018   #220261

Dokud je druhý znak stringu nenulový, tak je string delší než 1 znak. (Za předpokladu, že se něco načetlo. Kontrolu chyb jsem vynechal.)
To pole má 100 znaků, 99 ve scanfu znamená, že se má načíst maximálně 99 znaků (+ ukončovací nula).

gna
C / C++ › nacitanie velmi velkeho cisla
6. 4. 2018   #220259

   

char cislo[100];

scanf("%99s", cislo);

while (cislo[1]) {
	unsigned soucet = 0;
	for (int i = 0; cislo[i]; i++)
		soucet += cislo[i] - '0';
	sprintf(cislo, "%u", soucet);
}

printf("%s\n", cislo);
gna
C / C++ › nacitanie velmi velkeho cisla
6. 4. 2018   #220254

Podle toho, co s tím chceš dělat. Do standardních číselných datových typů se to samozřejmě nevejde, ale není problém to načíst jako string. Jestli s tou hodnotou chceš provádět výpočty, tak můžeš použít třeba GMP.

gna
PHP › Mám problém php - mysql
5. 4. 2018   #220246

Hlásí to chybnou syntaxi poblíž '20'. To bude toto:

DESC LIMIT , 20

Zdá se, že to produkuješ tady: 

ORDER BY " . $order_field . " " . $order_type . " LIMIT " . $start . ", " . $limit);

Proměnná $start je asi prázdná.

gna
Matematika › Teplota chleba
4. 4. 2018   #220211

Původní teplota toho těla je 37 stupňu, aktuální 30 a teplota okolí 20. Hlavně, že sis ten vzorec tak pěkně našel.

Ten chleba bude mít 30 stupňů po hodině, jak už Kit napsal.

gna
PHP › PHP správné napojení 2 kodu…
4. 4. 2018   #220208

   

<?php
$datafile = 'data.txt';

if (isset($_POST['index']) && is_array($_POST['index'])) {
    $radky = file($datafile);

    foreach ($_POST['index'] as $hodnota) {
        $radky[$hodnota] = '';
    }

    $text = join('', $radky);
    file_put_contents($datafile, $text);
}

$radky = file($datafile);
$lines = count($radky);
echo "Počet řádků v souboru: $lines<br/>\n";

echo "<form method=\"post\">\n";
echo "<table>\n";
for ($i = 0; $i < count($radky); $i++) {
    $row = explode("|", $radky[$i]);

    echo "<tr>\n";
    echo "<td><input type=\"checkbox\" name=\"index[]\" value=\"", $i, "\"/></td>\n";
    echo "<td>", ($i + 1), ".</td>\n";
    echo "<td>", trim($row[0]), "</td>\n";
    echo "<td><a href=\"mailto:", trim($row[1]), "\">", trim($row[1]), "</a></td>\n";
    echo "<td>", trim($row[2]), "</td>\n";
    echo "<td>", trim($row[3]), "</td>\n";
    echo "<td>", trim($row[4]), "</td>\n";
    echo "<td>", trim($row[5]), "</td>\n";
    echo "<td>", trim($row[6]), "</td>\n";
    echo "<td>", trim($row[7]), "</td>\n";
    echo "<td>", trim($row[8]), "</td>\n";
    echo "<td>", trim($row[9]), "</td>\n";
    echo "</tr>\n";
}
echo "</table>\n";
echo "<input type=\"submit\" name=\"sub\" value=\"Smazat označené\"></input>\n";
echo "</form>\n";

?>
gna
PHP › PHP správné napojení 2 kodu…
4. 4. 2018   #220207

Tak vyházej všechny ty kraviny, kterým nerozumíš a pak si dej na každý druhý řádek informační echo a podívej se co to dělá.

Podle mě to nefunguje vůbec, protože tam máš $file_put_contents s dolarem.

gna
Matematika › Rychlost auta
30. 3. 2018   #220182

Ano.

gna
C / C++ › QT - Tvorba hry
27. 3. 2018   #220146

Vždyť už tam používáš funkci pro zjištění všech kolidujících itemů i funkci pro zjištění, jestli dva itemy kolidují. V čem je problém? 

for (int i = 0; i < meteory.length(); ++i) {
	for (int j = 0; j < naboj.length(); ++j) {
		if (meteory[i]->collidesWithItem(naboj[j])) {
			// bum
		}
	}
}
gna
PHP › ako vytvorit strom z pola
26. 3. 2018   #220127

   

class Node
{
	public $data = '';
	public $children = [];
}
gna
PHP › ako vytvorit strom z pola
26. 3. 2018   #220126

   

$nodes = [];
$root = $nodes[0] = new Node();
foreach ($arr as $a) {
	list($id, $level, $pid, $data) = $a;
	if (!isset($nodes[$id])) $nodes[$id] = new Node();
	if (!isset($nodes[$pid])) $nodes[$pid] = new Node();

	$node = $nodes[$id];
	$node->data = $data;

	$parent = $nodes[$pid];
	$parent->children[] = $node;
}

function rdump($nodes) {
	foreach ($nodes as $node) {
		echo $node->data . "\n";
		rdump($node->children);
	}
}

rdump($root->children);
gna
PHP › ako vytvorit strom z pola
26. 3. 2018   #220117

Takže to chceš seřadit podle toho stringu? usort řadí podle zadané porovnávací funkce.

usort($arr, function($a, $b) {
	return strcmp($a[3], $b[3]);
});
gna
C / C++ › Bitmap Button s vlastním tex…
26. 3. 2018   #220116

Ale to asi nebude to, co chceš. Tak ukaž, jak to překresluješ.

 

 

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