Pereiti prie turinio

Informatikos VBE 2014


Rekomenduojami pranešimai

Uždėk stiliaus tipą PASTRAIPA.

 

Kažin, ar padės. Reikia naują stilių kurt Antraštė 1, Antraštė 2 arba Antraštė 3 pagrindu. Aišku, galima ir Nuorodos -> Turinys -> Įterpti turinį -> Parinktys ir ten sužymėt. Paprasčiau ir manau, kad geriau yra daryt su antraštiniais stiliais.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Siemet bus 3 programos ? :o

 

 

Praeitų metų bandomajame buvo 3, o valstybiniame - 2. Šiemet bandomajame buvo 2 (kadangi buvo 2 variantai bandomųjų, tai kartu gaunasi 3 programos, daryt reikėjo 2). Programoj parašyta, kad gali būt 2-3 programavimo užduotys, tai neaišku, kaip bus. Bet jei bus 3, tai čj bus vėl kokia programėlė viena už 5 taškus ;D

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Gal galit kas šiek tiek paaiškint kaip su ta bandomojo paskutine praktine užduotimi. Aš ten norėdamas pasižiūrėt ką ten ta funkcija "GaukSkaiciu" daro, pasirašiau išvedimo į ekraną funkcijas ir žiūriu kad ten gal 38 kartus gaunama daugmaž dvidešimt ar trisdešimt skaičių masyvų. Tai tą apvertimą reik padaryt tik paskutiniam masyvui ar kaip čia?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

Gal kas esate issprende 2013 "Apskritys ir miestai" progr. uzduoti?

As maciau LeX'o sprendimo buda, bet nelabai supratau vienos vietos...

 

program Noname4;
Type miestas = record
   	pav : string[20];
   	aps : string[13];
   	gyv : longint;
end;
Type apskritis = record
   	pav : string[20];
   	gyv, maz : longint;
end;
Mas = array[1..103] of miestas;
Mas2 = array[1..103] of apskritis;
var miestai : Mas;
   	apsk : Mas2;
   	n,i,j,apssk:integer;
   	output,input:text;
procedure rikiuoti(var apsk:Mas2; sk:integer);
   	var i, j:integer;
   	kelti:apskritis;
begin
   	for i := 1 to sk do
       	for j := i to sk do
       	begin
           	if(apsk[i].maz > apsk[j].maz) then
           	begin
               	kelti := apsk[i];
               	apsk[i] := apsk[j];
               	apsk[j] := kelti;
           	end
           	else if((apsk[i].maz = apsk[j].maz) AND (apsk[i].pav > apsk[j].pav)) then
           	begin
               	kelti := apsk[i];
               	apsk[i] := apsk[j];
               	apsk[j] := kelti;
           	end;
       	end;
end;
procedure iapskritis(miest:Mas; n:integer; var aps : Mas2; var sk : integer);
   	var i, j: integer;
begin
   	sk := 1;
   	aps[1].pav := miest[1].aps;
   	aps[1].gyv := miest[1].gyv;
   	aps[1].maz := miest[1].gyv;
   	for i := 2 to n do
   	begin
       	for j := 1 to sk do
       	begin
           	if (miest[i].aps = aps[j].pav) then
           	begin
                	aps[j].pav := miest[i].aps;
                	aps[j].gyv := aps[j].gyv + miest[i].gyv;
                	if (aps[j].maz > miest[i].gyv) then
                   	aps[j].maz := miest[i].gyv;
                	miest[i].pav := '';
           	end;
       	end;
   	if (miest[i].pav <> '') then
   	begin
       	sk := sk + 1;
       	aps[sk].pav := miest[i].aps;
       	aps[sk].gyv := aps[sk].gyv + miest[i].gyv;
       	if (aps[sk].maz > miest[i].gyv) then
           	writeln(miest[i].gyv);
           	aps[sk].maz := miest[i].gyv;
       	miest[i].pav := '';
   	end;
   	end;
end;
begin
 assign(input, 'U2.txt');
 reset(input);
 readln(input, n);
 for i := 1 to n do
readln(input, miestai[i].pav, miestai[i].aps, miestai[i].gyv);
 iapskritis(miestai, n, apsk, apssk);
 rikiuoti(apsk, apssk);
 for i := 1 to apssk do
writeln(apsk[i].pav, apsk[i].maz,' ', apsk[i].gyv);
 readln;
 close(input);
end.

Nuoroda į pranešimą
Dalintis kituose puslapiuose

hmm.. Cia turbut kitaip negalima, kad abu ta pati buda naudojat, as butent sitos vietos nesuprantu:

  
               for j := 1 to sk do
               begin
               if (miest[i].aps = aps[j].pav) then
               begin
                       aps[j].pav := miest[i].aps;
                       aps[j].gyv := aps[j].gyv + miest[i].gyv;
                       if (aps[j].maz > miest[i].gyv) then
                       aps[j].maz := miest[i].gyv;
                       miest[i].pav := '';
               end;
               end;

 

kaip jus lyginat nuskaityta miesto masyvo apskriti su apskriciu masyvu apskrities pavadinimu, jei apskriciu masyvo visi elementai yra tusti ir neturi nei pavadinimo nei nieko, tik miestu masyvas yra pilnas, kadangi ji nuskaiteme. gal ne taip paaiskinau... bet aps[j].pav gi yra tuscias?

Nuoroda į pranešimą
Dalintis kituose puslapiuose

hmm.. Cia turbut kitaip negalima, kad abu ta pati buda naudojat, as butent sitos vietos nesuprantu:

  
               for j := 1 to sk do
               begin
               if (miest[i].aps = aps[j].pav) then
               begin
                       aps[j].pav := miest[i].aps;
                       aps[j].gyv := aps[j].gyv + miest[i].gyv;
                       if (aps[j].maz > miest[i].gyv) then
                       aps[j].maz := miest[i].gyv;
                       miest[i].pav := '';
               end;
               end;

 

kaip jus lyginat nuskaityta miesto masyvo apskriti su apskriciu masyvu apskrities pavadinimu, jei apskriciu masyvo visi elementai yra tusti ir neturi nei pavadinimo nei nieko, tik miestu masyvas yra pilnas, kadangi ji nuskaiteme. gal ne taip paaiskinau... bet aps[j].pav gi yra tuscias?

 

Paprastesnis budas (gal):

 

program Miestai_ir_apskritys;
type irasas = record
    miestas : string[20];
    apskritis : string[13];
    n : longint;
    end;
type Mass = array[1..100] of irasas;
var k, kiek : integer;
   pr, rz: text;
   A : Mass;
   B : Mass;

//------------------------
procedure skaityk;
var i, j, z, l : integer;
            x: boolean;
begin
 assign(pr,'U2.txt');
 reset(pr);
 readln(pr, k);
 for i:=1 to k do
   begin
     readln(pr, A[i].miestas, A[i].apskritis, A[i].n);
   end;
 B[1].apskritis:=A[1].apskritis;
   for j:=1 to k do
     begin
       x:=false;
       for l:=1 to kiek do
         begin
            if B[l].apskritis = A[j].apskritis then
                begin
                  x:=true;
                end;
         end;
           if x = false then
                begin
                     kiek:=kiek+1;
                     B[kiek].apskritis:=A[j].apskritis;
                end;
     end;

 for z:=1 to kiek do
   begin
     Writeln(B[z].apskritis);
   end;
 Writeln(kiek);
 close(pr);
end;
//------------------------
begin
kiek:=1;
skaityk;
Readln;
end.

Redagavo 1dEo
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Gal galit kas šiek tiek paaiškint kaip su ta bandomojo paskutine praktine užduotimi. Aš ten norėdamas pasižiūrėt ką ten ta funkcija "GaukSkaiciu" daro, pasirašiau išvedimo į ekraną funkcijas ir žiūriu kad ten gal 38 kartus gaunama daugmaž dvidešimt ar trisdešimt skaičių masyvų. Tai tą apvertimą reik padaryt tik paskutiniam masyvui ar kaip čia?

Aš ir nepagaunu kampo kaip ten ją užbaikti :| Lygtais su random sugeneruoja skaičių KIEKĮ kiek reikia jų apversti ir su kitu random tuos skaičius išrenka :D Tikiuosi neduos uždavinių su apvertimais :|

 

Skaičiaus apvertimo procedūra.

Procedure SkaiciusPerrasytasAtvirksciai;
 var Pap,atvirkscias, sk:integer;
Begin
Atvirkscias:=0;
readln(sk);
While sk<>0 do
 Begin
   if sk<10 then
   Begin
     Atvirkscias:=Atvirkscias*10+sk;
     Sk:=0;
   end else
   Begin
     Pap:=sk mod 10;
     Atvirkscias:=Atvirkscias*10+pap;
     sk:=sk div 10;
   end;
 end;
 writeln('Skaicius perrasytas atvirksciai : ',atvirkscias);
end;

Su zodziais per length reikia eiti :)

Redagavo -LeXas-
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Na kaip jums IT VBE šiemet ? Man asmeniškai visai lengvas buvo, tik keletą pastabų pamačiau:

 

1. I programavimo užduoties nurodimai labai keisti duoti: (parašykite taškų apskaičiavimo viename skyriuje procedūrą) parašiau ta funkcija (C++) ir supratau, kad nesąmonių prašo juk tam, kad palyginti reikia pažiūrėti į visiems logotipams skirtus taškus ir būtu galima iškarto visiem išskirstyti taškus, bet gražinti turi tik 1 iš logotipų. (gaunasi taip, kad funkcija reikia kviesti 3x daugiau kartu nei iš tikrųjų jos reikia).

 

2. II programavimo užduoties pavyzdiniai atsakimai (paskutinė eilute) pakeista į kita nei pavyzdinių duomenų :D čia gal ir specialiai padaryta, bet vistiek mane asmeniškai sumėtė ir pradėjau savo sprendimu abejot kol pavyzdžio neperžiūrėjau :D

 

o kaip Jums šis egzaminas ?

Redagavo VytautasB
Nuoroda į pranešimą
Dalintis kituose puslapiuose

Na kaip jums IT VBE šiemet ? Man asmeniškai visai lengvas buvo, tik keletą pastabų pamačiau:

 

1. I programavimo užduoties nurodimai labai keisti duoti: (parašykite taškų apskaičiavimo viename skyriuje procedūrą) parašiau ta funkcija (C++) ir supratau, kad nesąmonių prašo juk tam, kad palyginti reikia pažiūrėti į visiems logotipams skirtus taškus ir būtu galima iškarto visiem išskirstyti taškus, bet gražinti turi tik 1 iš logotipų. (gaunasi taip, kad funkcija reikia kviesti 3x daugiau kartu nei iš tikrųjų jos reikia).

 

2. II programavimo užduoties pavyzdiniai atsakimai (paskutinė eilute) pakeista į kita nei pavyzdinių duomenų :D čia gal ir specialiai padaryta, bet vistiek mane asmeniškai sumėtė ir pradėjau savo sprendimu abejot kol pavyzdžio neperžiūrėjau :D

 

o kaip Jums šis egzaminas ?

2 niekas ten nepakeista, tiesiog reikia spausdinti skaičius iki kol pasiekia tikslą, be to pirma rašomi skaičiai tik tada kiek išviso jų buvo. Na bet aš irgi ne taip padariau :)

Nuoroda į pranešimą
Dalintis kituose puslapiuose
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ą...