Pereiti prie turinio

c++ uždavinys. Patiekalai


Rekomenduojami pranešimai

Sveiki, niekaip neišsprendžiu paprasto uždavinuko, tiksliau nemoku užrašyti C++ kalba. Gal kas pagelbėtumėt?

 

Pirmąjį patiekalą pietums mama gamina t1 minučių, antrąjį – k minučių ilgiau negu pirmąjį, trečiąjį – k minučių ilgiau negu antrąjį ir t.t. Parašykite programą, skaičiuojančią, kiek patiekalų n suspės pagaminti mama, kol vaikai sugrįš iš lauko, jei pietus virti pradėjo dabar, o vaikai iš lauko grįžta po t minučių. Visi duomenys yra sveikojo tipo.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pačią programą galvojau parašyti,tačiau tai užtruktu man perilgai,nei rašyti metodą kaip tai gali apskaičiuoti.

 

turi išgauti 3 kintamuosius su funkcija cin arba kitomis: t1,k,t;

 

Turi susikurti kintamajį n; //Patiekalams..

 

Turi susikurti kintamaji truks; //Lyginimui

 

Susikurk kintamajį boalen'o tipo tesimas = true;

Na ir poto tiesiog ciklą daryk while(tesimas)

{

if(t >= ( ( n * k ) + t1 ) )

{

n++;

t = t - ( n * k ) + t1 );

 

}

else{

tesimas = false;

}

 

}

 

Manau supratai esmę :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pačią programą galvojau parašyti,tačiau tai užtruktu man perilgai,nei rašyti metodą kaip tai gali apskaičiuoti.

 

turi išgauti 3 kintamuosius su funkcija cin arba kitomis: t1,k,t;

 

Turi susikurti kintamajį n; //Patiekalams..

 

Turi susikurti kintamaji truks; //Lyginimui

 

Susikurk kintamajį boalen'o tipo tesimas = true;

Na ir poto tiesiog ciklą daryk while(tesimas)

{

if(t >= ( ( n * k ) + t1 ) )

{

n++;

t = t - ( n * k ) + t1 );

 

}

else{

tesimas = false;

}

 

}

 

Manau supratai esmę :)

 

Nelabai. Paprasčiau niekaip neišeina? Čia su for ciklu man atrodo reikia.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

for ciklo teisingai cia neina uzrasyti, nes cia yra do...while logika. ne c++, bet:

int liko_laiko // kol gris vaikai
int gamybos_laikas // pradedi su t1 laiku
int k
int patiekalas = 0

while (liko_laiko >= 0) do {
  gamybos laikas = gamybos_laikas + (patiekalas * k)
  liko_laiko = liko_laiko - gamybos_laikas
   patiekalas = patiekalas + 1
}

Redagavo Imago
Nuoroda į pranešimą
Dalintis kituose puslapiuose

#include <iostream>
using namespace std;

int main()
{
   int t1, // pirmojo patiekalo gaminimo laikas
       k, // kiek ilgiau negu pirmasis
       t; // uþ kiek minučių grįš vaikai
   int n = 0; // suma
   cout << "įveskite pirmojo patiekalo gaminimo laiką: ";
   cin >> t1;
   cout << "įveskite, kiek minučių ilgiau reikės pagaminti kitiems patiekalams: ";
   cin >> k;
   cout << "įveskite už kiek laiko grįš vaikai: ";
   cin >> t;
   int i = t; // ciklo kintamasis, kuriam iš pradžių priskiriam visą laiką
   while(i >= 0) // kol laikas nesibaigs
   {
       if(i - (t1 + k*n) >= 0) // jei iš likusio laiko atimsim patiekalo gaminimo laiką, ar jis bus daugiau už 0
       {
           i -= (t1 + k*n); // atimam patiekalo gaminimo laiką
           n++; // sumą padidinam vienetu
       }
       else i = -1; // jei nespės, priskiriam -1, kad baigtųsi ciklas
   }
   cout << "Mama suspės pagaminti " << n << " patiekalus.";
   return 0;
}

Labai ačiū :)

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ą...