Diskuze: 2.hý ukol
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 14 zpráv z 14.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.


Jednoduše si vem, že znaky jsou definované přes ascii tabulku, takže
když teoreticky zadáš char c=5; tak c bude poté znak který se nachází v
ascii tabulce na této pozici. Pokud i po tomhle ti to nedojde, tak napiš a
třeba ti tu někdo poradí víc a nebo ti to někdo napíše
ale skus to první sám 
Ja by som najprv upravil tvoj kód asi takto:
#include <stdlib.h>
#include <stdio.h>
int **vytvor_pole()
{
int **p_pole, i, j, k = 1;
p_pole = (int **) malloc(3 * sizeof(int *));
for (i = 0; i < 3; i++)
p_pole[i] = (int *) malloc(3 * sizeof(int));
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
p_pole[i][j] = k;
k += 2;
}
}
return(p_pole);
}
int main(void)
{
int **p_pole = vytvor_pole(), i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++)
printf("%d, ", p_pole[i][j]);
}
getchar();
}
Tvuj priklad:
array[i][j] = 1 + 2 * (3 * i + j)
Kamaraduv:
array[i][j] = 'a' + 6 * i + j
Priznám sa, že tomu čo si napísal vôbec nerozumiem. 
Myslíš dať to do cyklu i, j? Pochopil som to?
To je kod, ktery plni pole podle hodnot v zadani, jednou liche hodnoty,
podruhe abeceda.
Ano, staci to dat do cyklu.
Veľmi pekné, takto by ma to nikdy nenapadlo. :[
aha
a já se snažil
trochu jinak
... #include
<stdlib.h>
#include <stdio.h>
int main(int argc, char **argv)
{
int i, j;
char **pole;
pole = alokace();
for (i = 0; i < 3; i++)
{
for (j = 0; j < 6; j++)
{
printf(" %s ", pole[i][j]);
}
printf("\n");
}
return 0;
}
char alokace()
{
char **array;
char a[] = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'ch', 'i', 'j', 'k', 'l',
'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z','0'};
int i, j, x = 0;
array = malloc(3 * sizeof(char *));
if (array == NULL)
{
printf("out of memory\n");
exit(1);
}
for (i = 0; i < 3; i++)
{
array[i] = malloc(6 * sizeof(char));
if (array[i] == NULL)
{
printf("out of memory\n");
exit(1);
}
}
for (i = 0; i < 3; i++, x++)
{
for (j = 0; j < 6; j++, x++)
{
array[i][j] = a[x];
}
printf("\n");
}
return array;
}
takže znova
Návratová hodnota funkcie má byť pointer na pole. V prvom príklade tam
máš pointer na int (dáva to varning, aj keď to funguje).
V prípade pola char-ov ti to fungovať nebude.
jj už pracuju na tom, ale jsem z toho zmatený. s intama mi to vždycky jde
lépe. Ale dneska už jsem trochu mimo a vím, že je to lehké, ale asi to
nedokážu dotvořit.
Ale mockrát díky, za úpravy a rady.
#include <stdlib.h>
#include <stdio.h>
char **vytvor_pole()
{
char **p_pole, i, j;
p_pole = (char **) malloc(3 * sizeof(char *));
for (i = 0; i < 3; i++)
p_pole[i] = (char *) malloc(6 * sizeof(char));
for (i = 0; i < 3; i++) {
for (j = 0; j < 6; j++) {
p_pole[i][j] = 'a' + 6 * i + j;
}
}
return p_pole;
}
int main(void)
{
char **p_pole = vytvor_pole(), i, j;
for (i = 0; i < 3; i++) {
for (j = 0; j < 6; j++)
printf("%c ", p_pole[i][j]);
putchar('\n');
}
getchar();
}
Je vlastne úplne jedno či pracuješ s int-ami alebo s char-mi.
Pri char si treba uvedomiť len jedno:
'a' + 1 = 'b'
atď
Pozri si ASCII tabuľku, tam máš napísané aj decadické hodnoty
jednotlivých znakov.
Ty kráso, já jsem vůůůl... jasné. a já vymýšlím kraviny. Jak jsem
říkal, že to bylo lehké... Mockrát dík, konečně už vím jak s
charem...
Ještě jednou mockrát dík.
Prosím, dávejte své kódy do:
[*code]
Sem vložte kód /bez hvězdičky, samozřejmě
[*/code]
Zobrazeno 14 zpráv z 14.