Pereiti prie turinio

Rekomenduojami pranešimai

Sveiki visi gal galite padėti isspresti sia uzduoti?

 

uzduotis:

Atlikdami projektinį darbą, mokiniai pasvėrė visų mokyklos mokinių kuprines.

Parašykite programą, kuri apskaičiuoja, kelių mokinių kuprinės yra du ir daugiau kartų lengvesnės už

sunkiausią kuprinę.

Atlikdami šią užduotį, nenaudokite masyvų ar kitų duomenų struktūrų.

 

Duomenys pateikiami tekstiniame faile U1.txt.

Pirmoje eilutėje yra įrašytas skaičius x (1<=x<=100), nurodantis, kelių mokinių kuprinės buvo

pasvertos.

Kitose eilutėse yra įrašyta po vieną skaičių, nurodantį kuprinių masę gramais.

 

 

Pradiniai duomenys:

6
5000
4500
5500
3500
10000
5650

 

tekstinio failo pavadinimas U1.txt cia bus pradiniai duomenys

 

Problemos: Niekaip neiseina padaryti kad apskaiciuotu kupriniu skaiciu kurios yra 2 kartus lenvesnes uz sunkiausia

 

 

Mano kodas padarytas:

program Kuprines1;
var txt : text;
   x,i,n,sunkiausia,lengvesne : integer;

begin
assign(txt, 'U1.txt');
Reset(txt);
ReadLn(txt, n);
sunkiausia:=0;

for i:=1 to n do   //sunkiausios radimas
begin
ReadLn(txt, x);
if x>sunkiausia then sunkiausia:=x;
end;
WriteLn('Sunkiausia kuprine yra kuri sveria: ',sunkiausia,'g');



ReadLn;
end.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Elementarus uždavinys. Paskalio sintaksės nežinau.

1. Iš failo paimi visas reikšmes ir pašalini pačią pirmą.

2. Surandi didžiausią skaičių. Paskalis gal turi kokią MAX funkciją, ieškoti google reiktų.

3. Gautą MAX skaičių dalini iš 2 ir prilygini reikšmei.

4. Suki for ciklą: paimti skaičiai iš failo mažiau arba lygu <= naujai reikšmei, kur buvo prilyginta 3 punkte.

5. Ciklo metu jei skaičius iš failo mažiau arba lygu už naują reikšmę vis pridedi po vieną.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Elementarus uždavinys. Paskalio sintaksės nežinau.

1. Iš failo paimi visas reikšmes ir pašalini pačią pirmą.

2. Surandi didžiausią skaičių. Paskalis gal turi kokią MAX funkciją, ieškoti google reiktų.

3. Gautą MAX skaičių dalini iš 2 ir prilygini reikšmei.

4. Suki for ciklą: paimti skaičiai iš failo mažiau arba lygu <= naujai reikšmei, kur buvo prilyginta 3 punkte.

5. Ciklo metu jei skaičius iš failo mažiau arba lygu už naują reikšmę vis pridedi po vieną.

 

Negalima naudoti dalybos metodo, buvau pamirses pasakyti

o stai kodas logiskai atrodo geras bet vietoj 3 man grazina reiksme 0

kodas:

program Kuprines1;
var txt : text;
   y,x,i,n,sunkiausia,lengvesne : integer;

begin
assign(txt, 'U1.txt');
Reset(txt);
ReadLn(txt, n);
sunkiausia:=0;

for i:=1 to n do   //sunkiausios radimas
begin
ReadLn(txt, x);
if x>sunkiausia then sunkiausia:=x;
end;
WriteLn('Sunkiausia kuprine yra kuri sveria: ',sunkiausia,'g');

ReadLn(txt, n);
for i:=1 to n do   // kiek yra lenvesniu
begin
ReadLn(txt, y);

if y*2 <=sunkiausia then lengvesne := lengvesne + 1;
end;

close(txt);
WriteLn('Kupriniu skaicius kurios lengvesnes 2 kartus uz sunkiausia: ',lengvesne);
ReadLn;
end.     

 

Kas cia blogai yra?

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.

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