Pagini recente » Cod sursa (job #3138828) | Borderou de evaluare (job #2586691) | Rezultatele filtrării | Rezultatele filtrării | Diferente pentru parsarea-numerelor intre reviziile 2 si 7
Nu exista diferente intre titluri.
Diferente intre continut:
h1. Parsarea Numerelor
Sunt probleme care au datele de intrare mari (ex. 1 milion de numere), solutia e simpla se poate parsa citirea
Sunt probleme care au datele de intrare mari (ex. 1 milion de numere), la care citirea simpla nu intra in timp, sau pur si simplu ne ia prea mult din timpul de rezolvare efectiva a problemei. Solutia e simpla: se poate parsa citirea, adica se citeste cate un bloc de caractere si apoi se parcurge caracter cu caracter.
h2. Numere naturale
void citeste(int &numar)
{
numar = 0;
numar = 0;
//cat timp caracterul din buffer nu e cifra ignor
while (buff[poz] < '0' || buff[poz] > '9')
//daca am "golit" bufferul atunci il umplu
if (++poz == DIM)
fread(buff,1,DIM,stdin),poz=0;
//cat timp dau de o cifra recalculez numarul
while ('0'<=buff[poz] && buff[poz]<='9')
{
numar = numar*10 + buff[poz] - '0';
}
==
acest cod functioneaza cand numerele apr pe randuri diferite
acest cod functioneaza cand numerele apar pe randuri diferite
h2. Numere reale
Nu exista diferente intre securitate.
Topicul de forum nu a fost schimbat.