Diskuze: obraceni pole v C?
V předchozím kvízu, Online test znalostí C++, jsme si ověřili nabyté zkušenosti z kurzu.

Člen

Zobrazeno 6 zpráv z 6.
//= 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.
Podle mě to jde vyřešit pouze další proměnnou:
#include <stdio.h>
#include <string.h>
#define poc 15
int main() {
int i;
int ii;
int pole[poc] = {10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300, 400};
int obracene_pole[poc];
printf("znaky z pole: ");
for (i = 0; i <= poc; i++) {
printf("%i ", pole[i]);
}
printf("\nobracene znaky: ");
for(i=poc, ii=0;i>=0;i--,ii++){
obracene_pole[ii]=pole[i];
}
for (i = 0; i <= poc; i++) {
printf("%i ", obracene_pole[i]);
}
return 0;
}
Snorlax, ty si vytvoril nové pole, ale ja si myslím, že požiadavka je
otočiť to isté pole.
Možno takto nejak:
#include <stdio.h>
#define POCET 21
/** funkcia vymeni navzajom obsah pointerov **/
void vymen_obsah_pointerov(int *p_x, int *p_y)
{
int pom;
pom = *p_x;
*p_x = *p_y;
*p_y = pom;
}
/** funkcia otoci pole intov hore nohami **/
void otoc_pole(int pole[], int pocet_prvkov)
{
int i, j;
// obsah prveho pointeru sa vymeni za obsah posledneho a tak dalej
for (i = 0, j = pocet_prvkov - 1; i < pocet_prvkov / 2; i++, j--) {
vymen_obsah_pointerov(&pole[i], &pole[j]);
}
}
int main()
{
int i, pole[POCET];
printf("Vytvorim pole o %d prvkoch a potom ho vypisem:\n", POCET);
for(i = 0; i < POCET; i++)
pole[i] = i + 1;
for(i = 0; i < POCET; i++)
printf(" %d,", pole[i]);
printf("\n\nOtocim to iste pole a vypisem ho:\n");
otoc_pole(pole, POCET);
for (i = 0; i < POCET; i++)
printf(" %d,", pole[i]);
putchar('\n');
return 0;
}
Ahoj, neumí tady někdo v raptoru? Právě v něm začínám a nevím si
rady s jednou úlohou. Za každý nápad budu rád. Díky moc
Zadání:
Slovo "raptor" mi pripomína Jurský park.
Ak je to nejaký jazyk, tak sorry, tu je sekcia pre c/c++.
Takže je to jazyk, pre mňa novinka.
Zobrazeno 6 zpráv z 6.