Risipa de key_press | Programare

Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Risipa de key_press | Programare - Programare .Net | Tehnici de programare | Tutoriale | Lectii si exemple

Viata intre online si offline

De foarte multe ori am citit prin diverse locuri de pe Internet, in bloguri, stiri, siteuri de securitate, diverse sfaturi legate de combinarea vietii online cu cea offline si publicarea detaliilor vietii offline – sau real life, cum o numesc unii – in online. De cate ori am citit sfaturi de genul: nu scrie pe blog ca pleci de acasa 2 saptamani, nu pune poze jenante, nu iti publica numarul de telefon/adresa/contul/etc, ai grija ce scrii in profilul tau, nu pune filmul in care stateai pe “tron” pe youtube etc m-am amuzat si nu am dat prea mare atentie sfaturilor respective, tratandu-le mai mult ca literatura de birou – ceea ce citim cand ne plictisim la birou. Am inceput sa ma gandesc la tot ceea ce am citit legat de asta acum, cand am patit-o, oarecum, prin publicarea anumitor detalii despre viata mea privata.
Dar despre ce e vorba:
Continue reading

Cu ce ma mai ocup…

In ultima perioada am cam neglijat acest blog si nu imi prea convine asta. Incet, incet o sa incerc sa recuperez! Am avut, oarecum, si un motiv pentru asta: in ultima perioada am inceput sa ma joc putin de-a MAC OS si de-a platformele mobile, asa ca asta mi a ocupat cam tot timpul.
Vreau sa imi dau cu parerea, dupa aproximativ o luna de utilizare, despre MAC OS snow leopard 10 (parca), parere din puctul de vedere al unui om obisnuit, as putea spune de o viata, cu OS-uri Microsoft.
Ce imi place la MAC: hardware cu un design fain, simplu, de dimensiuni mici. Eu am un MAC mini care arata asa:
Continue reading

O surpriza placuta de la IE9

Am instalat astazi IE9. Trebuie sa recunosc, dupa experienta IE8, ca nu prea imi venea sa apas pe butonul de Update atunci cand windowsul meu m-a intrebat daca vreau sa imi upgradez IE-ul la versiunea 9. Cand vine vorba de navigare pe internet eu prefer FF (sau, mai rar, chrome). Si asta din cauza diverselor probleme pe care IE le-a avut de-a lungul timpului. Pe scurt, din puctul meu de vedere IE, pana la versiunea 8, inclusiv, nu prea era demn de titlul de “browser”, si, cred, toata lumea a simtit ca sunt niste probleme cu el.

Insa… astazi am avut o surpriza. Am instalat IE9 si am observat ca ceva s-a schimbat. Am simtit ca browserul incarca mai usor paginile, ca totul se misca altfel, ca nu existau scurte momente de asteptare in modul de functionare al IE-ului in momentul in care pagina era incarcata, randarea s-a facut parca mai rapid, paginile aratau mai bine – am eu cateva siteuri pe care le folosesc si care aratau groaznic in IE8. Trecerea intre taburi mi s-a parut imbunatatita, fiecare tab, in windows 7, apare in taskbar ca aplicatie distincta, astfel navigarea intre taburi se poate face foarte usor.

Continue reading

Tratarea exceptiilor in C#

Atunci cand programam este aproape imposibil sa nu primim erori: de sintaxa (abatere de la sintaxa limbajului de programare), de logica (greseli in logica programului) sau erori la executie (exceptii).

O exceptie reprezinta o eroare care intervine la runtime, la momentul executiei. In C#, exceptiile se pot trata intr-o maniera structurata si controlata, acest lucru insemanand faptul ca programatorul nu trebuie sa mai verifice manual daca o operatie se executa sau nu cu succes.

C# defineste exceptii standard pentru tipurile de erori obisnuite dintr-un program. De exemplu: impartire la zero, depasirea capacitatii unui vector, memorie insuficienta, etc.

Continue reading

c.m.m.d.c.

Sa se determine c.m.m.d.c. a doua numere naturale

Varianta 1:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _12 // Sa se determine c.m.m.d.c. a doua numere naturale. (varianta 1)
{
    class Program
    {
            static void Main()
        {
            int nr1, nr2, n, m;
            Console.Write("Introduceti primul numar: ");
            nr1 = int.Parse(Console.ReadLine());
            Console.Write("Introduceti al doilea numar: ");
            nr2 = int.Parse(Console.ReadLine());
            n = nr1; m = nr2;
            while (nr1 != nr2)
              if (nr1 > nr2) 
                  nr1 -=nr2;
              else 
                  nr2 -= nr1;
              Console.WriteLine("c.m.m.d.c. ({0},{1}) = {2}", n,m,nr1);
              Console.ReadLine();
        }
    }
}

Continue reading

Suma cifre

Calculati suma cifrelor unui numar natural dot cu maximum 9 cifre.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace _10 
{
    class Program
    {
        static void Main(string[] args)
        {
            int n, m, suma = 0;
            Console.Write("Dati un numar de maxim 9 cifre : ");
            n = int.Parse(Console.ReadLine());
            m = n;
            while (m != 0)
            {
                suma += m % 10;
                m /= 10; // m = m / 10;
            }
            Console.WriteLine("Suma cifrelor lui {0} este {1}", n, suma);
            Console.ReadLine();
        }
    }
}

Analiza Programului
– Pe prima linie sunt declarate variabilele m si n de tip intreg si variabila s, in care vom calcula suma cifrelor lui n (observam initializarea acesteia de la declarare cu 0, deoarece insumarea cifrelor se va face pornind de la 0);
– Citirea de la tastatura numarului n;
– Lui m i se atribuie variabila n, pentru a nu pierde valoarea n; aceasta este o tehnica utilizata intotdeauna cand avem de modificat valoarea retinuta de o variabila, insa nu dorim sa pierdem valoarea initiala. Daca nu am folosi atribuirea m=n, am impartit variabila n la 10 pana cand valoarea acesteia ar deveni 0 si evident nu am mai sti care a fost valoarea initiala. Utilizand insa atribuirea m=n, valoarea lui n ramane nealterata.
– Urmeaza o instructiune while care contine doua instructiuni de atribuire compusa (in prima se adauga la s ultima cifra a lui m, iar in a doua se trunchiaza m de ultima cifra); aceste instructiuni se repeta pana cand m va avea valoarea 0 ;
– Se afiseaza rezultatul folosind o functie Console.WriteLine(); se vor afisa valorile retinute de variabilele n si s.