Pereiti prie turinio

Du ciklai paskalyje, padekit.


Rekomenduojami pranešimai

Sveiki, turiu problema. Faile surasyti tokie duomenys :

3

3 200 500

5 200 200 150 300

4 150 200 150

 

Pirma eilute - n, tai autobusu skaicius.

Antra ir t.t. eilute - n2, tai kiek stoteliu sustoja autobusas, ir atstumas tarp ju.

 

Gal kas galit sudaryti paprasta funkcija kuri skaitytu ir i masyva kauptu tuos atstumus ? Kazkas panasaus i tai turetu but :

 

begin

Assign (d,'troleibusai.txt');

Reset(d);

Readln(d,n);

for i:=1 to n do

readln(d,n2,mas ????)

end;

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Pagal mane dar antrą ciklą įsivesk, nuskaitęs kiekvienos eilutės pirmą skaičių atimk viena ir suk tiek kartų jį. Pamėginsiu tuoj pats paexpermentuot.

Pagal idėją turėtų būti taip, bet kazka man cia pascalis pievina

var mas : array[0..100] of integer;
   f : text;
   i,j,n1,n : integer;
begin
  assign(f, 'troleibusai.txt');
  reset(f);
  readln(f,n);
  for i:=1 to n do
  begin
     readln(f,n1);
     for j:=i to n1 do
         read(f,mas[j]);
  end;
end.

Redagavo w1per
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Idėja pas w2per gera, tik klaida palikta :) Va pataisiau:

var mas : array[0..100] of integer;
   f : text;
   i,j,n1,n : integer;
begin
  assign(f, 'troleibusai.txt');
  reset(f);
  readln(f,n);
  for i:=1 to n do
  begin
     read(f,n1);  //čia klaida nes perkelia į kita eilute
     for j:=i to n1 do
         read(f,mas[j]);
     readln(f);  //dėl šito nežinau, turėtų veikti ir be jo, jei mes klaidą nutrink
  end;
end.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Idėja pas w2per gera, tik klaida palikta :) Va pataisiau:

var mas : array[0..100] of integer;
   f : text;
   i,j,n1,n : integer;
begin
  assign(f, 'troleibusai.txt');
  reset(f);
  readln(f,n);
  for i:=1 to n do
  begin
     read(f,n1);  //čia klaida nes perkelia į kita eilute
     for j:=i to n1 do
         read(f,mas[j]);
     readln(f);  //dėl šito nežinau, turėtų veikti ir be jo, jei mes klaidą nutrink
  end;
end.

ta pati klaida, beje jei nebus readln tai niekad nekeis elutės, ar ne?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Radau pilną uždavinio sąlygą:

 

Troleibusai

Tekstinio failo Troleibusai.txt pirmoje eilutėje įrašytas miesto troleibusų skaičius n. Kitose eilutėse įrašyta informacija apie kiekvieną troleibusą: pirmasis skaičius rodo, keliose stotelėse troleibusas sustoja, o tolesni – atstumus (metrais) tarp gretimų troleibuso maršruto stotelių.

 

Parašykite programą, kuri apskaičiuotų ir į rezultatų failą Marsrutai.txt įrašytų kiekvieno troleibuso maršruto ilgį.

 

Pradiniai duomenys

3

3 200 500

5 200 200 150 300

4 150 200 150

 

Rezultatai

700

850

500

Tai KTU programavimo pamokėlių antro etapo užduotis (iškart pasirodė matyta :)). Užduotis tikrai nėra sunki. Vėliau įkelsiu sprendimą, dabar dar kitų darbų yra ;)

Redagavo aiarasb
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Prašom, pilnai veikianti programa :):

program Troleibusai;
var f: text;
i, o, n, st, x: integer;
l: array[1..1000] of integer;
begin
 assign(f, 'Troleibusai.txt');
 reset(f);
 readln(f, n);
 for i:=1 to n do
  begin
read(f, st);
for o:=1 to st-1 do
	begin
 	read(f, x);
 	l[i]:= l[i]+ x;
	end;
  end;
 close(f);
 assign(f,'Rezultatai.txt');
 rewrite(f);
 for i:=1 to n do
  writeln(f, l[i]);
 close(f);
end.

Nuoroda į pranešimą
Dalintis kituose puslapiuose
  • po 2 mėnesių...

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