Programavimo pamokėlės

pamokelesm

Mokymų ciklas „Programavimo pamokėlės" skirtos visiems, kurie nori išmokti programuoti.

IT galvosūkiai

itgalvosukiai

Konkurso tikslas – skatinti moksleivius domėtis IT sprendžiant įvairiausius galvosūkius.

Informikas

informikasm

Konkurso tikslas – supažindinti moksleivius su menu informacinėse technologijose ir mūsų talismanu.

Dr. J. P. Kazicko konkursai

kkonkursai

Žemaitijos, Aukštaitijos, Suvalkijos ir Dzūkijos regionuose vykdomas IT konkursas.

       

Užduotis

Petriukas pastebėjo, kad kai kurie jo klasės draugai nesugeba suformatuoti savo kodo informatikos pamokoje, todėl jis nusprendė padėti jiems sukurdamas programą, kuri padėtų jiems programuoti tvarkingai.

Pradiniai duomenys:

  •  Duom.txt – neformatuotas kodas

Rekomenduotina naudoti šiuos std::string metodus:

 Reikalavimai:

  • Nuskaityti ir suformatuoti kodą pagal reikalavimus:
  • Prieš kiekvieną kodo eilutę turi būti palikta x*4 tarpų (x – priklauso nuo ‚{‚ ir ‚}‘ skliaustelių kiekio kode)
  • Suformatuotą kodą išspausdinti rezultatų faile.
  • Simboliai ‚{‚ ir ‚}‘ turi būti atskirose eilutėse, pvz:
for(...){
    ...  }
Arba for(...){ ... }
Pakeisti į:
for(...)
{
    ...
}

(į ciklus ir if‘us be skliaustelių neatsižvelgti)

Pradiniai duomenys

//----------------------------------------------------------------------------
/* Nuskaito duomenis iš duomenų failo @CDuom*/
void SkaitytiDuomenis(){
ifstream fi(CDuom);
if (!fi.is_open()) { return; }
  int nA;
 fi >> nA;
N.detiAukstus(nA);
int nr, pl, sk, telnr;
   float kaina;
  for (int i = 0; i < nA; i++){
  Aukstas aTemp;
  for (int j = 0; j < 3; j++)
   {fi >> nr >> pl >> sk >> kaina >> telnr;
  Butas temp = Butas(nr, pl, sk, telnr, kaina);
aTemp.detiButa(temp, j);}
 N.detiAuksta(aTemp, i);
 }
  fi.close();
}

Rezultatai

//----------------------------------------------------------------------------
/* Nuskaito duomenis iš duomenų failo @CDuom*/
void SkaitytiDuomenis()
{
    ifstream fi(CDuom);
    if (!fi.is_open())
    {
         return;
    }
    int nA;
    fi >> nA;
    N.detiAukstus(nA);
    int nr, pl, sk, telnr;
    float kaina;
    for (int i = 0; i < nA; i++)
    {
        Aukstas aTemp;
        for (int j = 0; j < 3; j++)
        {
            fi >> nr >> pl >> sk >> kaina >> telnr;
            Butas temp = Butas(nr, pl, sk, telnr, kaina);
            aTemp.detiButa(temp, j);
        }
        N.detiAuksta(aTemp, i);
    }
    fi.close();
}

Reikalavimai

  • Prieš kiekvieną kodo eilutę turi būti palikta x*4 tarpų (x – priklauso nuo ‚{‚ ir ‚}‘ skliaustelių kiekio kode)
  • Simboliai ‚{‚ ir ‚}‘ turi būti atskirose eilutėse
  • Suformatuotą kodą išspausdinti rezultatų faile.

Interaktyvus sprendimas

cpp/2015/3/formatavimas

Papildoma informacija

  • Lygis: 3
  • Taškai: 100
Į viršų