eMatematikas Registruotis Ieškoti

Problema sprendziant c++ uzdavini su for ciklu

Informatika   Peržiūrų skaičius (332)

Sveiki, turiu problemu sprendziant uzdavini su for ciklu, labai nesamoningai gavosi, tai gal jus galite uzvesti ant kelio kaip tinkamai uzrasyti programa?

Afrikoje sulaukęs 65 metų mirė afrikinis savanos dramblys. Jis svėrė 7,5
tonos. Netrukus tai suuodė hiena. Pirmąją dieną ji suėdė arba pasislėpė mėsos tiek, kiek sveria pati.
Hienos vidutiniškai sveria nuo 50 iki 87 kg. Antrąją dieną hienų buvo jau 4, trečiąją 9 ir t.t. (1, 4, 9,
16, 25, 36, 49). Kelioms dienoms dramblio mėsos uţteks visoms atėjusioms hienoms? Kiek bus likę
dramblio likučių po savaitės, jeigu hienos jo nespės sudoroti per 7 dienas. Laikykite, kad visos
atėjusios hienos svėrė vienodai.

Duomenys - hienos svoris - 53kg
Atsakymas - Liko 80kg mesos, dienu skaicius - 7.


#include <iostream>
#include <iomanip>
#include <fstream>
#include <cmath>
using namespace std;
const char SF [] = "Duomenys.txt";
const char RF [] = "Atsakymai.txt";
int main()
{ int h; /// hienos svoris
  int sk; /// hienu skaicius
  int d=0; /// dienu skaicius
  int svoris=7500; /// dramblio svoris
  int lik=0; /// likes dramblio mesos svoris
  int i;

  ifstream sf (SF);
  ofstream rf (RF);

  sf >> h;
  for (int i=1; i<=49; i++ )
  {
      while (sk>0)
      sk= (sk+1)*(sk+1);
      d++;
  }

  lik = h *sk;

  if (sk<7500) rf << "Liko" << lik << "dramblio mesos, dienu skaicius" << d << endl;
  else rf << "Dramblio mesos neliko, dienu skaicius" << d << endl;

    return 0;
}


Labai nevykusi programa, taciau niekaip negaliu ismastyt nuo ko geriausia pradet

0


#include <iostream>
#include <iomanip>
#include <fstream>
#include <cmath>
using namespace std;
const char SF [] = "Duomenys.txt";
const char RF [] = "Atsakymai.txt";
int main()
{ int h; /// hienos svoris
  int sk = 1; /// hienu skaicius
  int d=0; /// dienu skaicius
  int svoris=7500; /// dramblio svoris
 
  sf >> h;
  while (svoris >= h*sk && d < 7){
      svoris -= h*sk;
      d++;
      sk = pow(d+1,2);
  }


  if (svoris>0){
      rf << "Liko" << svoris << "dramblio mesos, dienu skaicius" << d << endl;
  }
  else {
      rf << "Dramblio mesos neliko, dienu skaicius" << d << endl;
  }

    return 0;
}


Paskutinį kartą atnaujinta 2020-11-05

0

Jei su for tai:

  for(d ; d<7; d++){
          sk = pow(d+1,2);
          if (svoris >= h*sk ){
            svoris -= h*sk;
          }
          else{
            break;
          }
      }

Paskutinį kartą atnaujinta 2020-11-05

0

Nors ten gal dar rezultatus reiketu patvarkyti, nes keliu dalyku klausia, bet manau pats sugebesi

0

Dekui uz pagalba !

0

Gal galite padėti su šiais uždaviniais. Žinau, jie nėra sudėtingi, bet labai reiktų pagalbos, sunku suvokti. ačiūūū
1. Parašykite programą, kuri suskaičiuotų skaičių nuo 1 iki 100 sumą s = 1 + 2 + 3 ...+ 100. Pasitikrinkite. Atsakymas turi būti s = 5050.

2. Parašykite programą, kuri suskaičiuotų skaičių nuo 1 iki n sumą s = 1 + 2 + 3... + n. Pasitikrinkite. Kai n = 15, s = 120.

0

Norėdami rašyti žinutes privalote prisijungti!

Matematikos testai www.ematematikas.lt/testai Pasikartok matematikos temas spręsdamas online testus!