Pereiti prie turinio

vytkiuxz

Nariai
  • Pranešimai

    17
  • Užsiregistravo

  • Lankėsi

  • Atsiliepimai

    0%

vytkiuxz Pranešimai

  1. KNYGOS ISDALINTOS

     

     

    Sveiki. Turiu pora nereikalingu knygu.

     

    1. PHP 5 Vaizdžiai

    http://www.smaltija.lt/_images/9955-707-11-9.png

     

    2. Programavimo klaba C++

    http://www.slknygos.lt/out/pictures/1/978-9955-707-55-4_p1.jpg

     

    I pm rasot: Varde Pavarde Adresa Amziu, kurios knygos norit. Pirmadieniu issiusiu pastu. Jei bus daugiau nei po 1 norinti i pagalba pasitelksiu random.org

  2. Tai kam rūpintis dėl kelių kilobaitų egzaimino metu?

     

    Pripažinkim – programavimo mokymas mokyklose yra nesąmonė, beveik neturinti nieko bendro su programavimu realiame pasaulyje. Mokykliniame kurse, kiek pamenu, niekur nemokama dinaminio atminties tvarkymo. Tuo labiau koks nors ne pats protingiausias vertintojas nesupras ką parašei ir gausi minus taškų... :)

     

    Žinoma, kad tikroje programoje reiktų naudoti atmintį efektyviai.

     

    Visiskai sutinku su tuo ka pasakei. Bet zmogus klause ka galima padaryt geriau. Tai ir pasakiau kaip geriau ir argumentavau kodel geriau. Beto programuot mokomasi ne tam kad islaikyt egzamina o tam kad but programuotoju. O tam tikrai pravers dinaminiai elementai.

  3. Matyt pamiršai, kad čia kalba eina apie mokyklą, o ne apie universitetą. Niekas per egzaminus neprogramuoja taip (nežaidžia su dinamine atmintimi), o jei taip ir daro, tai tik švaisto laiką. Ir iš vis, mokykloje to nemoko. O ir ne sovietmetis dabar, nėra ta atmintis toks svarbus resursas, kad reikėtų skaičiuoti kiekvieną baitą. Ir darant kažką "realaus" ne visada protinga naudoti dinaminę atmintį, jei žinoma, kad nebus saugomas labai didelis duomenų kiekis. Mano nuomonė, geriau yra "pašvaistyti" truputį atminties, jei dėl to programa veiks greičiau (atminties priskyrimas užima laiko, o jei tai daroma dažnai... Ir programuot šiek tiek mažiau reikia).

    Tai kam dabar dirbti su statine jei vistiek veliau reikes pereit prie dinaminiu. Koks cia laiko svaistymas jei papildomai parasai 1 eilute. Beto jei taip sneki apie atminties valdyma tai tu nedirbi su rimtomis taikomosiomis programomis.

    O kuo anksciau suprasi kad atminti valdyt reikia, nuo to tik geriau. Jei pats esi protingas tai ir naudoti dinamine atminti visada protinga. O beje jei siuo atveju tas pasvaistymas naudos neduoda.

  4. Pagal uzduoti tai kaip ir viska ispildei tai butu max, egzamino vertinimo kriterijai tikrai nera tie i kuriuos turi orientuotis. Ten neatsizvelgiama i pacius svarbiausiu procesus programuojant, t.y. nepalikt uztersto ramo, kad neliktu memory leaku, neperkraut bereikalingais darbais.

    Kaip vienas destytojas univere visad sakydavo - "kad veikia tai nereiskia kad uzduotis atlikta gerai.".

     

     

    Salygoje:

    1. pirmoje eilutėje yra du sveikieji skaičiai: dievųskaičius n (2 ≤n ≤50)ir kauliukųskaičius k (1 ≤k ≤10);

     

    Taip maciau kad tai yra. Bet kada tu parasai toki sakini

    int a[50];

    tau rame iskart yra isskiriama vietos 50 tavo sukurtos strukturos elementu. Tavo struktura buvo sudaryta is stringo ir 14 integeriu. Neskaiciuojant stringu (ju dydis nustatomas kintantis pagal ilgi) vien is integeriu gaunasi

    4 byte * 14 lauku * 50 eiluciu = 2800 baitu = 1.7 kilobaito.

    Tu visad tiek isskiri vietos nors jei ir naudoji tik 3 ar 5 irasus.

    Labai neefektyvu.

     

    va cia ir pasitarnauja new. New sukuria masyva ar klase dinamiskai. As aspirasau rodykle i struktura

    Dievai *A;

    tada vykdydamas koda, nuskaites pirma failo eilute, zinau kiek bus dievu tai galima ir sukurti masyva. New iskviecia masyvo konstruktoriu, kitaip sakant sukuria pati masyva. Ir taip sukuriama ne butinai 50 elementu, bet tiek kiek tau reikia. Privalumai tokie kad neisnaudoji daugiau vietos negu reikia ir tavo elementu kiekis lieka neribojamas. Gali buti ne 50 o nors ir 500.

     

     

    2. Taskai naudojami rikiuojant bet paskui nenaudojami

    Atlikineti rikiavima yra neefektyvu ir netikslinga situo atveju. Kai eini i maxima nusipirkti alaus taigi neissidelioji viso alaus is eiles pagal tai kaip jie tau patinka ir tad pasiimi pirma, tiesiog nueini prie to alaus kurio nori ir pasiimi. Dar patikrini ar kokiam kitam kuri megsti nera akciju. Cia analogiska. Tiesiog begi per masyva ir tikrini kuris laimetojas. Gali saugot laimetojo duomenis atskirame kintamajame, gali saugoti jo indeksa kaip kad mano kode padaryta. Bet rusiuot kad galetum paiimti pirmaji tikrai neefektyvu.

     

     

    Del masyvo nunulinimo:

    Kai tu viska deklaruoji statiskai tai visu elementu sunaikinimu rupinasi pati programa. Kitaip sakant tu uzdarai prograama ir ji sunaikina visus elementus. Bet kai sukuri kazka dinamiskai panaudodamas new, tai ta pats ir turi sunaikinti. Kitaip tie duomenis liks rame iki kol perkrausi kompa.

    Masyvui sunaikinti panaudok

    delete[] A;

     

    Ir cia mano pavizdy kur pateikiau yra klaida su situo:

    Eilute

    dievai = NULL;

    reikia pakeisti i

    delete[] dievai;

  5. Svarbu ne tik univeras bet ir studiju kryptis. Va pvz VU dabar siulo Informacinės technologijos, Informatika specialybes.

    Tai va buves klasiokas baige ten Informacines technologijas ir man keista kaip studijaves VU tiek mazai galejo ismokt. Mokyklos laikais jis daug geriau vare uz mane ir informatika ir matematika.

    As baigiau Siaulu universitete Informatika, tai mano pasiruosimo lygis zymiai didesnis. Su juo teko kalbet tai supratau kad su jokiom technologijos nesupazino, tipo sake dave pakrapstyt Assembleri ir PHP.

     

    Tuo tarpu mes mokemes apsoliuciai viska: nuo pc sandaros, programavimo assembleriu iki SOAP, Corba, WebService, Android iOS programavima.

     

     

    Taigi geriau paziurek kokios yra specializacijos, ir kokius dalykus destys.

  6. Rezultata gaunu:

     

    Perziurejau koda. Viska darai negerai. Neefektyviai naudoji kompo resursus. Apkrauni programa nereikalingais darbais.

    Imetu savo perdaryta koda. Pasianalizuok.

     

    Pagrindines problemos:

    Kam kas kart rikiuoji sarasa? Saraso rykiavimas ypac tavo metodais uzima daug laiko ir yra labai neefektyvus.

    Tarkim sarase yra pateikti 5 dievai, taciau tu vistiek sukuri masyva su 50 eiluciu. Kur cia logika?

     

    Struktura:

    struct Dievai {
       string vardas;
       int kauliukai[10],kauliuku,taskai,lyginiai,eile;

     

    Pirmiausia tai turetu vadintis dievas nes apraso tik viena dieva.

    Kodel masyvas kauliukai yra 10 elementu ilgio, jeigu ju gali buti 3.

    Kodel isvis laikai visus taskus strukturoj, jie po tasku suskaiciavimo nenaudojami.

    Kauliuku kiekis visoms eilutems vienodas, tai kodel tu saugai kiekvienam irasui atskirame lauke. 1 int laukas uzima 4 baitus taigi jeigu tu turesi 50 irasu tu prarandi 200 baitu ramo vietos visiskai bereikalingai.

     

    Ir iki visiskos tobulybes masyva reiketu nunulint kai darbas baigtas.

     

    Tikiuos ne per daug kritikos. :)

     

     

     

    #include <iostream>
    #include <fstream>
    #include <string>
    
    using namespace std;
    
    
    struct Dievas {
    string vardas;
    int taskai;
    int lyginiai;
    };
    
    Dievas *dievai;
    int kaul_sk, diev_sk;
    
    bool isEven(int number) {
    if ( number % 2 == 0)
    	return true;
    else return false;
    }
    
    int rastiLaimetoja() {
    int win_points = dievai[0].taskai, win_even = dievai[0].lyginiai, win_id = 0;
    for (int i = 1; i < diev_sk; i++)
    {
    	if (win_points < dievai[i].taskai)
    	{
    		win_id = i;
    		win_points = dievai[i].taskai;
    		win_even = dievai[i].lyginiai;
    	}
    	else if (win_points == dievai[i].taskai && win_even < dievai[i].lyginiai)
    	{
    		win_id = i;
    		win_points = dievai[i].taskai;
    		win_even = dievai[i].lyginiai;
    	}
    }
    return win_id;
    }
    
    void readData() {
    ifstream Duomenys("U1.txt");
    Duomenys >> diev_sk >> kaul_sk;
    int points;
    dievai = new Dievas[diev_sk];
    for (int i = 0; i < diev_sk; i++)
    {
    	Duomenys >> dievai[i].vardas;
    	dievai[i].lyginiai = 0;
    	dievai[i].taskai = 0;
    	for (int j = 0; j < kaul_sk; j++)
    	{
    		Duomenys >> points;
    		if (isEven(points))
    		{
    			dievai[i].taskai += points;
    			dievai[i].lyginiai++;
    		}
    		else dievai[i].taskai -= points;
    	}
    }
    Duomenys.close();
    }
    
    void Irasyti(int win) {
       ofstream rez("rez.txt");
    rez << dievai[win].vardas << " " << dievai[win].taskai;
       rez.close();
    }
    
    void main() {
    readData();
    for (int i = 0; i < diev_sk; i++)
    	cout <<dievai[i].vardas <<" "<<dievai[i].taskai<<" "<<dievai[i].lyginiai<<"\n";
    int win = rastiLaimetoja();
    cout<<"\nLaimejo:\n";
    cout <<dievai[win].vardas <<" "<<dievai[win].taskai<<" "<<dievai[win].lyginiai<<"\n";
    Irasyti(win);
           dievai = NULL;
    int a;
    cin>>a;
    }
    

  7. Sveiki. Parduodu ipodą 2g. Viskas veikia puikiai, yra dar pusės metų garantija. Jailbreaked.

    Komplekte usb kabelis, ausinės ir dėžutė.

    Miestai: Tauragė, Šilalė.

    Siunčiu paštu.

     

    Kaina: 360lt.

     

    http://www.nusirasau.lt/img/ipod1.JPG

    http://www.nusirasau.lt/img/ipod2.JPG

    http://www.nusirasau.lt/img/ipod3.JPG

    http://www.nusirasau.lt/img/ipod4.JPG

    http://www.nusirasau.lt/img/ipod5.JPG

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