Pereiti prie turinio

Pagalba su C kalba


Rekomenduojami pranešimai

Sveiki,

 

Reikia pagalbos su uzdaviniu:

 

Rasti sritį iš 10 elementų, kurios suma būtų maksimali.

 

Masyvas sugeneruojamas atsitiktine tvarka is 200 nariu. Suma randu, masyva sugeneruoju, taciau iskilo problemos su pastumimu per viena nari i prieki ir vel skaiciavimu per nauja. Bandziau daryti su for ciklu, nesigauna, nes dar ne ypac geros C kalbos zinios. Gal galite padeti? Kaip turetu atrodyti pastumimo per viena nari ciklo pradzia.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

mano kodas atrodo taip:

 

#include <stdio.h>
#include <stdlib.h>
int mas[200]; /* apdorojamas masyvas */
int main(void) {
int i; /* masyvo indeksai */
int sum;
char ch;
rand(); /* rand inicializacija */
/* masyvo u=pildymas atsitiktiniais skaiciais */
for (i=0; i<200; mas[i++]=rand()%40+10 );
/* pirminio masyvo isvedimas */
printf("Sugeneruotas masyvas:\n");
for (i=0; i<200; printf("%3d ",mas[i++]));
putchar('\n');
putchar('\n');
sum = 0;
for(i = 0; i<200; i++)
{
if (i<10) {
	sum+=mas[i];
}
}

/* rezultatu isvedimas */
printf("Rezultatas:\n");
putchar('\n');
printf(" Maksimali suma:%3d ",sum);
printf("\n");
printf("Jeigu norite baigti?");
printf("\n");
printf("Parasykite raide T ir paspauskite Enter klavisa> ");
while ((ch=getchar()) != 'T') /* skirta isejimui is programos */
putchar (ch);
return 0

 

Bandžiau pridėti Jūsų duotą pavyzdį irgi gaunasi tas pats, apskaičiuoja tik 10 narių, keičiau vietoj 10 į i+9, tada apskaičiuoja visų masyvo narių sumą, o man reikėtų, kad atskirai skaičiuotų tarkim: 1-10 narių sumą, tada 2-11 ir t.t. jau kelios dienos kaip laužau galvą ir niekaip neina sugalvot.

 

aišku dar reikia palyginti sumas ir išrinkti dižiausią, bet aš jau šitą sugalvojęs kaip daryt:

maxsum = 0;
if (maxsum <= sum) {
maxsum = sum;
}
else {
maxsum=maxsum;
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Viskas susitvarkiau :)

 

Jei kam reikės:

 

#include <stdio.h>
#include <stdlib.h>
int mas[300]; /* apdorojamas masyvas */
int main(void) {
int i,j,k; /* masyvo indeksai */
int sum, maxsum=0;
char ch;
rand(); /* rand inicializacija */
/* masyvo u=pildymas atsitiktiniais skaiciais */
for (i=0; i<200; mas[i++]=rand()%40+10 );
/* pirminio masyvo isvedimas */
printf("Sugeneruotas masyvas:\n");
for (i=0; i<200; printf("%3d ",mas[i++]));
putchar('\n');
putchar('\n');
sum = 0;
j=0;
i=0;
k=9;
while (i<=200)
{
for (;i<k;i++)
{
   sum+=mas[i];
}
k++;
j++;
i=j;
   printf(" suma:%3d ",sum);
   printf("\n");
if (maxsum <= sum)
maxsum = sum;
sum=0;
}

/* rezultatu isvedimas */
printf("Rezultatas:\n");
putchar('\n');
printf(" Maksimali suma:%3d ",maxsum);
printf("\n");
printf("Jeigu norite baigti?");
printf("\n");
printf("Parasykite raide T ir paspauskite Enter klavisa> ");
while ((ch=getchar()) != 'T') /* skirta isejimui is programos */
putchar (ch);
return 0;
}

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prisijunkite prie diskusijos

Jūs galite rašyti dabar, o registruotis vėliau. Jeigu turite paskyrą, prisijunkite dabar, kad rašytumėte iš savo paskyros.

Svečias
Parašykite atsakymą...

×   Įdėta kaip raiškusis tekstas.   Atkurti formatavimą

  Only 75 emoji are allowed.

×   Nuorodos turinys įdėtas automatiškai.   Rodyti kaip įprastą nuorodą

×   Jūsų anksčiau įrašytas turinys buvo atkurtas.   Išvalyti redaktorių

×   You cannot paste images directly. Upload or insert images from URL.

Įkraunama...
  • Dabar naršo   0 narių

    Nei vienas registruotas narys šiuo metu nežiūri šio puslapio.

  • Prisijunk prie bendruomenės dabar!

    Uždarbis.lt nariai domisi verslo, IT ir asmeninio tobulėjimo temomis, kartu sprendžia problemas, dalinasi žiniomis ir idėjomis, sutinka būsimus verslo partnerius ir dalyvauja gyvuose susitikimuose.

    Užsiregistruok dabar ir galėsi:

    ✔️ Dalyvauti diskusijose;

    ✔️ Kurti naujas temas;

    ✔️ Rašyti atsakymus;

    ✔️ Vertinti kitų žmonių pranešimus;

    ✔️ Susisiekti su bet kuriuo nariu asmeniškai;

    ✔️ Naudotis tamsia dizaino versija;

    ir dar daugiau.

    Registracija trunka ~30 sek. ir yra visiškai nemokama.

  • Naujausios temos

  • Karštos temos

×
×
  • Pasirinkite naujai kuriamo turinio tipą...