Diskuze: ukol ve skole
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.
#include<stdlib.h>
int main(void)
{
int x;
float vysl = 0, iden = 0;
float *pole_p;
pole_p = (float*)malloc(sizeof(float) *5);
if(pole_p == NULL)
{
exit(1);
printf("Nedostatek pameti!");
}
for(x = 3; x < 7; x++)
{
*(pole_p + x) = x + 1;
}
for(x = 3; x < 7; x = x + 2)
{
iden = *(pole_p + x);
vysl = vysl + iden;
}
printf("vypocetedek je: %f", vysl);
free(pole_p);
return 0;
}
Float je zbytočný, veď to máš naplniť celými číslami.
int main()
{
int i;
float soucet;
float *pole;
pole = (float *)malloc(sizeof(float) * 5);
for (i = 0; i < 5; i++)
*(pole + i) = i + 3.0;
soucet = 0.0;
for (i = 1; i < 5; i += 2)
soucet += *(pole + i);
printf("soucet je: %f", soucet);
free(pole);
return 0;
}
Ahoj, snad jsem to pochopil správně a povede se mi ti to troche osvětlit
Racionální číslo je číslo které lze zapsat ve tvaru a/b, ty máš čísla dána od 3 do 7 ( celá čísla -> použij int )
V cyklech máš blbě meze, paměť si alokouješ pro pět prvku a to teda pole[0] až pole[4]. Pak tam plníš pole[3] až pole[6].
Následně máš sečíst hodnoty na lichých pozicích což je dle mého pole[1] a pole[3].
Jelikož nemůžeš používat indexaci stačí si uvědomit, že pole[1] = *(pole_p + 1).
Když si rozepíšeš řešení tak máš hodnoty 3,4,5,6,7 a máš sečíst 4 a 6. Výsledkem by teda mělo být číslo 10.
Snad teď budeš chytřejší, pokud ani tak ne.
Ospravedlňujem sa. Neuvedomil som si čo sú racionálne čísla. Má tam byť pole desatinných čísiel.
Zobrazeno 6 zpráv z 6.