Diskuze: Vypis lodiek v C
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.
Koukl jsem náhodně na kus kódu
int PoziciaVHracomPoli(int x, int y)
{
switch (x)
{
case 2: x2 = 1; break;
case 4: x2 = 2; break;
case 6: x2 = 3; break;
case 8: x2 = 4; break;
case 10: x2 = 5; break;
case 12: x2 = 6; break;
case 14: x2 = 7; break;
case 16: x2 = 8; break;
case 18: x2 = 9; break;
case 20: x2 = 10; break;
}
switch (y)
{
case 1: y2 = 1; break;
case 2: y2 = 2; break;
case 3: y2 = 3; break;
case 4: y2 = 4; break;
case 5: y2 = 5; break;
case 6: y2 = 6; break;
case 7: y2 = 7; break;
case 8: y2 = 8; break;
case 9: y2 = 9; break;
case 10: y2 = 10; break;
}
return x2, y2;
}
nešlo by to napsat třeba takhle?
int PoziciaVHracomPoli(int x, int y)
{
x2 = x/2;
y2 = y;
return x2, y2;
}
Tak jsem asi 2o min zápasil s tím, abych to vůbec nějak zkompiloval každopádně to dělá přesně
to, co jsem si myslel. Jen ti zase vytknu tady tu část, která je podle tebe
problémová.
int i = 0;
while (i<5){
X[i] = random_number(2, 20);
Y[i] = random_number(2, 10);
gotoxy(25, 25 + i );
printf("%d, %d", X[i], Y[i]);
if ((X[i] % 2) == 0)
{
gotoxy(X[i], Y[i]);
printf("*");
}
else if (i == 0)
{
i = 0;
}
else
{
i--;
}
i++;
}
Tu střední část podmínky fakt nechápu ... Je i 0? jestli ano, tak jí
přiřadím znova 0
celé
bych to zredukoval aspoň takhle
int i = 0;
while (i<5){
X[i] = random_number(2, 20);
Y[i] = random_number(2, 10);
/*gotoxy(25, 25 + i );
printf("%d, %d", X[i], Y[i]);*/
if ((X[i] % 2) == 0)
{
gotoxy(X[i], Y[i]);
printf("*");
i++;
}
}
No a k problému, náhodné číslo generuješ podle času. Když to
krokuješ tak je delay mezi intrukcemi tak 1 sekunda, takže ti to generuje
normálně, ale když to necháš běžet, tak ti to vygeneruje stejná čísla
- když si odkomentuješ tu část, tak to sám uvidíš
Zobrazeno 4 zpráv z 4.